我在BlueJ编程环境中对Java有相当不错的了解。但我不知道写一个循环函数来创建它 图案。任何帮助或指针都会非常有帮助。
1
3 1
5 3 1
7 5 3 1
9 7 5 3 1
我的代码到目前为止......
import java.util.*;
public class scanner {
public static void main(){
Scanner sc = new Scanner(System.in);
int val = 1;
for( int i=1; i < 5; i++){
for(int j = 1; j > i; j--){
System.out.print(j+" ");
if(val != 1) {
System.out.print(1);
}
val +=1;
}
System.out.println();
}
}
}
答案 0 :(得分:1)
你的方法太复杂了。我建议你定义关键变量并将它们用于算法。顺便说一句,您不需要使用java.util.Scanner
,因为您没有从控制台收到任何输入值。
int end = 1;
int step = 2;
int rows = 5;
for (int i=0; i<rows; i++) {
for (int j=0; j<i+1; j++) {
int number = end + i*step - j*step;
System.out.print(number + " ");
}
System.out.println();
}
输出(make sure):
1
3 1
5 3 1
7 5 3 1
9 7 5 3 1
此外,在您的代码中,您有以下行:
for (int j = 1; j > i; j--) { ...
由于条件j > i
和j
减去,此循环永远不允许进入其正文。我建议您调试程序并跟踪i
和j
值,以了解正在发生的事情。