3 |
7 |
|||||||
2 |
4 |
6 |
8 |
|||||
1 |
5 |
9 |
平面图形 :打印实现M
1)Num=9, int height=num/2+1, width=num;
2)y从height-1到0再到height-1变化
package it.xiehe.Demo; public class Demo03 { /* * 打印如下图所示图形(平面图形题) * 3 7 * 2 4 6 8 * 1 5 9 */ public static void main(String[] args) { int num = 9;// 定义要打印的数字个数 int height = num / 4 + 1;//九个数字分成四条边 int weidth = num; int arr[][] = new int[height][weidth];// 定义二维数组存储图形 int x = height-1; int y = 0; boolean flage = false;// 加减标志 // 1、赋值 for (int i = 1; i <= num; i++) { arr[x][y] = i; y++; if (!flage) { x--; } if (flage) { x++; } if (x < 0) { flage = true; x = x + 2; } if (x > height-1) { flage = false; x = x - 2; } } for (int i = 0; i < arr.length; i++) { for (int j = 0; j < arr[0].length; j++) { if (arr[i][j] == 0) { System.out.print(" "); } else { System.out.print(arr[i][j]); } } System.out.println(); } } }