我是Java新手,我想要一些帮助。我必须解决这个问题,我已经解决了几乎90%的问题:
到目前为止,这是我的代码:
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步呢?我将不胜感激任何帮助。非常感谢你们。
答案 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。