Kamis, 25 Juni 2009 |
KALENDER GREGORIAN |
Pertama, buatlah file dengan nama lahir.txt seperti berikut :
chyntia 15 1 1990 dauz 19 1 1990 mobed 7 12 1988 fina 23 5 1988 ilham 11 1 1990 angga 24 7 1988 yanuar 29 9 1990 sandra 25 4 1988 tyo 17 12 1990 andre 24 12 1988 widi 12 7 1986 ojik 14 1 1988 dicky 28 12 1990 anez 29 2 1988 putra 16 1 1990
Lalu, buat lagi file dengan nama cara.txt yang berisi :
{ thn=$4-1; bln=$3-1; thk=thn/4; if(thn%4==1){b=0.25} if(thn%4==2){b=0.50} if(thn%4==3){b=0.75} d=thk-b; thb=thn-d;
if(bln==0 && $4%4!=0){a=0} if(bln==1 && $4%4!=0){a=31} if(bln==2 && $4%4!=0){a=59} if(bln==3 && $4%4!=0){a=90} if(bln==4 && $4%4!=0){a=120} if(bln==5 && $4%4!=0){a=151} if(bln==6 && $4%4!=0){a=181} if(bln==7 && $4%4!=0){a=212} if(bln==8 && $4%4!=0){a=243} if(bln==9 && $4%4!=0){a=273} if(bln==10 && $4%4!=0){a=304} if(bln==11 && $4%4!=0){a=334}
if(bln==0 && $4%4==0){a=0} if(bln==1 && $4%4==0){a=31} if(bln==2 && $4%4==0){a=60} if(bln==3 && $4%4==0){a=91} if(bln==4 && $4%4==0){a=121} if(bln==5 && $4%4==0){a=152} if(bln==6 && $4%4==0){a=182} if(bln==7 && $4%4==0){a=213} if(bln==8 && $4%4==0){a=244} if(bln==9 && $4%4==0){a=274} if(bln==10 && $4%4==0){a=305} if(bln==11 && $4%4==0){a=335}
jum=(thb*365)+(d*366)+a+$2;
if(jum%7==1){print $0," ","Lahir pada hari Minggu"} if(jum%7==2){print $0," ","Lahir pada hari Senin"} if(jum%7==3){print $0," ","Lahir pada hari Selasa"} if(jum%7==4){print $0," ","Lahir pada hari Rabu"} if(jum%7==5){print $0," ","Lahir pada hari Kamis"} if(jum%7==6){print $0," ","Lahir pada hari Jumat"} if(jum%7==0){print $0," ","Lahir pada hari Sabtu"} }
Selanjutnya, masuklah ke terminal dan ketikkan instruksi berikut :
kingdom@kingdom-desktop:~$ awk -f cara.txt lahir.txt
Hasil dari instruksi di atas ialah :
chyntia 15 1 1990 Lahir pada hari Senin dauz 19 1 1990 Lahir pada hari Jumat mobed 7 12 1988 Lahir pada hari Rabu fina 23 5 1988 Lahir pada hari Senin ilham 11 1 1990 Lahir pada hari Kamis angga 24 7 1988 Lahir pada hari Minggu yanuar 29 9 1990 Lahir pada hari Sabtu sandra 25 4 1988 Lahir pada hari Senin tyo 17 12 1990 Lahir pada hari Senin andre 24 12 1988 Lahir pada hari Sabtu widi 12 7 1986 Lahir pada hari Sabtu ojik 14 1 1988 Lahir pada hari Kamis dicky 28 12 1990 Lahir pada hari Jumat anez 29 2 1988 Lahir pada hari Senin putra 16 1 1990 Lahir pada hari Selasa |
posted by Innocentia @ 01.59  |
|
|
Rabu, 24 Juni 2009 |
KALENDER JAWA |
Untuk membuat kalender jawa, pertama kita membuat file bernama a.txt, dengan input sebagai berikut :
Chyntia 15 1 1990 Dauz 19 1 1989 Januar 19 10 1989 Donee 20 9 1988 Lena 13 7 1989 Jeanette 12 2 1981 Denny 17 9 1987 Jono 19 5 1990 Parto 21 2 1991 Ardi 17 6 1987 Tri 12 5 1989 Mitha 17 10 1989 Susan 18 1990 Dino 22 8 1990 Hadi 14 1 1989
Kemudian buatlah satu file baru lagi, misalnya bernama b.txt, dengan isi sebagai berikut :
{ 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");
} } }
Kemudian jalankan di terminal, instruksi di bawah ini : $ awk -f b.txt a.txt
dengan instruksi di atas, maka akan muncul tampilan berikut :
Chyntia Hari = SENIN Pasaran = PON Dauz Hari = KAMIS Pasaran = PAHING Januar Hari = KAMIS Pasaran = KLIWON Donee Hari = SELASA Pasaran = LEGI Lena Hari = KAMIS Pasaran = PAHING Jeanette Hari = KAMIS Pasaran = WAGE Denny Hari = KAMIS Pasaran = PAHING Jono Hari = SABTU Pasaran = PAHING Parto Hari = KAMIS Pasaran = KLIWON Ardi Hari = RABU Pasaran = KLIWON Tri Hari = JUM'AT Pasaran = KLIWON Mitha Hari = SELASA Pasaran = PON Dino Hari = RABU Pasaran = PAHING Hadi Hari = SABTU Pasaran = PAHING
|
posted by Innocentia @ 19.57  |
|
|
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  |
|
|
Senin, 01 Juni 2009 |
MENGHITUNG HARGA BARANG dan DISCOUNTnya |
Buatlah sebuah file dengan nama 'harga barang', kemudian isilah dengan data berikut ini :
Barang | Jumlah | Harga satuan |
---|
CPU | 7 | 5500000 |
---|
Printer | 5 | 1500000 |
---|
Scaner | 8 | 2700000 |
---|
Monitor | 10 | 3500000 |
---|
Hardisk | 6 | 1200000 |
---|
Mouse | 12 | 100000 |
---|
Webcam | 15 | 1000000 |
---|
kemudian masukkan instruksi awk ini :
awk 'BEGIN{printf "%-10s %-10s %-10s %-10s %-10s %s\n", "BARANG","JUMLAH","HARGA SATUAN","TOTAL","DISKON", "BAYAR"} {if($2>=5 && $2 <10){printf 4="$2*$3,$5=" 6="$4-$5"> {if($2>=10){printf "%-10s %-10s %-10s %-10s %-10s %s\n", $1,$2,$3,$4=$2*$3,$5=0.2*$4,$6=$4-$5 }}' harga barang |
posted by Innocentia @ 21.12  |
|
|
Kamis, 14 Mei 2009 |
PROGRAM MENENTUKAN NILAI IP SEMENTARA |
Kita misalkan terdapat data, yakni sebagai berikut :
No. Nama Mata Kuliah Jumlah SKS Nilai Tugas Nilai UTS Nilai UAS 1. Mary AWK 3 65 82 76 2. Mary Rangkaian 6 86 83 82 3. Mary OS 3 50 93 67 4. Mary Arkom 3 86 83 85 5. Mary B.Inggris 2 86 83 85
Untuk mencari Indeks Prestasi Sementaranya, kita dapat mencarinya dengan program berikut :
awk' { NA=0; NA=($5+$6+$7)/3} {{if(81<=NA && NA<=100){print $1,$2, $3,$4,$5,$6,$7,NA, "A", $8= 4*$2}} {{if(71<=NA && NA<=80){print $1,$2, $3,$4,$5,$6,$7,NA, "B", $8= 3*$2}} {{if(61<=NA && NA<=70){print $1,$2, $3,$4,$5,$6,$7,NA, "C", $8= 2*$2}} {{if(51<=NA && NA<=60){print $1,$2, $3,$4,$5,$6,$7,NA, "D", $8= 1*$2}} {{if(0<=NA && NA<=50){print $1,$2, $3,$4,$5,$6,$7,NA, "E", $8= 0*$2}} BEGIN {jumlah=0} {jumlah=jumlah+$4} END { print "Jumlah SKS= ", jumlah} BEGIN { NT=0 } {NT=NT+$8} END{print " Nilai total = ", NT} BEGIN { IPS =0 } { IPK=NT/jumlah} END {print " IP Sementara=", IPS}' nilai
Keterangan : Tanda $ menyatakan isi suatu kolom. |
posted by Innocentia @ 03.18  |
|
|
Rabu, 13 Mei 2009 |
PROGRAM MENCARI BILANGAN PRIMA |
Untuk mencari bilangan prima antara 2 sampai 100, maka kita dapat menggunakan program sebagai berikut :
$ ls -l | awk 'BEGIN { Bil[100]; } END { for (i=2;i<=97;i++ ){ if(i%i==0 && i%2!=0 && i%3!=0 && i%4=0 && i%5!=0 && i%6!=0 && i%7!=0 && i%8!=0 && i%9!=0 || i==3 || i==5 || i==7|| i==2) {print Bil[i],i;} } }'
|
posted by Innocentia @ 18.53  |
|
|
Rabu, 18 Maret 2009 |
AWK |
DEFINISI
AWK adalah bahasa pemrograman untuk memanipulasi data secara bersama hanya dengan program yang singkat karena bahasa AWK tidak memerlukan suatu deklarasi untuk variabel. AWK akan menangani input, pemisahan field, initialisasi, dan manajemen memori secara otomatis. Seiring berjalannya waktu, bahasa AWK semakin kuat dengan munculnya GAWK dan NAWK.
Beberapa fitur tambahan pada NAWK adalah sebagai berikut : • Ekspresi reguler dinamik • Fungsi additional built-in dan variabel • Operator baru and statement • Input lebih dari 1 files • Akses ke argumen baris perintah • Mengubah pesan error
STRUKTUR AWK
• BEGIN segment ( optional ) • Pattern-action pairs ( inputing data ) • END segment ( optional )
STRUKTUR PATTERN - ACTIONS
• Pattern terdaftar secara singkat, sedangkan actions diawali dan diakhiri oleh {}.
CARA MENJALANKAN AWK
• AWK ‘program’ input_file(s) : program dan input merupakan perintah. • AWK ‘program’ : program bertindak sebagai perintah, input berasal dari standart input. • AWK –f program_file_name input_files : program dibaca dari suatu file.
PENYIMPAN OUTPUT AWK
• Lining Up Fields ( printf=untuk menghasilkan output terformat )
OUTPUT SEDERHANA AWK
• Dapat menampilkan number of field ( NF ) • Dapat melakukan perhitungan pada nilai field dan menampilkannya sebagai output. • Dapat menampilkan line numbers yang kita inginkan ( NR ) • Dapat menambahkan text pada output. • Dapat menampilkan output seluruh line apabila tidak terdapat pattern. • Dapat menampilkan multiple items dengan 1 print statement.
|
posted by Innocentia @ 03.08  |
|
|
|
|
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 |
 |
|