Kita akan membuat program dengan java agar mengisi kotak - kotak tersebut secara otomatis.
Program ini menggunakan Array 2D.
package magicsquare; import java.util.Scanner; /** * * @author wiratmoko11 */ public class MagicSquare { public static void main(String[] args) { // TODO code application logic here Scanner input = new Scanner(System.in); System.out.print("Masukkan panjang dan lebar : "); int n = input.nextInt(); if(n % 2 == 0){ System.out.println("harus ganjil !!!"); System.exit(0); } int square[][] = new int[n+2][n+2]; int i = 1, j = (n / 2) + 1 ; for (int m = 1; m <= Math.pow(n, 2); m++) { square[i][j] = m; if(i - 1 < 1){ i = n; }else{ i = i - 1; } if(j + 1 > n){ j = 1; }else{ j = j + 1; } if(square[i][j] != 0){ i = i + 1; j = j - 1; if(i > n){ i = 1; } if(j < 1){ j = n; } i++; } } for (int k = 1; k <= n; k++) { for (int l = 1; l <= n; l++) { System.out.print("" + square[k][l] + "\t"); } System.out.println(""); } } }
Gambaran programnya adalah sebagai berikut
Nah mudahkan :D, oke sekian saja, semoga bermanfaat.
Tapi ingat, program tersebut hanya bisa untuk matriks ganjil.
0 komentar:
Posting Komentar