Showing posts with label awk program. Show all posts
Showing posts with label awk program. Show all posts

Tuesday, June 30

pasaran dan tanggal lahir dan umur

buat file data.txt
2009 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 code.txt:
{
nm=$1;
tgl=$2;
bln1=$3;
tahun=$4;
if (bln1<=12&&bln1!=0)

Monday, June 29

bujur sangkar

Untuk membuat bujur sangkar ajaib dengan ordo 3x3, buatlah sebuah file dengan rumus seperti berikut dan simpan dengan nama bujur.txt misalnya.

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

bujur sangkar 3x3

Untuk membuat bujur sangkar ajaib dengan ordo 3x3, buatlah sebuah file dengan rumus seperti berikut dan simpan dengan nama bujur.txt misalnya.

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

Sunday, May 17

mencari bilangan prima


awk 'BEGIN{ j=2;for (i=3;i<=100;i++)
{ n=3*j;m=5*j;o=7*j;p=9*j;
if (i%2==0) arr[i]=0;
arr[n]=0;arr[m]=0;arr[o]=0;arr[p]=0; j++;
print i;print arr[i];}
}' cat > prima.txt

program di atas merupakan program AWK pencari bilangan prima sampai 100.
Pertama perkalian n=3*j;m=5*j;o=7*j;p=9*j; bermaksud untuk mencari kelipatan dari bilangan tersebut, kenapa kok 3, 5, 7, 9 hal ini karena bilangan2 itu adalah bilangan ganjil dimana nanti akan membentuk kelipatan nya, misalkan 3 maka kelipatannya 3,6,9,12,15 dst hal ini bermaksud untuk menandai pada array bahwa tidak hanya bilangan genap saja yang ditandai dengan “0” tetapi kelipatan dari bilangan-bilangan 3, 5, 7, 9.
Kemudian setelah penandaan dilakukan maka melakukan incremenasi j ( j++ ) hal ini dimaksudkan untuk perkalian dari 3,5,7,9 akan dikalikan dengan 2,3,4,5,6,7,8,9 ... 100
Maka dalam array arr akan terisi “0” apabila bilangan itu adalah kelipatan dari 3,5,7,9
Setellah itu maka dilakukan pencetakan bilangan serta nilai dalam array. Hasil dari pencetakan di cetak dalam file prima.txt

Nb: letak file prima.txt terdapat di home folder pada linux directory anda

Wednesday, March 18

awk

AWK adalah bahasa pemrograman yang dibangun oleh Aho, Peter Weinberger, and Brian Kernigan pada tahun 1977. AWK digunakan untuk manipulasi data dengan program yang line yang singkat karena bahasa AWK tidak memerlukan suatu deklarasi untuk variabel,dan dibangun dengan data string dan number data type.


Struktur data AWK

BEGIN

pattern {action}

pattern {action}

.

.

pattern {action}

END


program AWK dapat memiliki pattern,action atau keduanya,default pattern biasnya tertulis secara singkat sedangkan action akan terapit oleh tanda kurung kurawal.


CARA MENJALANKAN AWK
• AWK ‘program’ input_file : 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.

Error dalam AWK

Untuk AWK error akan didiagnosa dengan pesan error,contoh:

awk '$3 == 0 [ print $1 }' emp.data

awk: syntax error near line 1

awk: bailing out near line 1 .


error ini hanya menjelaskan ada error dibaris pertama program, tetapi tidak dijelaskan error itu tentang apa tetapi untuk NAWK pesan error akan menjadi semakin jelas contoh:

nawk '$3 == 0 ( print $1 }' emp.data

nawk: syntax error at source line 1

context is

$3 == 0 >>> ( <<<

1 extra }

1 extra (

nawk: bailing out at source line 1

1 extra }

1 extra (

disini langsung dijelaskan bahwa kesalahannya adalah kekeliruan pemberian tanda { dengan tanda ( dibaris pertama.