我正在尝试创建一个包含以下说明的循环。一个计算行进距离的循环一次输出结果一行 i。必须声明并初始化适当的变量。速度变量应初始化为75。距离变量应初始化为零。 ii。循环控制变量应称为天。 day变量从1开始,一直到20。 这是循环体:
1.day必须转换为小时并存储在变量中。
2。必须计算出行进的距离。您可以使用以下公式:距离=时间*速度。
3。距离必须增加1
4。速度必须增加1
5。必须为循环的每次迭代打印日期,小时,速度和距离。
我尝试了几种方法,但无法获得与图片相同的结果。 https://i.stack.imgur.com/m1eqV.png
这是我目前的代码
public static void calc(){
System.out.println("Day \tHours \tSpeed \t Miles");
for (int i = 1; i <= 20; i++){
System.out.println(i);
}
for (int t = 24; t <= 480; t++){
System.out.println("\t\t"+ t);
}
}
结果是:
Day Hours Speed Miles
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
答案 0 :(得分:1)
在您的图片中,输出打印为每行有多个数字。但是,在您的代码中,第二个循环在第一个循环之后运行 ,因此所有输出将在第一个循环的下面打印。您需要在同一循环中打印所有输出,如下所示。我只向您展示了如何进行白天和黑夜,剩下的事情我会留给您找出,这应该是微不足道的:
for (int i = 1; i <= 20; i++) { // day
System.out.print(i + "\t");
System.out.print(i * 24 + "\t"); // hours
// etc.
System.out.println(); // newline
}
答案 1 :(得分:-1)
我创建了以下代码:
int speed = 75;
int distance = 0;
//initialize variables
System.out.print("Day\tHours\tSpeed\tMiles\n");
//print header
for (int day = 1; day <= 20; day++){
//run loop untill we pass day 20
distance += speed * 24;
//add speed*hoursInADay (=distance traveled that day) to distance
System.out.print(day + "\t" + day*24 + "\t" + speed + "\t" + distance + "\n");
//print: day hours speed distance
speed++;
//increment speed with 1
}
它有效,但是在解决方案中,您给我们提供了从第4天到第5天从5544到488的行驶距离跳跃的信息吗?