Cetak kubus rubik
Masukkan angka alami n (2≤n≤9), dan membutuhkan matriks kubus berikut untuk menjadi output, yaitu, panjang sampingnya adalah n*n, elemen diambil dari 1 hingga n*n, dan 1 berada di sudut kiri atas, dan setiap elemen ditempatkan dalam arah searah jarum jam. Saat n = 3:
1 2 3 8 9 4 7 6 5
[Formulir Input] Baca integer N dari input standar.
[Formulir Output] Cetak hasilnya ke output standar. Matriks kuadrat yang memenuhi persyaratan adalah output, setiap angka menempati 5 karakter lebarnya, disejajarkan dengan kanan, dan karakter carriage return adalah output pada akhir setiap baris.
【Sampel input】 4
【Sampel output】
1 2 3 4 12 13 14 5 11 16 15 6 10 9 8 7
menyelesaikan:
paket cn.dfeng; impor java.util.arrays; impor java.util.scanner; labirin kelas publik {enum arah {atas, bawah, kanan, kiri; } public int [] [] buidMaze (int n) {int [] [] maze = int int [n] [n]; untuk (int [] a: maze) {arrays.fill (a, 0); } int col = 0; int baris = 0; int counter = 1; Arah d = arah.right; while (true) {if (maze [baris] [col] == 0) {maze [baris] [col] = counter ++; switch (d) {case right: if (col + 1 <n && maze [baris] [col + 1] == 0) {col ++; } else {d = Direction.Down; baris ++; } merusak; case down: if (row + 1 <n && maze [baris + 1] [col] == 0) {baris ++; } else {d = Direction.Left; col -; } merusak; Case Left: if (col -1> = 0 && maze [baris] [col -1] == 0) {col -; } else {d = Direction.up; baris --; } merusak; default: if (row - 1> = 0 && maze [baris - 1] [col] == 0) {row -; } else {d = Direction.Right; col ++; } merusak; }} else {break; }} return maze; } public void printMaze (int [] [] maze) {for (int [] row: maze) {for (int i: row) {system.out.printf ("%3d", i); } System.out.println (); }} / ** * @param args * / public static void main (string [] args) {scanner sc = new scanner (system.in); System.out.println ("Harap masukkan ukuran labirin:"); int size = sc.nextInt (); Labirin labirin = labirin baru (); int [] [] m = maze.buidmaze (ukuran); Maze.printmaze (M); }}Cetak Grafik Berlian
Efek dari gambar berlian mungkin seperti ini:
Mari kita lihat kode di bawah ini
paket cn.dfeng; / *** Kelas ini dapat menggunakan* untuk mencetak grafik berlian dengan ** @author dfeng**/ laci kelas publik {/ *** Cetak grafik berlian* @param n ukuran berlian*/ public void printDiamond (int n) {System.out.println (); int i = 0; bendera boolean = true; while (i> = 0) {if (i <n) {for (int j = 0; j <n - i; j ++) {System.out.print (""); } untuk (int j = n - i; j <= n + i; j + = 2) {System.out.print ("*"); } System.out.println (); } if (i == n) {flag = false; Saya--; } if (flag) {i ++; } else {i--; }}}}