HavE yOu aLreAdY KnoW ??

Rabu, 17 Juni 2009
Magic Square

Bujur Sangkar Ajaib ordo 7 x 7 ialah sebagai berikut :

30 39 48 01 10 19 28
38 47 07 09 18 27 29
46 06 08 17 26 36 37
05 14 16 25 34 36 45
13 15 24 33 42 44 04
21 23 32 41 43 03 12
22 31 40 49 02 11 20

Untuk membuat bujur sangkar sedemikian rupa, pertama kita membuat file dengan nama persegi.txt

{ ordo[55,55]; #ordo persegi
n=$1; #input matriks
X=1; #nilai awal
Y=1; #interval
Z=1; #interval pindah

for(a=0; a<=n+2; a++) #menghitung letak kolom dan baris
{ for(b=0; b<=n+2; b++)
ordo[a,b] = 0;
}
a=1; b=(n+1) / 2;
X-=Y;
for(N=1; N<=n*n;)
{ if(ordo[a,b]==0)
{ X+=Y;
ordo[a,b] = X;
if(a==n) ordo[0,b] = X;
if(b==1) ordo[a,n+1] = X;
if(a==n && b==1 ) ordo[0,n+1] = X;
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;
X=X-Y+Z;
}
}
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]);
}
}

Kemudian tulis di terminal, instruksi berikut :
kingdom@kingdom-desktop:~$ echo 7 | awk -f persegi.txt

Maka akan muncul bujur sangkar ajaib seperti di atas...

Selain itu, kita juga dapat menampilkan bujur sangkar ajaib dengan ordo yang berbeda, misalnya bujur sangkar ajaib dengan ordo 5 x 5. Cara yang digunakan sama dengan instruksi di atas..
Bedanya hanya kita tinggal mengganti angka 7 dengan angka yang kita kehendaki, dalam hal ini ialah 5.

Sehingga instruksinya menjadi seperti di bawah ini ;
kingdom@kingdom-desktop:~$ echo 5 | awk -f persegi.txt

Hasil dari instruksi di atas ialah :

17 24 01 08 15
23 05 07 14 16
04 06 13 20 22
10 12 19 21 03
11 18 25 02 09

posted by Innocentia @ 21.05  
0 Comments:

Posting Komentar

<< Home
 
About Me

Name: Innocentia
Home: surabaya, jawa timur, Indonesia
About Me: aq tuh anagh na cute, baek hati, jujur, tidak sombong, dan rajin menabung.... opo tho yo??! www.eepis-its.edu
See my complete profile
Previous Post
Archives
Shoutbox

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Duis ligula lorem, consequat eget, tristique nec, auctor quis, purus. Vivamus ut sem. Fusce aliquam nunc vitae purus.

Links
  • link 1
  • link 2
  • link 3
  • link 4
Powered by

Free Blogger Templates

BLOGGER