如何解决如何修复它以输出我想要输出的内容?
我最近开始用 Java 编码,我一周前才开始。之前的帖子被删除了,因为我没有详细说明它,我很抱歉。我一直在使用 for、do 和 while 语句时遇到问题,如何在我输入的预期输出中输出相同的结果?与 while 或 do 或 for only 一起使用。
当前代码:
public class Main {
public static void main(String[] args) {
for(int row = 3;row <= 7;row++) {
String spc = " ";
for(int column = 1; column <;= 3; column++) {
System.out.print(column * row + spc);
}
System.out.println();
}
}
}
当前输出:
3 6 9
4 8 12
5 10 15
6 12 18
7 14 21
预期产出:
设置 1
3
4 6
5 8 11
6 10 14 18
7 12 17 22 27
设置 2
3 8 13 18 22
2 6 10 14
1 4 7
0 2
-1
我真的很难解决这个问题,任何帮助将不胜感激!谢谢:)
解决方法
这是您问题的解决方案。我从一个行号开始,1..5。然后,我根据该值计算出根据行号执行内循环需要多少次。一旦我在内循环中迭代了正确的次数,那么只需让数学正确地给出您想要的数字即可:
public static void main(String argv[]) {
for (int row = 1 ; row <= 5 ; row++) {
String str = "";
for (int term = 0 ; term < row ; term++) {
str += ((row + 2) + row * term) + " ";
}
System.out.println(str);
}
System.out.println();
for (int row = 5 ; row >= 1 ; row--) {
String str = "";
for (int term = 0 ; term < row ; term++) {
str += ((row - 2) + row * term) + " ";
}
System.out.println(str);
}
}
结果:
3
4 6
5 8 11
6 10 14 18
7 12 17 22 27
3 8 13 18 23
2 6 10 14
1 4 7
0 2
-1
注意:我相信第二组的第一行应该以 23
结尾,而不是 22
,因为您显示为所需的输出。
首先我会试着给你一些提示而不是答案。我想帮助你做一件事。如果你看到你的集合 1,有一个模式。在你的第一行你只有 3 (基本上打印一次你的行值)在第二行你可以看到有两个输出(第二行,两个输出。第三行三个输出)并且它继续。所以我相信而不是从 1 到 3 尝试你的第二个有一个计数器。在您的第二个 for --> 列
,因此,这是为第 1 组要求提供答案的代码:
for (int i = 0; i < 5; i++) {
for (int j = 0; j <= i; j++) {
System.out.print((i + 3) + (i + 1) * j + " "); //Since someone else already answered,I am going to add it here too
}
System.out.println(); //To go to next line
}
说明:
外部 for 循环确定输出中的行数(在本例中为 5)。内部 for 循环确定输出中该特定行的列数(使用 i 检查该值,因为第一行包含一个元素,第二行包含两个元素,依此类推)。
当你想在第一行有 5 个元素并随着 i 的每次迭代减少元素的数量时,使用相同的逻辑。
希望这个解释能帮助你自己弄清楚 set 2 的逻辑。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。