说明
我在 12 年级的计算机科学课上布置了一项任务,但完全让我难住了。到目前为止,我已经尝试使用一堆 if 语句(虽然我知道这不是最好的方法,但我确信它会起作用)但是没有用。然后,我尝试使用嵌套循环,但这也不起作用,这是我目前为该方法创建的代码。
代码(注:Max=1000)
private static void totals2 (Scanner user_input,int max){
int[] num = new int[max];
int[] total=new int[10];
System.out.println("Welcome to totals\nThis method gathers input and displays the sum depending on which category they fall in");
System.out.println("Enter numbers from 0-99 only (Up to 1000 inputs)\nEnter any number outside of 0-99 to stop collecting\n");
for (int i = 0; i < num.length; i++) {
System.out.println("Please enter a number to be stored in index: " + i);
num[i] = user_input.nextInt();
if (num[i] < 0 || num[i] > 99) {
break;
}
}
for(int i = 0; i < 100; i +=10){
int j;
int k=(i/10)-1;
for(j=0 ;j<1000;j++){
if (num[j] <= i){
total[k]+= num[j];
}
}
System.out.println(total[k]);
}
}
问题
创建一个程序,输出所有输入小于 10 的数字的总和,所有输入小于 20 的数字的总和,所有输入小于 30 的数字的总和,...在输入的所有数字中,小于 100 的数字(因此,对于小于 90 和小于 100 的数字,88 将包括在总数中)。
最佳答案
因为这是你的作业,我不会在这里发布任何代码。只是一些想法。
您需要保存 0 到 99 之间的数字吗?如果没有,请检查您的第一个循环。
对于第二个 for 循环,如果 i=0,k 的值是多少?如果 i=10,k 的值是多少?
我没有运行你的算法,这是我在阅读它时发现的所有问题。了解如何使用调试工具将有助于您的进一步学习。 (Java开发推荐Intellj)
关于java - 获取增量为10的数组的总和JAVA,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46333399/