我正在进行模拟测试,我正在努力创建一个循环,将输入循环12次,同时将每个输入添加到总和中。
- 确定某个人在特定年份的平均体重。
- 对于每个月,您的算法应输入该月的人物权重(正实数)。你的算法应循环, 重复输入,直到输入为正。
- 最后,您的算法输出平均重量。
在查看迭代控制结构的讲义后,我想出了这个:
public static void main (String [] args)
{
double month, sum;
sum = 0;
for (month = 1; month <= 12; month++)
{
month = ConsoleInput.readDouble("Enter weight for each month");
sum += month;
}
System.out.println("Sum total is: " +sum);
}
不幸的是,这一切对我来说是重复输入无限次,直到我输入一个大于12的数字。
我只想让ConsoleInput循环12次。有没有人知道使用while,do-while和for循环的最佳方法?我不允许在课程中使用数组,对象等。
欢迎任何建议。
答案 0 :(得分:0)
你在两种方式中使用month
,都计入12并接收人的体重。我想如果你将ConsoleInput.readDouble(..)
分配给另一个变量,并将其添加到{ {1}},您的计划会更好。
答案 1 :(得分:0)
您可以执行以下操作以使您的程序正常工作。只需添加一个可变月份量并分配用户输入
public static void main (String [] args)
{
double month, sum,monthweight;
sum = 0;
for (month = 1; month <= 12; month++)
{
monthweight = ConsoleInput.readDouble("Enter weight for each month");
if(monthweight > 0.0M)
{
sum += monthweight;
}
else
{
break;
}
}
System.out.println("Sum total is: " +sum);
}