gpt4 book ai didi

java - 递减数字金字塔、嵌套for循环、用户输入、java

转载 作者:行者123 更新时间:2023-12-01 23:08:36 24 4
gpt4 key购买 nike

编写一个程序,为之间的任何给定整数生成以下输出1 和 9 包括在内。

输入整数值[1..9]:6

1
12
123
1234
12345
123456
666666
66666
6666
666
66
6

我已经完成了上半部分,但我无法通过重复的用户输入找出下半部分。

package lab7;

import java.util.Scanner;

public class problem5 {
public static void main(String[] args) {
Scanner scan = new Scanner (System.in);
System.out.println("Input an integer between 1 and 9");
int input = scan.nextInt();
while (input <= 9) {
for (int i = 1; i <= input; i++) {
for (int j = 1; j <= i; j++) {
System.out.print(j);
}
System.out.println();
}
break;
}
}
}

预期结果:包含在顶部;到目前为止的实际结果(输入 5 个):

1
12
123
1234
12345

最佳答案

你已经很接近了。您有一个 for 循环,它涵盖了您想要的输出的前半部分。您可以添加第二个 for 循环来处理输出的后半部分。

这与第一个循环非常相似,但有一些细微的差别:

  • 循环变量不是从 1 开始递增,而是从 input 开始,每次递减(i-- 相反i++)
  • 它不打印任何循环变量(ij),而是打印 input 值(示例中为“6”) )
for (int i = input; i > 0; i--) {
for (int j = 1; j <= i; j++) {
System.out.print(input);
}
System.out.println();
}

如果我在本地运行该代码 - 那么您的 for 循环,然后是 for 循环,然后是 break 语句 - 这就是输出:

Input an integer between 1 and 9
6
1
12
123
1234
12345
123456
666666
66666
6666
666
66
6

关于java - 递减数字金字塔、嵌套for循环、用户输入、java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58386805/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com