gpt4 book ai didi

java - Java中的多个用户输入错误消息(while循环)

转载 作者:行者123 更新时间:2023-12-03 08:53:17 25 4
gpt4 key购买 nike

我试图让机器在输入不正确的数据时打印一条错误消息。当用户提供以下信息时,将显示两种类型的错误消息

  • 非数值或
  • 负值。

  • 如果用户输入非数字值,但不能输入负值,则只能打印错误消息。如果用户输入了错误的成绩,我想编写要打印的错误消息的代码,但是我仍然停留在步骤1。应该在下面的程序中将其放置在哪里?
    import java.util.Scanner;

    public class lab7errortesting {

    public static void main(String args[]){

    Scanner input = new Scanner(System.in);

    System.out.println("Enter the number of grades: ");
    if (!input.hasNextDouble()) {

    System.out.println("***Error: Entered a non-numeric data. Please enter numeric data.");
    input.next();

    } else {

    double random = input.nextDouble();

    double min = Integer.MIN_VALUE;
    double max = Integer.MAX_VALUE;

    double total=0;
    int count = 1;
    while (count < random+1) {


    System.out.println("Enter grade " + count + ":");

    double grade = input.nextDouble();
    total+=grade;

    count++;

    if (max > grade){

    max = grade;

    }
    if (min < grade){
    min = grade;
    }

    }
    System.out.println("Total is " + total);
    System.out.println("Average is " + (total/random));
    System.out.println("Smallest number is " + max);
    System.out.println("Largest number is " + min);

    }
    }
    }

    最佳答案

    我不确定这是否是您要尝试的方法,但是如果您只想滤除所有负面成绩,则可以尝试以下方法:

    //...
    double grade = input.nextDouble();
    if (grade < 0){
    System.err.println("Not a valid grade");
    continue;
    }
    total += grade;
    count++;
    //..

    这将打印出错误消息,并提示用户输入新的数字(如果为负数)。因此,您只需检查输入的数字是否为负数,如果是这种情况,它将使用 continue返回循环的开头,而无需更改 total或增加 count

    关于java - Java中的多个用户输入错误消息(while循环),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35713670/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com