要求用户输入数字,获得最小/最大/平均值

时间:2013-09-24 05:37:32

标签: input sum max min

大家好我因为某种原因试图让这段代码得以解决,真的很难过。我的指导方针是:

  • 创建一个新的Scanner对象并将其保存为您选择的变量名称
  • 为当前用户的输入声明一个整数变量,并将其初始化为非0(我们将在这些指令中将其称为intInput - 但名称是任意的)
  • 创建一个while循环,条件是intInput不等于0
  • 在此循环内部,调用Scanner对象的nextInt()方法并将值存储到intInput

我没有得到任何错误,但它没有像我想象的那样工作。

这是我的代码:

 import java.util.Scanner;

// class name matches the file name
     public class Lab5
     {
  // we must have a main method to run the program
  `enter code here`public static void main(String[] args)
  {
      Scanner scan= new Scanner(System.in);

      int userInput = 1;
      int minVal = Integer.MIN_VALUE;
      int maxVal = Integer.MAX_VALUE;
      double average = 0;
      int holdNum = 0;
      double numSum = 0;

      System.out.print ("Please enter numbers and to finish the program your last number should be 0: ");
      numSum += userInput;
      holdNum++;

      while (userInput != 0)
      {
          userInput = scan.nextInt();
      }

      if (maxVal > Integer.MAX_VALUE)
      {
          maxVal = userInput;
      }
      if (minVal < Integer.MIN_VALUE)
      {
          minVal = userInput;
      }
       average = ( numSum ) / ( holdNum );

       System.out.println( "Average = " + average );
       System.out.println( "Max = " + maxVal );
       System.out.println( "Minimum = " + minVal );
  }
}

1 个答案:

答案 0 :(得分:0)

您将在总和中添加用户输入,并仅在输入小于最小值时增加用户输入的数量。我想你会想要为所有输入做这件事。