Java 使用循环打印图案
嘿,伙计们,我正在解决一个需要打印的问题Java 使用循环打印图案,java,java-8,Java,Java 8,嘿,伙计们,我正在解决一个需要打印的问题 123456 1 2 3 4 5 1 2 3 4 1 2 3 1 2 1. public class Set_5_P5_18b{ 公共静态void main(字符串[]args){ int x; 弦y; x=1; y=“”; System.out.println(“模式B:”); 而(x
123456
1 2 3 4 5
1 2 3 4
1 2 3
1 2
1.
public class Set_5_P5_18b{
公共静态void main(字符串[]args){
int x;
弦y;
x=1;
y=“”;
System.out.println(“模式B:”);
而(x<7){
y=y+x+“”;
x++;
}
系统输出打印项次(y);
}
}
我在上面写的是第一行,但我不知道如何修改它来打印第二行,有人能帮我吗 Yuo需要外部for循环来运行从值6到1的x。对于x的每个值,都需要一个为值1运行的内部循环。。。x,并在一行中打印出值
请记住这一点,并尝试先提出伪代码,然后提出实现代码。您的输出可以像二维数组一样观察,其中:
- 索引
自上而下增长,表示行索引i
- 索引
从左向右增长,表示列索引j
for
循环实现这一点:
int colSize = 6;
int rowSize = 6;
for(int i = 1; i <= rowSize; i++) {
for(int j = 1; j <= colSize; j++) {
System.out.print(j + " "); // print individual column values
}
System.out.println(); // print new line for the next row
colSize--; // decrement column size since column size decreases after each row
}
int colSize=6;
int rowSize=6;
对于(int i=1;i当您退出while:p时,您必须重置变量x。当您编写for循环时,您意识到您希望for循环的某个方面在程序每次迭代时都发生更改,您希望使用嵌套for循环(for循环中的for循环)的9/10次
所以,基本上每次迭代for循环时,都希望减少for循环的持续时间
for(int num=1;num<;num++){}
下面是代码方法
public static void print(int x) {
for (int lengthOfFor = x; lengthOfFor > 0; lengthOfFor--) {
for (int num = 1; num <= lengthOfFor; num++) {
System.out.print(num + " ");
}
System.out.print("\n");
}
}
公共静态无效打印(int x){
对于(int lengthOfFor=x;lengthOfFor>0;lengthOfFor--){
对于(int num=1;num 0;lengthOfFor--){
对于(int num=1;num解决方案:
public static void printPattern(int rows) {
IntStream.range(0, rows).map(r -> rows - r).forEach(x -> {
IntStream.rangeClosed(1, x).forEach(y -> {
System.out.print(String.format("%3d", y));
});
System.out.println();
});
}
用法:
printPattern(9);
输出:
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7
1 2 3 4 5 6
1 2 3 4 5
1 2 3 4
1 2 3
1 2
1
你尝试过什么?你需要另一个循环。请注意,这不是一个调试器。第二行在哪里?从n=6开始,打印i=0到n,每一步递减n…你想要一个嵌套循环(另一个循环中的一个循环)。我不知道如何使用嵌套循环来获取第二行
1 2 3 4 5 6 7 8 9
1 2 3 4 5 6 7 8
1 2 3 4 5 6 7
1 2 3 4 5 6
1 2 3 4 5
1 2 3 4
1 2 3
1 2
1