在Java中的星星金字塔

时间:2012-12-03 09:52:52

标签: java string-formatting

我如何在java中执行此操作?:

    *  *  *  *  *  *  *
       *  *  *  *  *
          *  *  * 
             *
          *  *  *
       *  *  *  *  *
    *  *  *  *  *  *  *

这是我的答案^ _ ^

for (int i=7;i>=1;i-=2 ) {
for (int j=i;j<7;j++ ) {
System.out.print(" " );
}for (int k=1;k<i+1;k++) {
System.out.print(" *" );
}System.out.println( );
 }   
for (int i=3;i<=7;i+=2 ) {
for (int j=7;j>i;j--) {
System.out.print(" " );
}for (int k=1;k<=i;k++ ) {
System.out.print(" *" );
}System.out.println( );

}

我也想知道如何做到这一点:

    *                 *
    *  *           *  *
    *  *  *     *  *  *
    *  *  *  *  *  *  *
    *  *  *     *  *  *
    *  *           *  *
    *                 *

我现在正在尝试

3 个答案:

答案 0 :(得分:1)

如果*,请考虑7行的正方形。

然后,你所做的是:

enter image description here

你需要做的是:

enter image description here

将之前已完成的红色区域转换为空格,并将*添加到空白区域

自己编写自己的代码,将来会帮助您:)

修改:好的,仅供参考:

       for (int i=0;i<4;i+=1 ) {
            for (int j=0;j<7;j++ ) {
                if(j>i&&j<(7-(i+1))){
                    System.out.print("  ");
                }
                else
                    System.out.print(" *" );
            }
            System.out.println( );
        }  
        for (int i=4;i<7;i+=1 ) {
            for (int j=7;j>0;j-- ) {
                if(j<(i+1)&&j>(7-(i))){
                    System.out.print("  ");
                }
                else
                    System.out.print(" *" );
            }
            System.out.println( );
        }  

答案 1 :(得分:0)

一种方法可以是使用2个循环,一个用于上半部分,一个用于底部。在处理星星和/或处理空间的两者中嵌套for循环。

还有更多,我将不得不编写代码:)

一旦你得到了这个,你就可以做第二个。

这个问题更像是对逻辑的考验,而不是语言技能。如果您遇到问题因为它的java,那么我建议更多地关注语言基础知识然后尝试编码。

答案 2 :(得分:0)

for (int i = 1, j = 7; i <= 7 && j >= 0; i++, j--) {
    for (int i2 = 0; i2 < i - 1; i2++) {
        System.out.print(" ");
    }
    for (int m = i - 1; m < j; m++) {
        System.out.print("*");
    }

    for (int j2 = j; j2 > 0; j2--) {
        System.out.print(" ");
    }
    System.out.println();
}

只是上半部分给你一些方向,它可能不是有效的解决方案它只是为了工作目的