Anda di halaman 1dari 4

Nama Avif Maulana Azis

NPM 140710180048

Judul tugas Tugas Awk

1) Dengan menggunakan perintah shell, buat dua kolom bilangan acak dalam satu
file, masing masing terdiri dari 50 baris !

Listing Program

1. for i in $(seq 1 50); do echo $[($RANDOM)] $[(RANDOM)];done > tugas1.cc

Penjelasan Listing dan Hasil Program

Listing program diatas berfungsi untuk membuat 2 kolom dan 50 baris yang berisi angka
– angka acak. Perintah for digunakan untuk mengulang variabel i dengan rentang dari 1
sampai 50. Seq digunakan untuk memasukan angka secara random. Do echo digunakan
untuk mengisi kolom 1 dan kolom 2 dengan angka random. Lalu keluarannya disimpan
dengan nama tugas1.cc.

Hasil Luaran

6136 10909
24448 28814
2728 14983
31294 7055
30873 12259
1125 1705
22236 10343
3937 11366
30402 23867
26460 32714
24731 6717
14441 3787
27285 28573
25052 22286
28827 26510
11446 392
9715 6178
25165 28189
28829 6085
22389 27796
24585 20743
27847 12116
3931 15886
10513 16742
14359 14291
19819 689
24791 1677
26124 27646
17826 23831
22171 8840
11678 6403
25156 13663
4682 25688
3092 9114
241 9669
28781 15994
32577 23666
24418 19198
12443 25180
18048 9969
29378 23263
11448 9627
6096 3980
390 11866
17125 30863
4794 6054
15001 17938
28603 32355
16918 559
31012 26329

2) Dengan menggunakan perintah awk dalam shell, cari rata-rata dari kolom pertama
dan kedua !

Listing Program

1. $ awk 'BEGIN{a=0;b=0} {a+=$1;b+=$2} END{print "Hasil Rata-rata",a/NR,b/NR}'


tugas1.cc>>tugas1.cc
2. $ awk 'BEGIN{a=0;b=0} {a+=$1;b+=$2} END{print "Hasil Rata-rata",a/NR,b/NR}'
tugas1.cc>>tugas1.cc

Penjelasan Listing dan Hasil Program

Listing program diatas berfungsi untuk membuat rata-rata dari masing-masing kolom
yang berisi angka – angka acak dalam file tugas1.cc. Perintah awal digunakan untuk
mendeklarasikan variabel berupa a yaitu sum dari kolom 1 dan b yaitu sum dari kolom 2.
Lalu mengeluarkan tuisan “Hasil Rata-rata” diikuti rata-rata kolom 1 dan kolom 2 dari
tugas1.cc. Lalu keluarannya disimpan dengan nama tugas1.cc.

Hasil Luaran

Hasil Rata-rata 18227.3 15487.3


3) Rata-rata dari jumlah kolom pertama dan kedua !

Listing Program

1. $ awk 'BEGIN{s=0;t=0}/Hasil Rata-rata/{next}{s+=$1;t+=$2}


{x=(s+t)/(NR*NF)}END{print "Rata-rata total=",x}' tugas1.cc>>tugas1.cc

Penjelasan Listing dan Hasil Program

Listing program diatas berfungsi untuk membuat rata-rata total dari hasil rata-rata kedua
kolom. Perintah awal digunakan untuk mendeklarasikan variabel berupa a yaitu sum dari
kolom 1 dan b yaitu sum dari kolom 2, dengan melewati tulisan “Hasil Rata-rata”. Lalu
menghitung rata-rata total dari rata-rata kolom 1 dan kolom 2 dari tugas1.cc. {next} tersebut
guna melewati baris hasil rata-rata. keluarannya yaitu tulisan rata-rata total = [Hasil
Perhitungan] Lalu disimpan dalam tugas1.cc.

Hasil Luaran

Rata-rata total= 11037.4


4) Selisih dari kolom pertama dan kolom kedua, disimpan dalam file !

Listing Program

1. $ awk '/Rata/{next}/Selisih/{next}{if($1>=$2){sel=$1-$2}else{sel=$2-$1}{print
"Selisih "NR" =", sel}}' tugas1.cc

Penjelasan Listing dan Hasil Program

Listing program diatas berfungsi untuk membuat selisih dari data random tugas1.cc.
Perintah awal digunakan untuk mengeluarkan tulisan selisih. Dilanjutkan dengan
perumusan selisinya yaitu jika kolom 1 lebih besar atau sama dengan 2 maka kolom 1
dikurang kolom 2, namun jika bukan maka kolom 2 dikurang kolom 1.{next} tersebut guna
melewati baris hasil rata-rata. Kemudian mengeluarkan tulisan “selisih [nomor baris] = [hasil
selisih]” yang datanya diambil dari data acak di file tugas1.cc.

Hasil Luaran

Selisih 1 = 4773 Selisih 26 = 19130


Selisih 2 = 4366 Selisih 27 = 23114
Selisih 3 = 12255 Selisih 28 = 1522
Selisih 4 = 24239 Selisih 29 = 6005
Selisih 5 = 18614 Selisih 30 = 13331
Selisih 6 = 580 Selisih 31 = 5275
Selisih 7 = 11893 Selisih 32 = 11493
Selisih 8 = 7429 Selisih 33 = 21006
Selisih 9 = 6535 Selisih 34 = 6022
Selisih 10 = 6254 Selisih 35 = 9428
Selisih 11 = 18014 Selisih 36 = 12787
Selisih 12 = 10654 Selisih 37 = 8911
Selisih 13 = 1288 Selisih 38 = 5220
Selisih 14 = 2766 Selisih 39 = 12737
Selisih 15 = 2317 Selisih 40 = 8079
Selisih 16 = 11054 Selisih 41 = 6115
Selisih 17 = 3537 Selisih 42 = 1821
Selisih 18 = 3024 Selisih 43 = 2116
Selisih 19 = 22744 Selisih 44 = 11476
Selisih 20 = 5407 Selisih 45 = 13738
Selisih 21 = 3842 Selisih 46 = 1260
Selisih 22 = 15731 Selisih 47 = 2937
Selisih 23 = 11955 Selisih 48 = 3752
Selisih 24 = 6229 Selisih 49 = 16359
Selisih 25 = 68 Selisih 50 = 4683

Anda mungkin juga menyukai