思考:
打印菱形是一个运用for循环的经典算法,初次看之前觉得无从下手。但是步步拆解之后,发现打印出来并不是很难的事。
一个菱形一个看做是一个正立的等腰三角形加上一个倒立的少一行的等腰三角形组成。那么其实就是首先先打印一个正立的等腰三角形,再打印一个倒立的少一行的等腰三角形。
然后我们需要考虑的就是如何打印一个等腰三角形,打印等腰三角形其实就是先打印一个直角三角形,然后再在*号前面打上空格。
这样的话,复杂的问题就一步步分解成了简单的问题。
代码如下:
public class PrintRho
{
public static void main(String[] args){
int i,j,z;
for(i=1;i<=3;i++){
for(j=1;j<=3-i;j++){
System.out.print(" ");//打印空格
}
for(z=1;z<=2*i-1;z++){
System.out.print("*");//打印三角形
}
System.out.println();
}
for(i=1;i<=2;i++){
for(j=1;j<=i;j++){
System.out.print(" ");
}
for(j=1;j<=5-2*i;j++){
System.out.print("*");
}
System.out.println();
}
}
}