public class Test2 {
public static void main(String[] args) throws InterruptedException {
// TODO Auto-generated method stub
//菱形若是n*n的(n为奇数)
//1,首先选n/2为轴(注意循环都已0计数),设为a
//例如:n=11;a=11/2=5(取整)所以是11*11的菱形
for(int i=0;i<11;i++){
if(i<=5){
for(int j=0;j<11;j++){
if(j>=5-i&&j<=5+i)
System.out.print("*");
else
System.out.print(" ");
}
System.out.println();
//上半部分(行数0~a闭区间)在j在[a-i,a+i]范围内打星(此处i为外循环即行数,j为内循环即列数)
}else{
for(int j=0;j<11;j++){
if(j>=i-5&&j<=15-i)
System.out.print("*");
else
System.out.print(" ");
}
System.out.println();
//下半部分(行数a~n-1左开右闭)在j在[i-a,n-1-(i-a)]范围内打星
}
}
}
public static void main(String[] args) throws InterruptedException {
// TODO Auto-generated method stub
//菱形若是n*n的(n为奇数)
//1,首先选n/2为轴(注意循环都已0计数),设为a
//例如:n=11;a=11/2=5(取整)所以是11*11的菱形
for(int i=0;i<11;i++){
if(i<=5){
for(int j=0;j<11;j++){
if(j>=5-i&&j<=5+i)
System.out.print("*");
else
System.out.print(" ");
}
System.out.println();
//上半部分(行数0~a闭区间)在j在[a-i,a+i]范围内打星(此处i为外循环即行数,j为内循环即列数)
}else{
for(int j=0;j<11;j++){
if(j>=i-5&&j<=15-i)
System.out.print("*");
else
System.out.print(" ");
}
System.out.println();
//下半部分(行数a~n-1左开右闭)在j在[i-a,n-1-(i-a)]范围内打星
}
}
}
}
结果:
*
***
*****
*******
*********
***********
*********
*******
*****
***
*