Tugas 5 Dan Tugas 6 Calendar

Pada tugas 5 kali ini kita akan membuat kalender dari awk tools. Calendar ini akan menampilkan Hari dan pasaran tanggal lahir inputan.
Pertama kita buat file input.txt yang berisi nama dan tanggal lahir:
yanuar 19 1 1989
Soleh 20 2 1988
Soleha 23 1 1989
Priyadi 12 3 1987
Supriyadi 12 4 1988
Paijo 11 2 1989
Suratno 11 3 1989
Sumardi 27 3 1988
Priyo 22 4 1989
Sarimin 17 8 1989
Susi 17 4 1990
Panji 25 9 1989
Dayat 12 12 1989
Heriyanto 11 10 1989
Budiyanto 27 11 1988
Kedua kita buat rumus dengan file coba.txt:
{
nm=$1;
tgl=$2;
bln=$3;bln1=int(bln)
tahun=$4;
if (bln1<=12&&bln1!=0)
{
thn=tahun-1;
thk=thn/4;
thb=thn-int(thk);
jumth=tahun%4;
bulan=bln-1;
if (jumth==0){
if(bulan==0)
i=31;
if(bulan==1)
i=62;
if(bulan==2)
i=91;
if(bulan==3)
i=122;
if(bulan==4)
i=152;
if(bulan==5)
i=183;
if(bulan==6)
i=213;
if(bulan==7)
i=244;
if(bulan==8)
i=275;
if(bulan==9)
i=305;
if(bulan==10)
i=336;
if(bulan==11)
i=366;
}
else

{
if(bulan==0)
i=31;
if(bulan==1)
i=62;
if(bulan==2)
i=90;
if(bulan==3)
i=121;
if(bulan==4)
i=151;
if(bulan==5)
i=182;
if(bulan==6)
i=212;
if(bulan==7)
i=243;
if(bulan==8)
i=274;
if(bulan==9)
i=304;
if(bulan==10)
i=335;
if(bulan==11)
i=365;
}
kab=366*int(thk);
br=365*thb;
tothar=(kab)+(br)+i+tgl;
hr=tothar%7;

printf(nm);
{
if(hr==0)
printf("\t\tHari = RABU\n");
else if(hr==1)
printf("\t\tHari = KAMIS\n");
else if(hr==2)
printf("\t\tHari = JUM'AT\n");
else if(hr==3)
printf("\t\tHari = SABTU\n");
else if(hr==4)
printf("\t\tHari = MINGGU\n");
else if(hr==5)
printf("\t\tHari = SENIN\n");
else
printf("\t\tHari = SELASA\n");
}
psr=tothar%5;{
if(psr==0)
printf("\t\tPasaran = KLIWON\n");
else if(psr==1)
printf("\t\tPasaran = LEGI\n");
else if(psr==2)
printf("\t\tPasaran = PAHING\n");
else if(psr==3)
printf("\t\tPasaran = PON\n");
else
printf("\t\tPasaran = WAGE\n");

}
}
}
Ketiga :Jalankan ke 2 file tersebut dengan perintah
$ awk -f coba.txt input.txt
Maka akan muncul di tampilan sbg berikut
yanuar Hari = KAMIS
Pasaran = Pahing
Soleh Hari = Sabtu
Pasaran = PON
Soleha Hari = SENIN
Pasaran = LEGI
Priyadi Hari = KAMIS
Pasaran = PON
Supriyadi Hari = SELASA
Pasaran = KLIWON
Paijo Hari = SABTU
Pasaran = KLIWON
Suratno Hari = SABTU
Pasaran = PON
Sumardi Hari = MINGGU
Pasaran = WAGE
Priyo Hari = SABTU
Pasaran = KLIWON
Sarimin Hari = KAMIS
Pasaran = PAHING
Susi Hari = SELASA
Pasaran = KLIWON
Panji Hari = SENIN
Pasaran = LEGI
Dayat Hari = SELASA
Pasaran = WAGE
Heriyanto Hari = Rabu
Pasaran = Pahing
Budiyanto Hari = MINGGU
Pasaran = WAGE
Now this Time to Celebrate.....

0 komentar: