如何由用户从随机数中添加?

时间:2013-11-16 21:10:23

标签: java arrays

我是Java新手,我想要一些帮助。我必须解决这个问题,我已经解决了几乎90%的问题:

  1. 提示用户输入学生人数。它必须是一个可被10完全整除的数字,即(数字%10)= 0
  2. 检查用户输入。如果用户输入不能被10整除,请继续询问用户输入,直到他输入正确的数字。
  3. 接受用户输入并生成0到100范围内的许多随机数。
  4. 打印随机数矩阵并计算所有这些随机数的总和和平均值,并将其打印给用户。
  5. 格式和,平均为三个小数点。
  6. 到目前为止,这是我的代码:

    import java.text.DecimalFormat;
    import java.util.Scanner;
    
    public class Calculator10 {
    
        public static void main(String[] args) {
    
            Scanner user_input = new Scanner(System.in);
    
            int num;
    
            do {
                System.out.print("Enter a number: ");
                num = user_input.nextInt();
            } while(num % 10 != 0);
    
            double numb;
            DecimalFormat dec = new DecimalFormat("0.00");
            for (int i=0; i<num; i++){
                numb = Math.abs(Math.random() * ( 0 - 100 ));
                System.out.print(" " +dec.format(numb) + " ");
            }
        }
    }
    

    正如你所看到的,我已经解决了#4的第一部分。我不确定如何在用户输入后将屏幕上显示的所有随机数加起来。当然,我们必须将它们存储在一个数组中,但我试图这样做但不能。那么,我怎么能完成第4步和第5步呢?我将不胜感激任何帮助。非常感谢你们。

2 个答案:

答案 0 :(得分:2)

您应该如何做到这一点:

import java.text.DecimalFormat;
import java.util.Scanner;

public class Calculator10 {

    public static void main(String[] args) {

        Scanner user_input = new Scanner(System.in);

        int num;

        do {
            System.out.print("Enter a number: ");
            num = user_input.nextInt();
        } while(num % 10 != 0);

        double numb;
        double sum=0;
        DecimalFormat dec = new DecimalFormat("0.00");
        for (int i=0; i<num; i++){
            numb = Math.random() * ( 100 - 0));
            System.out.print(" " + dec.format(numb) + " ");
            sum += numb;
        }

        System.out.println("The sum is: " + dec.format(sum));
        System.out.println("The average is:" + dec.format(sum/num));
    }
}

请注意,我稍微改变了生成随机数的方式,无需使用Math.abs()。另请参阅以下答案,了解如何在两个不同的值之间生成随机数:

答案 1 :(得分:0)

您无需将它们存储在数组中。只需在开始时声明int sum = 0,并在每次生成随机数时执行sum += numb。此外,您以奇怪的方式生成随机数。看看java.util.Random class