java 嵌套for循环 输出下列数字金字塔1 121 12421 1248421 一共八行 苦逼程序猿一枚。。。。T T

2024-11-26 22:44:30
推荐回答(2个)
回答1:

package cn.gp.test;
public class TT {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
for(int i=1;i<9;i++){
//System.out.println(1<print(i);
}
}
public static void print(int i){
//假设是5那么先打印3个空格,然后接下来是124 8
//先打印空格
for(int j=0;j<8-i;j++){
System.out.print(" ");
}
//打印左侧 8
for(int j=0;jSystem.out.print(1<}
//打印中间
System.out.print(1<<(i-1));
//打印右侧
for(int j=0;jSystem.out.print((1<<(i-1))>>(j+1));
}
System.out.println();
}
}
好久没有做循环了,哈哈

回答2:

呵呵,升级了啊,我记得我们当时学时是输出的金字塔的“*”;现在用数字了,更复杂了。
其实道理是一样的,只是这个相比于那个来说,1248421,每一行的最大值是1*2^行数,到了第4行时最大值变成16了,是两位数,所以空格输出上得留意一下