Java编写数字空心菱形
实践效果:
一、编写菱形的思想:
1、输入一个整数值为n
2、每行输出n个空格
3、满足条件的位置输出数字
二、菱形的上半部分:
> int a=scan.nextInt();
> for(int i=a;i>=1;i--){
> for(int j=1;j<2*a;j++){
> if( j == i || j == 2*a-i){
> System.out.print(a-i+1);
> }else{
> System.out.print(" ");
> }
> }
> System.out.println();
> }
1、第一个for循环代表行
2、第二个for循环代表每行中的一个格
3、当格满足了:行数==格数 或者 行数 = =两倍格数-行数(其实就是为了对称,找到两个对称的位置进行输出数字)
源代码如下:
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
System.out.print("请任意输入一个数:");
int a=scan.nextInt();
for(int i=a;i>=1;i--){ //菱形的上半部分
for(int j=1;j<2*a;j++){
if(j==i||j==2*a-i){
System.out.print(a-i+1);
}else{
System.out.print(" ");
}
}
System.out.println();
}
for(int i=2;i<=a;i++){ //菱形的下半部分
for(int j=1;j<2*a;j++){
if(i==j||j==2*a-i){
System.out.print(a-i+1);
}else{
System.out.print(" ");
}
}
System.out.println();
}
}