我的目标是建立一个金字塔:
我应该使用循环(for或while)来获得此效果。我用以下代码完成了这个:
package finalprob1;
public class FinalProb1 {
public static void main(String[] args) {
int row = 1;
int input = 6;
int rowcount = 11;
int blocknum = 1, blockperrow = 1;
while (row <= rowcount)
{
while(blocknum < blockperrow)
{
System.out.print(input * blocknum + " ");
blocknum = blocknum +1 ;
}
blocknum = 1;
System.out.println();
blockperrow = blockperrow + 1;
row = row +1;
}
} // END OF MAIN
} // END OF CLASS
代码非常混乱。我确信有一种非常简单的方法可以通过两个循环完成这个但我似乎无法弄明白。任何帮助将不胜感激。
答案 0 :(得分:1)
可以像这样完成
for(int i = 1;i<11;i++){
for(int j=1;j<=i;j++){
System.out.print((6*j)+" ");
}
System.out.println();
}
答案 1 :(得分:1)
您可以按以下方式优化代码。
int size = 10;
for(int row = 1; row <= size; row++) {
for(int col = 1;col <= row; col++) {
System.out.print( 6*col + " ");
}
System.out.println();
}
答案 2 :(得分:0)
试试这个 -
public class Test {
private static final String sp = " "; // space
public static void main(String[] args) {
printTriangle(6, 60);
}
public static void printTriangle(int num, int maxMultiple) {
int itr = maxMultiple / num;
for (int i = 1; i <= itr; i++) {
for (int j = 1; j <= i; j++) {
System.out.print(num * j + sp);
}
System.out.println();
}
}
}