Selasa, 23 Juni 2009 di 15.58 |  
Langkah awal yang harus kita lakukan adalah, kita harus membuat file magic.txt yang didalam teks ini telah terisi program dibawah ini:

{ ordo[55,55];
n=$1;
K=1;
L=1;
M=1;

for(a=0; a<=n+2; a++)
{ for(b=0; b<=n+2; b++)
ordo[a,b] = 0; }
a=1; b=(n+1) / 2;
K-=L;
for(N=1; N<=n*n;)
{ if(ordo[a,b]==0)
{ K+=L;
ordo[a,b] = K;
if(a==n) ordo[0,b] = K;
if(b==1) ordo[a,n+1] = K;
if(a==n && b==1 ) ordo[0,n+1] = K;
a--; b++; N++;
if(a==0&&b==n+1) continue;
else {
if (a==0) a=n;
if(b==n+1) b=1; } }
else {
a+=2;
b-=1;
K=K-L+M; } }
for(a=1; a<=n; a++)
T1+=ordo[a,n+1-a];

for(a=1; a<=n*5;a++)
printf(" ");
printf("%5d\n\n",T1);

for(a=1;a<=n+1;a++) {
for(b=1; b<=n; b++) {
printf("%5d", ordo[a,b]);
ordo[a,n+2] += ordo[a,b];
ordo[n+1,b] += ordo[a,b]; }
T2 += ordo[a,b];
if(a==n+1) ordo[a,n+2] = T2;
printf("%5d\n\n",ordo[a,n+2]); } }


Setelah membuat file magic.txt diatas barulah kita memanggil file tersebut menggunakan terminal caranya:

echo 7 | awk -f magic.txt

Perintah echo 7 berarti bahwa ordo yang dibuat adaalah ordo 7x7 dan apabila kita ingin membuat ordo yang lainnya maka kita hanya tinggal mengganti angka dari echo tersebut.
Hasil dari perintah di atas adalah sebagai berikut :

30 39 48 1 10 19 28 175

38 47 7 9 18 27 29 175

46 6 8 17 26 35 37 175

5 14 16 25 34 36 45 175

13 15 24 33 42 44 4 175

21 23 32 41 43 3 12 175

22 31 40 49 2 11 20 175

175 175 175 175 175 175 175 175
Diposting oleh Randy Reza K

0 komentar: