BAB I PENDAHULUAN A.
DESKRIPSI JUDUL Melakuk Melak ukan an peranc perancang angan an pengum pengumpul pulan an data data merup merupak akan an modul modul berisi berisi materi materi dasar dasar tentang tentang pemaham pemahaman an prosed prosedur ur pengumpul pengumpulan an data. Modul ini terdiri dari 3 (tiga) kegiatan belajar. belajar. Kegiatan belajar 1 berisi tentang memahami prosedur pengumpulan data/pemetaan data. Kegiatan belajar 2 berisi tentang mempersiapkan pokok-pokok kebut ke butuha uhan n data. data. Kegiata egiatan n belaj belajar ar 3 berisi berisi tentan tentang g melak melakuk ukan an perancangan perancangan pengumpulan data. Modull ini Modu ini digu diguna nak kan seba sebaga gaii baha bahan n ajar jar untu untuk k mengu enguas asai ai kompetensi Menguasai Algoritma Pemrograman Dasar. Denga Dengan n mengua menguasa saii modul modul ini pesert peserta a diklat diklat mampu mampu mengu menguas asai ai kompetensi Menguasai Algoritma Pemrograman Dasar.
B.
PRASYARAT Modul perancangan pengumpulan data merupakan modul lanjutan pemelajaran pemelajaran maka membutuhkan persaratan modul ang lain atau kemam emampu puan an lain lain ang ang haru harus s dimil dimilik ikii pese pesert rta a dikl diklat at sebe sebelu lum m mempelajari modul ini aitu modul mengoperasikan !" stand alone dengan sistem operasi berbasis #$% dan mengoperasikan peri&eral.
. PETUNJU PETUNJUK K PEN!!U PEN!!UNAAN NAAN M"DUL M"DUL #.
a.
Petun$u% &agi Peserta Di%lat !esert !eserta a diklat diklat diharapk diharapkan an dapat dapat berpera berperan n akti& akti& dan berinter berinteraks aksii dengan dengan sumber sumber belajar belajar ang dapat dapat digunaka digunakan' n' ka karen rena a itu harus harus memperhatikan hal-hal sebagai berikut
Lang%a'(lang%a' &ela$ar )ang *item+u' 1) !ersia !ersiapka pkan n alat bantu bantu berupa berupa kompu komputer ter 2) *acal *acalah ah denga dengan n seksa seksama ma uraian uraian materi materi pada pada setia setiap p ke kegia giata tan n belajar 3) "er "ermat matilah ilah langkah-la langkah-langka ngkah h ke kerja rja pada setiap kegiata kegiatan n belajar belajar sebe sebelu lum m meng menger erja jak kan' an' bila bila belu belum m jela jelas s tan tanak aka an pada pada instruktur +) ,ang ,anga an menghi nghidu dupk pka an komput puter sebelu belum m dise isetuju tujuii oleh leh instruktur ) apika apikan n kompute komputerr ang telah telah diguna digunakan kan
&.
Perleng%a+an )ang Harus Di+ersia+%an #una menunjang menunjang ke kesela selamata matan n dan ke kelanc lancaran aran tugas/ tugas/ pekerja pekerjaan an ang harus harus dilakuka dilakukan' n' maka maka persiapk persiapkanla anlah h seluruh seluruh perlengk perlengkapa apan n ang diperlukan. *eberapa perlengkapan ang harus dipersiapkan adalah lat tulis
,.
Hasil Pelati'an !esert eserta a diklat diklat mampu mampu membu membuat at prog progra ram m dalam dalam bahas bahasa a !asca ascall maupun maupun bahasa bahasa " dengan dengan merancang merancang algoritm algoritma a terlebih terlebih dahulu dahulu dan dan jik jika dipe diperl rluk ukan an meng menggu guna nak kan fowchart untuk untuk memba membantu ntu dalam pembuatan algoritma ang kompleks.
-.
Peran !uru
1
#uru ang akan mengajarkan modul ini hendakna mempersiapkan diri sebaik-ba sebaik-baikn ikna a aitu aitu mencak mencakup up aspek aspek strategi strategi pemelaja pemelajaran' ran' pengu engua asaan mate materri' pem pemilih iliha an metode tode'' alat lat bant bantu u media dia pemelajaran dan perangkat e0aluasi. #uru #uru harus harus meni meniap apka kan n ranca rancanga ngan n strat strategi egi pemela pemelajar jaran an ang ang mampu mampu meuju meujudk dkan an peser peserta ta diklat diklat terliba terlibatt akti& akti& dalam dalam pros proses es pencapai pencapaian/ an/ penguasa penguasaan an ko kompet mpetensi ensi ang telah telah diprogra diprogramka mkan. n. !enusunan !enusunan rancangan strategi pemelajaran mengacu pada kriteria unjuk kerja (K$K) pada setiap subkompetensi ang ada dalam #*!!. D. TUJU TUJUAN AKHIR AKHIR
Peserta diklat dapat melakukan m elakukan perancangan pengumpulan pengumpulan data.
2
A.
KE!IATAN BE BELAJAR
#.
Kegia Kegiatan tan Bela$a Bela$arr # Pema' Pema'am aman an +ro +rose* se*ur ur +en +engum gum+ul +ulan an *ata/ +emetaan *ata
&.
Tu$uan Kegiatan Pemela$aran etelah etelah mempelaja mempelajari ri ke kegiata giatan n belajar belajar ini peserta peserta diklat diklat mampu mampu mema memaha hami mi dan dan menj menjel elas aska kan n pros prosed edur ur peng pengum umpu pula lan n data data// peme pemeta taan an data data dan dan mamp mampu u men menus usun unn na a dala dalam m sebu sebua ah algoritma pemrograman serta menentukan peralatan bantu dalam melakukan pengumpulan data/pemetaan data.
,.
Uraian Materi
#0
Penge engerrtia tian Algo lgoritm itma !andan andangan gan menge mengenai nai ko kompu mputer ter sebag sebagai ai sebua sebuah h mesin mesin ang ang pintar4 adalah pandapat ang salah' karena komputer hanalah suat suatu u alat alat ang ang dibe diberi ri sera serang ngka kaia ian n peri perint ntah ah oleh oleh manu manusi sia a sehin sehingga gga dapat dapat mene meneles lesaik aikan an perma permasa salah lahan an seca secara ra cepat' cepat' akura ak urat' t' bahk bahkan an berula berulangng-ula ulang ng tanpa tanpa kenal enal lelah lelah dan bosa bosan. n. ekumpulan instruksi ang merupakan penelesaian masalah itu dina dinama maka kan n +rog +rogra ram. m. gar gar prog progra ram m dapat dapat dilaks dilaksan anak akan an oleh oleh komput ko mputer' er' program program tersebut harus ditulis ditulis dalam dalam suatu suatu bahasa bahasa ang ang dime dimeng nger erti ti oleh oleh kompu ompute terr. *aha *ahasa sa kompu ompute terr ang ang digunakan dalam menulis program dinamakan &a'asa +emrogr +emrograman aman.. $rutan $rutan langkah-la langkah-langk ngkah ah ang sistemati sistematis s untuk men menel eles esai aika kan n sebu sebuah ah masa masala lah h dina dinama maka kan n algoritma. algoritma . ,adi algo algori ritm tma a adala adalah h uruta urutan n logis logis penga pengambi mbilan lan keputus eputusan an untuk untuk pemecahan masalah. Kata logis merupakan kata kunci. 5angkahlangkah tersebut harus logis' ini berarti nilai kebenaranna harus salah. 5angkah-langkah ang tidak dapat dapat ditentuka ditentukan' n' benar atau salah. benar dapat memberikan hasil ang salah. ebagai contoh tinjau persoalan mempertukarkan isi dua buah bejana' dan *. *ejana berisi larutan ang berarna merah' sedangkan bejana * berisi air berarna biru. Kita ingin mempertukarkan isi kedua bejana itu sedemikian sehingga bejana berisi larutan berarna biru dan bejana bejana * berisi berisi larutan larutan berar berarna na merah. merah. da 2 algoritm algoritma a untuk menelesaikan permasalahan tersebut' aitu a)
lgoritma ang pertama' ada dua langkah (1) (2)
6uangkan uangkan larutan larutan dari bejana bejana ke dalam dalam bejana bejana * 6uangkan uangkan larutan larutan dari bejana bejana * ke dalam dalam bejana bejana
lgor lgorit itma ma tuk tukar isi isi beja bejana na di atas tas tida tidak k meng mengha hasi silk lkan an pertukaran pertukaran ang benar' karena langkah-langkahna langkah-langkahna tidak logis sehingga ang terjadi adalah percampuran keduana. b)
lgoritma ang kedua' ada 3 langkah (1) (2) (3)
6uangkan uangkan larutan larutan dari bejana bejana ke dalam dalam bejana bejana " 6uangkan uangkan larutan larutan dari bejana bejana * ke dalam dalam bejana bejana 6uangkan uangkan larutan larutan dari bejana bejana " ke dalam dalam bejana bejana *
eka ekara rang ng'' deng dengan an algo algori ritm tma a tuka tukarr isi isi beja bejana na ang ang suda sudah h diperbaiki ini' isi bejana dan * dapat dipertukarkan dengan benar. Dari Dari kedua edua cont contoh oh algo algori ritm tma a di atas atas dapa dapatt diamb diambil il 2 pesa pesan n penting. !ertama' algoritma harus benar. Kedua' algoritma harus berhen berhenti' ti' dan dan setela setelah h berhen berhenti' ti' algor algoritm itma a member memberii hasil hasil ang ang benar.
3
-0
Pengertian Pemrograman Komputer hanalah salah satu pemroses. gar dapat dilaksanakan oleh komputer' algoritma harus ditulis dalam notasi bahasa pemrograman sehingga dinamakan program. ,adi program adalah perujudan atau implementasi algoritma ang ditulis dalam bahasa pemrograman tertentu sehingga dapat dilaksanakan oleh komputer. !rogram ditulis dalam salah satu bahasa pemrograman' dan kegiatan membuat program disebut pemrograman (programmming). 7rang ang menulis program disebut pemrogram (programmer). 6iap-tiap langkah di dalam program disebut pernyataan atau instruksi. ,adi' program tersusun atas sederetan instruksi. *ila suatu instruksi dilaksanakan' maka operasi-operasi ang bersesuaian dengan instruksi tersebut dikerjakan oleh komputer.
10
Me%anisme Pela%sanaan Algoritma ole' Pemroses ecara garis besar komputer tersususn atas empat komponen utama piranti masukan' piranti keluaran' unit pemroses utama dan memori. $nit pemroses utama (Central Processing Unit – CPU) adalah otak4 komputer' ang ber&ungsi mengerjakan operasi-operasi dasar seperti operasi perbandingan' operasi perhitungan' operasi membaca dan operasi menulis. Memori adalah komponen ang ber&ungsi menimpan atau mengingatingat.8ang disimpan di dalam memeori adalah program (berisi operasi-operasi ang akan dikerjakan oleh "!$) dan data atau in&ormasi (sesuatu ang diolah oleh operasi-operasi). !iranti masukan atau keluaran (I/O e!ices) adalah alat ang memasukkan data atau program kedalam memori' dan alat ang digunakan komputer untuk mengkomunikasikan hasil-hasil akti0itasna. "ontoh piranti masukan adalah keyboar" mouse" scanner an isk. "ontoh alat keluaran adalah monit or' printer' plottter dan isk.
#ambar 1. Komponen-komponen $tama Komputer 20
Ba'asa Pemrograman aat ini kita dapat berkomunikasi dengan komputer dengan menggunakan bahasa ang kita mengerti. 9al ini dapat kita lakukan karena para ahli telah berhasil membuat kamus ang disebut dengan bahasa pemrograman ang akan menterjemahkan bahasa ang kita buat menjadi bahasa mesin' kamus ini disebut dengan om+iler. !roses penterjemahan bahasa manusia ke bahasa mesin disebut dengan kompilasi. dapaun bahasa-bahasa pemrograman tersebut antara lain Ba'asa Pemrograman :76; *%"
Ti+e !rosedural !rosedural
+
Di&uat 1<= 1<>=
5%! !rolog da mal6alk !ascal " "@@
:ungsional Deklarati& !rosedural *erorientasi 7bjek !rosedural !rosedural *erorientasi 7bjek
30
Dasar(*asar Algoritma
a0
Proses4 Instru%si *an A%si
1<= 1
!ada dasarna' sebuah algoritma merupakan deskripsi pelaksanaan suatu proses. lgoritma disusun oleh sederetan langkah instruksi ang logis. 6iap langkah instruksi tersebut melakukan suatu tindakan atau aksi. *ila suatu aksi dilaksanakan' maka sejumlah operasi ang bersesuaian dengan aksi itu dikerjakan oleh pemroses. B&ek dari pengerjaan suatu aksi dapat diamati dengan membandingkan keadaan pada saat aksi belum dimulai' t#' dan keadaan pada saat aksi selesai dikerjakan' t$. 6o 61
Keadaan sebelum aksi dikerjakan A%si Keadaan setelah aksi dikerjakan
ebagai contoh' tinjau kembali algoritma ang menggambarkan proses mempertukarkan larutan dari dua buah bejana dan *. !ada setiap pelaksanaan aksi kita amati keadaan aal dan keadaan akhirna. 6o
bejana berisi larutan berarna merah' bejana * berisi larutan berarna biru (bejana " masih kosong). (1) 6uangkan larutan dari bejana ke dalam bejana " 61 bejana kosong' bejana " berisi larutan berarna Merah 6o
bejana kosong' bejana * berisi larutan berarna biru. (2) 6uangkan larutan dari bejana * ke dalam bejana 61 bejana berisi larutan berarna biru' bejana B kosong 6o
bejana * kosong' bejana " berisi larutan berarna merah. (3) 6uangkan larutan dari bejana " ke dalam bejana * 61 *ejana * berisi larutan berarna merah' bejana sudah berisi larutan berarna biru (bejana " kosong). Keadaan aal dan keadaan akhir algoritma dapat dijadikan acuan bagi pemrogram dalam merancang suatu algoritma. Keadaan akhir mencerminkan hasil ang diinginkan dari sebuah keadaan aal. lgoritma berisi langkah-langkah pencapaian keadaan akhir dari keadaan aal ang dideCnisikan. 6ahap-tahap penusunan algoritma seringkali dimulai dari langkah ang global lebiha dahulu. 5angkah global ini diperhalus sampai ke langkah ang lebih rinci. !endekatan desain algoritma seperti ini dinamakan perancangan puncak turun (top%own esign). "ara pendekatan seperti ini angat berman&aat dalam membuat algoritma untuk masalah ang cukup rumit atau kompleks. &0
Stru%tur Dasar Algoritma
lgoritma berisi langkah-langkah penelesaian suatu masalah. 5angkah-langkah tersebut dapat berupa runtunan aksi' pemilihan aksi dan pengulangan aksi. Ketiga jenis langkah tersebut membentuk konstruksi suatu algoritma. ,adi' sebuah algoritma dapat dibangun dari 3 buah struktur dasar' aitu (1) untunan (se&uence) (2) !emilihan (selection) (3) !engulangan (repetition) ,0
Runtunan ebuah runtunan terdiri dari satu atau lebih instruksi. 6iap instruksi dikerjakan secara berurutan sesuai dengan urutan penulisanna. $rutan instruksi menentukan keadaan akhir dari suatu algoritma. *ila urutanna diubah' maka hasil akhirna mungkin juga akan berubah.
*0
Pemili'an da kalana sebuah instruksi dikerjakan jika kondisi tertentu dipenuhi. !enulisan pemilihan secara umum %& kondisi then A%si Dalam bahasa indonesia' i& berarti jika4 dan then artina maka4. Kondisi adalah persaratan ang dapat bernilai salah atau benar. ksi hana dilakukan jika kondisi bernilai benar. !erhatikan kata ang digarisbaahi' i& dan then merupakan kata kunci(keywors) untuk struktur pemilihan ini. Dalam kehidupan sehari-hari' kita sering menuliskan pernataan tindakan bila suatu persaratan dipenuhi. Misalna %& aki memperoleh juara kelas then ah akan membelikanna sepeda %& jalan panenan macet then mbil alternati& jalan dipati ukur truktur pemilihan i&-then hana memberikan satu pilihan aksi jika kondisi dipenuhi (bernilai benar)' dan tidak memberi pilihan aksi lain jika bernilai salah. *entuk pemilihan ang lebih umum ialah memilih satu dari dua buah aksi bergantung pada nilai kondisina %& kondisi then A%si # Blse A%si Blse artina kalau tidak4. *ila kondisi bernilai benar' aksi 1 akan dikerjakan' tetapi kalau tidak' aksi 2 ang akan dikerjakan. Misalna pada pernataan berikut %& hari hujan then !ergilah dengan naik beca Blse !ergilah dengan naik motor ,ika kondisi hari hujan4 bernilai benar' maka aksi pergilah dengan naik beca4 dilakukan' sebalikna aksi pergilah dengan naik motor4 akan dilakukan jika hari hujan4 tidak benar.
e0
Pengulangan
>
alah satu kelebihan komputer adalah kemampuanna untuk melakukan melakukan pekerjaan ang sama berulang kali tanpa mengenal lelah. truktur pengulangan disebut kalang ( loop)' dan bagian algoritma ang diulang (aksi) dinamakan badan kalang (loop boy ). 50
Stru%tur Program Ba'asa Pas,al *an Ba'asa
a0
Algoritmi% Algoritma namaEalgoritma Fkepala algoritma berisi penjelasan seperlunaG De%larasi Fberisi 0ariabel ang terlibatG Des%ri+si Fberisi detail algoritmaG
&0
Ba'asa Pas,al Program nama6+rogram7 Hdeklarasi labelI Hdeklarasi konstanI Hdeklarasi tipeI Hdeklarasi 0ariableI Hdeklarasi subprogramI Begin !ernataanJ !ernataan En*.
,0
Ba'asa 8in,lu*e 9st*io.': Hdeklarasi subprogramI Main;0 < Hdeklarasi 0ariabelI !ernataanJ Return =7 >
?0
@aria&el Lariabel (perubah) merupakan suatu nama ang meniratkan lokasi memori komputer ang dapat digunakan untuk menimpan nilai' dimana isina dapat diubah-ubah. Lariabel dapatdipandang sebagai abstraksi dari lokasi. 9asil e0aluasi dari 0ariabel adalah nilai dari 0ariabel itu. ;ilai dari suatu 0ariabel dapat diubah dengan assignment statement. ebuah assignment statement terdiri dari sebuah 0ariabel di sebelah kirina dan suatu ekspresi disebelah kananna. Algoritmi% Des%ri+si ,umlah *1 @ *2
Ba'asa Pas,al
Ba'asa
,umlah *1 @ *2
,umlah *1 @ *2
Lariabel jumlah diubah nilaina menjadi nilai dari ekspresi *1 @ *2 setelah die0aluasi. Dalam suatu program !ascal maupun "' setiap 0ariabel ang akan digunakan terlebih dahulu dideklarasikan' dimana setiap 0ariabel harus mempunai tipe. Deklarasi 0ariabel berguna untuk memberi in&ormasi kepada
?
compiler serta membantu programmer untuk berpikir secara jelas dan berencana. Algoritmi% De%larasi *1'*2'jumlahinteger
Ba'asa Pas,al @ar *1'*2'jumlahintegerJ
Ba'asa %nt *1'*2'jumlahJ
Aturan +enamaan suatu aria&el a)
b)
!ada bahasa pascal penulisan dengan huru& besar dan kecil tidak dibedakan' sedangkan pada bahasa " dibedakan ( Case 'ensiti). *oleh terdiri dari angka dengan sarat penulisanna setelah huru&' misal $mur31 epeda3
c)
6idak boleh mengandung spasi' terdiri dari unerscore (karakter E)' misal uhuEruang (boleh) uhu ruang (tidak boleh) uhuuang (boleh)
) e)
6idak boleh ada 2 atau lebih nama ang sama 6idak boleh menggunakan reser!e wor (kata kunci)' misal
0
Dalam pascal program' end' begin' 0ar' dll Dalam " Ninclude' 0oid' dll
Konstanta Lariabel ang mempunai nilai ang si&atna tidak bisa diubah' nilai ditentukan pada saat pendeCnisian. Misal Onama konstanta1P Onilai1PJ !hi 3.1+J
C0
Jenis/Ti+e Data !ada aktu suatu 0ariabel dideklarasikan' maka tipena sekaligus ditentukan. 6ipe dari suatu 0ariabel menatakan a) b)
,enis nilai ang dapat disimpan dalam lokasi memori untuk 0ariabel tersebut' (membatasi himpunan nilai-nilai ang dapat dipunai 0ariabel tersebut). ,enis operasi ang dapat dilakukan terhadap 0ariabel bersangkutan.
#=0 E%s+resi Matemati%a Bkspresi matematika adalah kalimat matematika ang akan memberikan nilai jika die0aluasi. a)
Bkspresi aritmatika uatu ekspresi matematika ang memberikan hasil bertipe angka jika die0aluasi. 7perator ang digunakan @' -' Q' /' (' ) "ontoh > Q @ ? 3? + Q > / 3 A
A
b)
Bkspresi 5ogika uatu ekspresi matematika ang memberikan hasil berupa nilai kebenaran (benar/salah' true/&alse). 7perator ang digunakan (1) (2)
!erbandingan ' O' P' O' P' OP 5ogika and' or
"ontoh 6rue and true true 6rue and &alse &alse (+O) and (P1) 6rue and true true
##0 Prioritas "+erator ebuah ekspresi matematika ang terdiri dari beberapa operator' beberapa operator die0aluasi terlebih dahulu dibandingkan operator ang lain. ebuah operator didahulukan berarti mempunai prioritas lebih tinggi. $rutan prioritas a) b)
7perator aritmatika 7perator logika dan perbandingan
"ontoh 2 @ O @ ? ? O 12 true $rutan prioritas operator aritmatika a) b)
Q' / @' -
,ika 2 operator mempunai prioritas sama' maka ang paling kiri didahulukan. "ontoh
? @ Q > R 1= (+ @ ) / (2 @ 1)
?
@ 3= R 1= < / 3
3?
-1=
2?
3
(Bkspresi ang terletak dalam tanda kurung harus didahulukan). Arti Aritmati%a @ di0 modulo
!enjumlahan !engurangan !embagian integer isa pembagian
Pas,al
@ di0
@ /
mod
S
Dalam bahasa pascal dan bahasa "' pernataan ang berkaitan dengan operasi dasar adalah sebagai berikut Pern)ataan %nput output !enugasan khir pernataan
Algoritmi% read rite
Pas,al read atau readln rite atau riteln J
:ungsi ang sering digunakan Pas,al
Arti
<
scan& print& J
Tr Trt 5n BUp
!o Trt 5og BUp
Kuadrat kar kuadrat 5ogaritma alami eksponensial
#-0 lo,'art Kadang-kadang perlu digambarkan bagaimana arus data dari algoritma ang sudah dibuat' terutama kalau algoritma sudah cukup kompleks. $ntuk itu algoritma dapat disajikan dalam bentuk Vochart. imbol ang diperlukan diantarana
N o 1.
,.
Sim&ol
Ma%na start / mulai end / selesai
2.
%nput/output
3.
Kondisi
+.
;ilai aal/inisialisasi
.
!erulangan &or
>.
!roses/penugas an
Rang%uman # 1) Dalam membuat suatu program komputer' menusun algoritma adalah langkah pertama ang harus dilakukan 2) Dalam membuat algoritma dapat digunakan Vochart
*.
Tugas # 1) !elajarilah uraian materi tentang prinsip algoritma 2) !elajarilah uraian materi tentang prinsip pemrograman 3) !elajarilah uraian materi tentang prinsip dari mekanisme oleh pemroses +) !elajarilah beberapa macam bahasa pemrograman ) !elajarilah uraian materi tentang dasar-dasar algoritma >) !elajarilah simbol-simbol dari Vochart
1=
e.
Tugas ormatiF # 1) ebutkan bahasa pemrograman proseduralW 2) Memahami sintaks program dengan menggunakan bahasa pascal dan bahasa "W 3) Mampu membuat algoritma mencari jumlah 3 buah bilangan bulat dengan VochartW +) Mampu membuat algoritma mencari hasil kali dari 2 buah bilangan dengan VochartW
F.
Kun,i Jaa&an ormatiF # 1) *ahasa pemrograman prosedural !ascal' "' "obol' *asic' :ortran. 2) intaks program dengan menggunakan bahasa pascal dan bahasa " adalah sebagai berikut Ba'asa Pas,al Program nama6+rogram7 Hdeklarasi labelI Hdeklarasi konstanI Hdeklarasi tipeI Hdeklarasi 0ariableI Hdeklarasi subprogramI Begin !ernataanJ !ernataan En*.
Ba'asa 8in,lu*e 9st*io.': Hdeklarasi subprogramI Main;0 < Hdeklarasi 0ariabelI !ernataanJ Return =7 > 3)
lgoritma mencari jumlah 3 buah bilangan bulat dengan Vochart Algoritma mencari jumlah 3 buah bilangan bulat De%larasi a'b'c integer jumlah integer Des%ri+si ead(a'b'c) ,umlah a @ b @ c Xrite(jumlah) lo,'artn)a
11
#ambar 2. :lochart lgoritma Mencari ,umlah 3 *uah *ilangan *ulat +) lgoritma mencari hasil kali dari dua buah bilangan dengan Vochart Algoritma mencari hasil kali dari dua buah bilangan De%larasi a'b integer hasil integer Des%ri+si ead(a'b) hasil a Q b Xrite(hasil)
lo,'artn)a
12
#ambar 3 :lochart lgoritma lgoritma Mencari 9asil Kali dari Dua *uah *ilangan g.
Lem&ar Ker$a # Alat *an Ba'an eperangkat komputer ang telah diinstal dengan Microso&t Lisio dan program turbo pascal dan turbo ". Kese'atan *an Keselamatan Ker$a 1) *erdoYalah sebelum memulai kegiatan belajar 2) *acalah dan pahami petunjuk praktikum pada setiap lembar kegiatan belajar 3) *ila telah selesai matikan komputer sesuai dengan prosedur Lang%a' Ker$a 1) Kumpulkan data ang diperlukan' kemudian coba analisis data ang ada dan kelompokkan sesuai dengan jenis datana. 2) 6entukan 0ariabel dan jenis datana sesuai dengan tipe datana. 3) nalisis struktur algoritma dari data ang ada' tentukan data ang ada menggunakan runtutan' pemilihan atau pengulangan. +) *uat Vochartna berdasarkan hasil dari analisis struktur algoritma menggunakan program bantu untuk membuat Vochart aitu Microso&t Lisio. ) plikasikan Vochart dalam bahasa pemrograman. *ahasa pemrograman ang dipakai aitu bahasa pascal atau bahasa ". >) !elajari perbedaan penulisan dan beberapa operator pada bahasa !ascal maupun bahasa ".
13
-.
Kegiatan Bela$ar - Mem+ersia+%an +o%o%(+o%o% %e&utu'an *ata
a.
Tu$uan Kegiatan Pemela$aran etelah mempelajari kegiatan belajar ini peserta diklat mampu menganalisa data sehingga dapat mengidentiCkasna menjadi beberapa tipe data sesuai dengan si&at datana.
&.
Uraian materi -
#0
Ti+e Data Dasar
a0
Ti+e *ata &ilangan &ulat ;ama tipe ange nilai
integer -32.?>A sd 32.?>?
7perator binar
@' -' Q / Mod' di0
integer U integer integer integer U integer integer U integer integer
real
Keterangan
Mod adalah sisa hasil bagi dari dua bilangan ang bertipe integer Di0 adalah hasil bagi dari dua bilangan ang bertipe integer
"ontoh 1 di0 3 1 mod 3 = + di0 + 11 + mod + 1 7perator unar - integer &0
integer
Ti+e *ata real ;ama tipe ange nilai
real 2.
7perator @' -' Q' /
,0
Ti+e *ata %ara%ter/sim&ol ;ama tipe ange nilai
*0
real U real real real real U integer real integer U real
char 1 simbol/karakter dalam tanda petik
Ti+e *ata string ;ama tipe string ange nilai rangkaian karakter dalam tanda petik !anjang string = s/d 2 "ontoh
Zuhu ruangan = "Y
7perator
@ string U string
"ontoh ZsaaY @ Z pergiY
Zsaa
1+
string
pergiY
e0
Ti+e *ata &oolean ;ama tipe ange nilai
*oolean 6rue dan :alse
7perator
*inar
or' and' Uor boolean U boolean boolean $nar not boolean boolean ;ot true &alse
6abel Kebenaran P G 6rue 6rue 6rue :alse :als 6rue e :als :alse e -0
P an* G 6rue :alse :alse
P or G 6rue 6rue 6rue
P or G :alse 6rue 6rue
:alse
:alse
:alse
Pemili'an / Kontrol Program alah satu kemampuan komputer dalah dapat melakukan proses pemilihan dari beberapa alternati& sesuai dengan kondisi ang diberikan. Dalam persoalan sehari-haripun hampir selalu ada kondisi dimana kita harus memilih diantara alternati&-alternati& ang ada. ebagai contoh' seorang sisa memperoleh nilai ?. pakah dengan nilai tersebut sisa itu lulusW ,ika batas kelulusan minimal >= maka sisa tersebut lulus ujian. ,ika kurang dari >= maka sisa tersebut tidak lulus ujian. *ahasa pemrograman seperti pascal maupun " juga mendukung pernataan bersarat. 6ata cara penulisanna tersaji berikut ini Algoritmi% %& (kondisi) then aksi end i& %& (kondisi) then aksi1 else aksi2 end i& !ernataan majemuk
Pas,al %& (kondisi) then %& (kondisi) aksiJ aksiJ %& (kondisi) then aksi1 else aksi2J
%& (kondisi) aksi1J else aksi2J
begin ..end
F..G
*aik aksi' aksi1' maupun aksi2 bisa merupakan pernataan tunggal maupun pernataan majemuk. elain itu' bila kondisi bertipe ordinal' seperti integer' bte atau ang lain (kecuali real atau string)' bisa digunakan pernataan dibaah ini Pas,al Algoritmi% case (nama) Olabel1Pak si1 Olabel1Pak si2 .
case (nama) o& Olabel1Paksi 1J
1
sitch (nama) F "ase label1aksi1J breakJ "ase label2aksi2J breakJ
Olabel1Paks Olabel1Paksi i; 2J else aksi[ . endcase Olabel1Paksi ;J else aksi[J endJ 10
. "ase label;aksi;J breakJ de&ault aksiUJG
Perulangan/ Loo+ alah satu kelebihan komputer dibandingkan dengan manusia adalah kemempuanna untuk melaksanakan suatu instruksi berulangkali tanpa mengenal lelah dan bosan. Didalam algoritma' pengulangan atau kalang (repetition atau loop) dapat dilakukan sejumlah kali' atau sampai kondisi berhenti pengulangan tercapai.
a0
Stru%tur +engulangan truktur pengulangan terdiri atas dua bagian
&0
Kondisi pengulangan' aitu ekspresi boolean ang harus dipenuhi untuk melakukan pengulangan. Kondisi ini ada ang dinatakan secara eksplisit oleh pemrogram atau dikelola sendiri oleh komputer ( implisit ). *adan (boy ) pengulangan' aitu satu atau lebih aksi ang akan diulang.
Stru%tur HILE(D" *entuk umum struktur hile-do adalah Xhile OkondisiP do ksi endhile !enjelasan ksi akan dilaksanakan berulangkali sepanjang OkondisiP boolean masih tetap bernilai true. ,ika OkondisiP bernilai alse' badan pengulangan tidak akan dilaksanakan. !engulangan selesai.
,0
Stru%tur REPEAT(UNTIL *entuk umum struktur repeat-until adalah epeat aksi $ntil OkondisiP !enjelasan ;otasi ini mendasarkan pengulangan pada kondisi berhenti. ksi didalam badan kalang diulang sampai kondisi berhenti boolean bernilai true. Dengan kata lain' jika kondisi berhenti masih salah' pengulangan masih terus dilakukan. Karena pengulangan harus berhenti' maka didalam badan kalang harus ada aksi ang mengubah harga kondisi. truktur re+eat(until memiliki makna ang sama dengan 'ile( *o' dan dalam beberapa masalah kedua struktur tersebut
1>
komplemen satu sama lain. ;amun ada perbedaan ang mendasar diantara keduana. !ada struktur re+eat(until' aksi dilakukan minimal satu kali' karena kondisi pengulangan diperiksa pada akhir struktur' sedangkan pada struktur 'ile(*o kondisi pengulangan diperiksa pada aal struktur sehingga memungkinkan pengulangan tidak akan pernah dilaksanakan bila kondisi pengulangan bernilai &alse. *0
Stru%tur "R truktur For digunakan untuk menghasilkan pengulangan sejumlah kali tanpa penggunaan kondisi apapun. truktur ini menebabkan aksi diulangi sejumlah kali (tertentu). *entuk umum struktur :7 ada 2 macam menaik ( ascening) atau menurun (escening). :7 menaik
&or peubah nilaiEaal to nilaiEakhir do ksi end&or
Keterangan
ksi akan dilakukan berulang-ulang selama peubah diberi nilai dari nilaiEaal s/d nilaiEakhir dengan step1. !eubah bertipe integer atau karakter ;ilaiEaal' nilaiEakhir hasilna bertipe sama dengan tipe peubah ;ilaiEakhir P nilaiEaal' jika tidak maka aksi tidak akan dilakukan ksi satu aksi atau beberapa aksi dalam blok &egin en*.
:7 menurun
&or peubah nilaiEakhir donto nilaiEaal do ksi Bnd&or
Keterangan
,.
;ilaiEakhir harus lebih besar atau sama dengan nilaiEaal. ,ika nilaiEakhir lebih kecil dari nilaiEaal' maka badan pengulangan tidak dimasuki. !ada aalna' peubah diinisialisasi dengan nilaiEakhir. ;ilai peubah secara otomatis berkurang satu setiap kali aksi diulangi' sampai akhirna nilai peubah sama dengan nilaiEaal !eubah bertipe integer atau karakter ,umlah pengulangan ang terjadi adalah nilaiEaalnilaiEakhir @1.
Rang%uman Dengan mengetahui tipe data dasar pada suatu bahasa pemrograman tertentu maka diharapkan peserta dapat mengidentiCkasi suatu data sesuai dengan tipe datana. Dalam melakukan pemilihan dan perulangan peserta diharapkan mampu memilih jenis-jenis pemilihan dan perulangan ang sesuai.
1?
*.
Tugas 1) 2) 3)
e.
!elajarilah uraian materi tentang tipe data dasar !elajarilah uraian materi tentang pemilihan !elajarilah uraian materi tentang perulangan
Tes ormatiF 1)
6entukan jenis data dari data ang terdapat pada 0ariabel dibaah ini a) b) c) d) e)
2) 3) +) F.
;ama sho&a' \aki' imam' mira lamat asal jogja' solo' semarang tatus Menikah a' tidak *erat badan 23.3' +=.A' =.?' 1.= $mur 23' +' >' 1' 3' ?
*uatlah algoritma dan Vochartna untuk menentukan bilangan terbesar antara dua bilangan bulatW ebutkan 3 macam notasi struktur pengulangan W *uatlah algoritma dan Vochartna untuk mencetak bilangan 1 sampai + menggunakan perulangan W
Kun,i $aa&an tes FormatiF 1)
6ipe Data dari masing-masing 0ariabel adalah sebagai berikut a) b) c) d) e)
2)
6ipe 6ipe 6ipe 6ipe 6ipe
data 0ariabel nama adalah string data 0ariabel alamat asal adalah string data 0ariabel status menikah adalah boolean data 0ariabel berat badan adalah real data 0ariabel umur adalah integer
lgoritma untuk menentukan bilangan terbesar antara dua bilangan bulat Algoritma ma%simum Fmenentukan nilai terbesar antara 2 buah bilangan bulatG De%larasi ' * integer Des%ri+si read('*) i& (P*) then rite(Z*ilangan terbesar adalah Y) else rite(Z*ilangan terbesar adalah Y *) endi& lo,'art
1A
#ambar + :lochat untuk Menentukan *ilangan 6erbesar antara Dua *ilangan *ulat 3)
6iga Macam notasi struktur pengulangan aitu a)
truktur X9%5B-D7 *entuk umum struktur hile-do adalah Xhile OkondisiP do ksi Bndhile
b)
truktur B!B6-$;6%5 *entuk umum struktur repeat-until adalah epeat aksi $ntil OkondisiP
c)
truktur :7 :7 menaik &or peubahnilaiEaal to nilaiEakhir do ksi end&or :7 menurun &or peubah nilaiEakhir donto nilaiEaal do end&or
+)
ksi
lgoritma untuk mencetak menggunakan perulangan a) :or loop Algoritma cetakEangka De%larasi % integer Des%ri+si :or i1 to + do Xrite(i) Bnd&or
1<
bilangan
1
sampai
+
lo,'art
#ambar :lochat Mencetak *ilangan 1 sampai + dengan :or 5oop
b) Xhile loop Algoritma cetakEangka De%larasi % integer Des%ri+si %1 Xhile(iO+)do Xrite(i) %i@1 Bndhile lo,'art
#ambar >
2=
:lochat Mencetak *ilangan 1 sampai + dengan Xhile 5oop !erulangan c) epeat until loop Algoritma cetakEangka De%larasi % integer Des%ri+si %1 repeat Xrite(i) %i@1 $ntil(iP+) Bndrepeat lo,'art
#ambar ? :lochat Mencetak *ilangan 1 sampai + dengan epeat $ntil g.
Lem&ar Ker$a Alat *an Ba'an eperangkat komputer ang telah diinstal dengan Microso&t Lisio dan program turbo pascal dan turbo ". Kese'atan *an Keselamatan Ker$a 1) *erdoYalah sebelum memulai kegiatan belajar 2) *acalah dan pahami petunjuk praktikum pada setiap
lembar
kegiatan belajar 3) *ila telah selesai matikan komputer sesuai dengan prosedur Lang%a' Ker$a 1) !elajari dan data ang ada dan tentukan 0ariabel dengan tipe data ang sesuai.
21
2) !ilihlah jenis pemilihan kondisi atau perulangan ang sesuai dengan masalah atau data 3) *uatlah Vochart dengan microso&t 0isio +) plikasikan dalam program menggunakan turbo pascal dan turbo "
22
1.
Kegiatan &ela$ar 1 Mela%u%an +eran,angan +engum+ulan *ata
a.
Tu$uan Kegiatan Pemela$aran !eserta diklat mampu Melakukan perancangan pengumpulan data
&.
Uraian materi 1
#0
Stack /Tum+u%an
alah satu konsep ang sangat berguna di dalam ilmu komputer adalah satu bentuk struktur data ang disebut tumpukan ( stack ). ecara sederhana' tumpukan bisa diartikan sebagai suatu kumpulan data ang seolah-olah ada data ang diletakkan di atas data ang lain. atu hal ang perlu diingat baha dalam stack bisa menambah (menisipkan) data' dan mengambil (menghapus) data leat ujung ang sama' ang disebut sebagai ujung atas tumpukan (top o stack). tack merupakan suatu senarai (list) ang mempunai si&at masuk terakhir keluar pertama (last in rst out R 5%:7)
#ambar A. %lustrasi tack
23
"+erasi +a*a tum+u%an da dua operasi dasar ang bisa dilaksanakan pada sebuah tumpukan' aitu operasi menisipkan data atau mem push data dan operasi menghapus data atau mem pop data. "ontoh pemakaian tumpukan dalam membalik kalimat dengan melakukan pembalikan perkata' sebagai contoh' jika kalimat ang dibaca adalah *B5, !"5 D59 M$D9 D; MB;8B;;#K; etelah dibalik' maka kalimat diatas menjadi ;K#;;B8;BM ;D 9D$M 95D 5"! ,5B* -0
Queue / Antrian
ntrian merupakan satu jenis struktur data ang sering digunakan untuk mensimulasikan keadaan dunia nata. ntrian adalah suatu kumpulan data ang mana penambahan elemen hana bisa dilakukan pada suatu ujung (disebut dengan sisi belakang atau rear)" dan penghapusan (pengambilan elemen) dilakukan leat ujung lain (disebut dengan sisi depan atau ront). %stilah ang digunakan apabila seseorang masuk dalam sebuah antrian adalah Enqueue. edangkan istilah ang sering dipakai bila seseorang keluar dari antrian adalah Dequeue. 6umpukan menggunakan prinsip masuk terakhir keluar pertama4 atau 5%:7 ( *ast In +irst Out )' maka pada antrian prinsip ang digunakan adalah masuk pertama keluar pertama4 atau :%:7 ( +irst In +irst Out ). Dengan kata lain' urutan keluar elemen akan sama dengan urutan masukna. ntrian banak kita jumpai dalam kehidupan seharihari. Mobil-mobil ang antri membeli karcis di pintu jalan tol akan membentuk antrianJ orang-orang ang membeli karcis untuk menaksikan Clm akan membentuk antrian' dan contoh-contoh lain ang banak dijumpai dalam kehidupan sehari-hari. 10
Tree / Po'on
6ree adalah bentuk struktur data tak linear ang mempunai si&atsi&at dan ciri-ciri khusus. truktur ini biasana digunakan untuk menggambarkan hubungan ang bersi&at hirarkis antara elemenelemen ang ada. "ontoh paling sederhana ang bisa kita lihat dalam kehidupan sehari-hari' khususna dalam keluarga adalah silsilah keluarga. #ambar di baah menunjukkan puhon silsilah keluarga bdul KholiT sampai dengan cucuna. !ohon seperti gambar di baah disebut dengan linear chart dimana setiap elemen bisa mempunai lebih dari dua buah cabang.
#a m#ambar <. "ontoh ;ata :ungsi 6ree Istila'(Istila' Dasar
2+
ecara sederhana pohon bisa dideCnisikan sebagai kumpulan elemen ang salah satu elemenna disebut dengan a%ar (root )' dan sisa elemen ang lain (ang disebut sim+ul) terpecah menjadi sejumlah menjadi himpunan ang saling tidak berhubungan satu sama lain' ang disebut dengan subpohon (subtree)' atau juga disebut dengan cabang. ,ika kita lihat pada setiap subpohon' maka subpohon inipun juga mempunai akar dan sub-subpohonna masing-masing. Dalam gambar di atas akarna adalah bdul KholiT' ang mempunai dua subpohon. ubpohon ang pertama berakar pada rani' dan subpohon ang kedua berakar pada i&Yah. elanjutna jika kita lihat pada subpohon rani' maka subpohon ini juga mempunai tiga buah subpohon' aitu ang berakar pada ho&a' Mila dan Didin. *egitu juga dengan subpohon ang berakar pada i&Yah' maka subpohon ini juga mempunai dua buah subpohon' aitu ang berakar pada %da dan lin.
#ambar 1=. %lustrasi :ungsi 6ree ,ika kita perhatikan gambar tree di atas' maka akar dinatakan sebagai tinkat = dan simpul-simpul lainna dinatakan bertingkat 1 lebih tinggi dari aahna. elain deCnisi di atas ada juga beberapa buku ang menatakan baha ting%at (le!el) suatu simpul ditentukan dengan pertama kali menentukan akar sebagai bertingkat 1. jika suatu simpul dinatakan sebagai tingkat ;' maka simpul-simpul ang merupakan anakna dikatakan berada dalam tingkat ;@1. elain tingkat' juga dikenal istilah *era$at (egree) dari suatu simpul. Derajat suatu simpul dinatakan sebagai banakna anak atau turunan dari simpul tersebut. Daun juga sering disebut dengan sim+ul luar (e,ternal noe). ehingga simpul lain ' kecuali akar' juga sering disebut dengan sim+ul *alam (internal noe). Tinggi (height ) atau %e*alaman (epth) dari suatu pohon adalah tingkat maksimum dari simpul dalam pohon tersebut dikurangi dengan 1. An,estor suatu simpul adalah semua simpul ang terletak dalam satu jalur dengan simpul tersebut dari akar sampai simpul ang ditinjau. Hutan (orest) adalah kumpulan sejumlah pohon ang tidak saling berhubungan. 20
Graph
#raph bisa dibaangkan sebagai kumpulan obek atau akti0itas' sebagai contoh' rute bis kota dari satu terminal ke terminal lain' rute perjalanan pak pos pada saat ia mengantar surat dari satu rumah ke rumah lain' dan contoh-contoh lain ang bisa disajikan sebagai suatu graph. "ontoh kedua diatas merupakan contoh
2
klasik dengan teori graph ang lebih dikenal dengan tra!elling salesman problem atau shortest path problem" ang pada prinsipna mencari jalur terpendek dari semua tempat ang harus dipenuhi' sehingga bisa menghemat aktu' tenaga' maupun biaa. #raph secara umum bisa dideCnisikan sebagai kumpulan titik (noes atau !ertices) dan garis ( arcs atau eges). Karena garis selalu diaali dengan suatu titik dan diakhiri pada titik ang lain' maka garis bisa dituliskan sebagai pasangan antara dua titik.
,.
Rang%uman 1 truktur data ang digunakan pada algoritma pemrograman ada beberapa metode' aitu stack' Tueue' tree' graph. !emilihan metode ang digunakan sangat bergantung dengan data' baik dalam proses pengumpulan maupun penimpananna.
*.
Tugas 1 #0 -0 10 20
e.
!elajarilah uraian materi tentang prinsip dan &ungsi stack !elajarilah uraian materi tentang prinsip dan &ungsi antrian (&ueue) !elajarilah uraian materi tentang prinsip dan &ungsi pohon (tree ) !elajarilah uraian materi tentang prinsip dan &ungsi graph
Tes ormatiF 1 #0
Diberikan data sebagai berikut ang diimplementasikan pada suatu stack atau antrian a) Data =A1A22A2A<? push pop pop b) Data 8ogakarta 5akukan operasi push Kota ! push elajar ] push *ud push aa pop pop • • • • • •
c) Data melakukan kebaikan 5akukan operasi pop pop pop push a • • • •
d) Data *elajar ang ajin 5akukan operasi push biar sukses push . pop • • •
2>
•
pop
e) Data 6eknik in&ormatika 5akukan operasi pop pop pop pop push oke • • • • •
2)
Diberikan data sebagai berikut ang diimplementasikan pada suatu &ueue atau antrian a) Data sho&atul 5akukan operasi BnTueue ma DeTueue DeTueue BnTueue iuun BnTueue da ri b) Data sekolah 5akukan operasi DeTueue BnTueue jangan DeTueue c) Data uni0ersi 5akukan operasi BnTueue tas DeTueue DeTueue • • •
• • •
3)
,elaskan dan sebutkan komponen dari tree ang termasuk tingkat (le!el)' derajat (egree)' daun (lea )' tinggi (height ) atau kedalaman (epth) dan ancestor pada gambar tree dibaah ini
#ambar 11. #ambar oal 3)
2?
+) F.
pa ang anda ketahui tentang graph dan bagaimana prinsip dari graph secara umum W
Kun,i Jaa&an tes FormatiF 1 1)
7perasi pop adalah operasi menghapus data pada suatu stack. 7perasi push adalah operasi menisipakan data pada stack. a) Data =A1A22A2A<?) 7perasi push () 7perasi pop 7perasi pop
=A1A22A2A<< =A1A22A2A<<>? =A1A22A2A<<>? =A1A22A2A<<>? =A1A22A2A<<>?
b) Data ogakarta 7perasi push(Kota !) 8ogakarta Kota ! 7perasi push(elajar ]) 8ogakarta Kota !elajar ] 7perasi push(*ud) 8ogakarta Kota !elajar ]*ud 7perasi push(aa) 8ogakarta Kota !elajar ]*udaa 7perasi pop 8ogakarta Kota !elajar ]*uda 7perasi pop 8ogakarta Kota !elajar ]*uda c) Data melakukan kebaikan melakukan kebaika 7perasi pop melakukan kebaik 7perasi pop melakukan kebai 7perasi pop melakukan keba 7perasi pop melakukan kebaa 7perasi push(a) d) Data *elajar ang ajin 7perasi push(biar sukses) *elajar ang ajinbiar 7perasi push(.) *elajar ang ajinbiar 7perasi pop *elajar ang ajinbiar 7perasi pop *elajar ang ajinbiar
sukses sukses. sukses sukses..
e) Data 6eknik in&ormatika 6eknik in&ormatik 7perasi pop 6eknik in&ormati 7perasi pop 6eknik in&ormat 7perasi pop 6eknik in&orma 7perasi pop 7perasi push(oke) 6eknik in&ormaoke 2)
ntrian (&ueue) adalah suatu kumpulan data ang mana penambahan elemen hana bisa dilakukan pada suatu ujung (disebut dengan sisi belakang atau rear)" dan penghapusan (pengambilan elemen) dilakukan leat ujung lain (disebut dengan sisi depan atau ront). Enqueue adalah %stilah ang digunakan apabila seseorang masuk dalam sebuah antrian.
2A
edangkan Dequeue adalah istilah ang sering dipakai bila seseorang keluar dari antrian . a) Data sho&atul 7perasi enTueue(ma) sho&atulma 7perasi deTueue ho&atulma 7perasi deTueue o&atulma 7perasi enTueue(iuun) o&atulmaiuun 7perasi enTueue(da ri) o&atulmaiuunda ri b) Data sekolah 7perasi deTueue ekolah 7perasi enTueue(jangan) ekolahjangan 7perasi deTueue kolahjangan c) Data uni0ersi uni0ersitas 7perasi enTueue(tas) ni0ersitas 7perasi enTueue i0ersitas 7perasi deTueue • • •
3)
6ree adalah bentuk struktur data tak linear ang mempunai si&at-si&at dan ciri-ciri khusus.
#ambar 12. #ambar ,aaban oal 3) a) tingkat (le!el)
tingkat =/1
tingkat 1/2 *' " tingkat 2/3 D' B' :' #' 9 tingkat 3/+ %' ,' K' 5' M tingkat +/ ;' 7 b) derajat (egree) impul mempunai derajat 2 impul * mempunai derajat 2 impul " mempunai derajat 3 c) daun (lea ) impul :' 9' %' ,' K' 5' ;' 7 berderajat = d) tinggi (height ) atau kedalaman ( epth) semua daun ang berakar pada mempunai tinggi atau kedalaman +. e) -ncestor dari simpul 5 adalah adalah ' " dan #
2<
+)
g.
#raph secara umum bisa dideCnisikan sebagai kumpulan titik (noes atau !ertices) dan garis ( arcs atau eges). Karena garis selalu diaali dengan suatu titik dan diakhiri pada titik ang lain' maka garis bisa dituliskan sebagai pasangan antara dua titik. !rinsip graph secara umum adalah mencari jalur terpendek dari semua tempat ang harus dipenuhi' sehingga bisa menghemat aktu' tenaga' maupun biaa.
Lem&ar Ker$a1 Alat *an Ba'an eperangkat alat tulis Kese'atan *an Keselamatan Ker$a 1) 2) 3)
*erdoYalah sebelum memulai kegiatan belajar *acalah dan pahami petunjuk praktikum pada setiap lembar kegiatan belajar *ila telah selesai matikan komputer sesuai dengan prosedur
Lang%a' Ker$a 1) 2)
!elajari dan analisis data ang ada kemudian pelajari jika data tersebut menggunakan struktur data stack' Tueue' tree dan graph !elajari beberapa istilah ang ada pada struktur data stack' Tueue' tree dan graph.
3=
BAB III E@ALUASI A.
PERTANYAAN 1. *uatlah algoritma' Vochart kemudian translasikan kedalam bahasa pascal dan " kasus berikut "arilah kon0ersi suhu dari "elcius menjadi eamur' :ahrenheit dan Kel0in 2. *uatlah algoritma dan Vochart dari kasus Kon0ersikan nilai angka menjadiberikut nilai huru& dengan ketentuan sebagai berikut Nilai ang%a Nilai HuruF =-2= B 21-+= D +1->= " >1-A= * A1-1==
B.
KUNI JAABAN E@ALUASI #. Analisis umus kon0ersi dari "elcius menjadi eamur' :ahrenheit' dan Kel0in adalah sebagai berikut eamur +/ celcius :ahrenheit
31
#ambar 13. :lochart ,aaban oal 1 Ba'asa Pas,al !rogram kon0ersiEsuhuJ $ses incrtJ Lar " integerJ ' &' k realJ *egin Xrite(ZMasukkan suhu derajat celcius Z)Jreadln (c)J +/@cJ : =)then nilaiEhuru& Y"Y Blse %&(nilaiP>=)and(nilaiOA=)then nilaiEhuru& Y*Y Blse nilaiEhuru& ZY Bndi& Xrite(nilaiEhuru&)
32
lo,'art
#ambar 13. :lochart ,aaban oal 2
.
KRITERIA KELULUSAN S%or As+e% ;#( #=0
Bo&ot
oal 1
+
oal 2
+
Ketepatan aktu
2 Nilai A%'ir
Nilai
Keterangan arat lulus nilai minimal ?= dan skor setiap aspek minimal ?
Kategori kelulusan ?= R ?< Memenuhi kriteria mininal. Dapat bekerja dengan bimbingan. A= R A< Memenuhi kriteria minimal. Dapat bekerja tanpa bimbingan. <= R 1== Di atas kriteria minimal. Dapat bekerja tanpa bimbingan. BAB I@ PENUTUP
33