我只是遇到了一个问题,我的程序只返回10的倍数和用户输入的数字。我已经编写了大部分代码,但它可能是我的if语句,我遇到问题(if(i%10 == 0))。
import java.util.Scanner;
public class Question2 {
public static void main(String[]args)
{
Scanner input= new Scanner(System.in);
int [] value;
int x;
int sum=0;
System.out.print("How many numbers would you like to store?");
x= input.nextInt();
value= new int [x];
while(x<=0)
{
System.out.print("Error please enter a value greater than 0");
x= input.nextInt();
}
for(int i=0; i<x; i++)
{
System.out.print("Input number");
value[i]= input.nextInt();
}
for (int i=0; i<x; i++)
{
if(i%10==0)
{
sum=sum+value[i];
}
}
System.out.println("The sum of multiples of 10 is:" + sum);
}
}
答案 0 :(得分:0)
如果您想检查该值是10的倍数,您可以value[i]%10 == 0
代替i%10 == 0
。
答案 1 :(得分:0)
代码的最终for循环不是正确使用变量'i'。您对'i'的值不感兴趣,您对用户输入的第i个数字感兴趣,存储在'value'数组中。因此,您应该使用'i'作为数组的索引。
for(int i = 0; i < x; i++){
if(value[i] % 10 == 0){
sum += value[i];
}
}