tipe data dan statement control

65
BAB IV TIPE DATA DAN STATEMENT CONTROL Tujuan Tujuan dari pratikum tipe data dan statement control ini adalah: 1. Memahami dasar – dasar pemrograman pascal dan C++. 2. Memahami penggunaan statement control khususnya if…, if…else, switch. 3. Memahami penggunaan tipe data yang digunakan secara efisien. 4. Memahami manipulasi string. 5. Memahami dan bisa membuat program modul – modul yang berbentuk suatu fungsi. 6. Memahami dan bisa menggunakan passing parameter dalam fungsi dan procedure. 4.2 Tinjauan Pustaka 4.2.1 Tipe Data Dalam Pascal Tipe sebuah objek menentukkan himpunan nilai yang dapat dimilikinya dan operasi yang dapat dilakukan pada objek tersebut. Tipe atau jenis data dalam turbo pascal dapat dibagi menjadi 6, yaitu: 1. Tipe Simple

Upload: komang-isabella-anasthasia

Post on 03-Jul-2015

175 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: tipe data dan statement control

BAB IV

TIPE DATA DAN STATEMENT CONTROL

4.1 Tujuan

Tujuan dari pratikum tipe data dan statement control ini adalah:

1. Memahami dasar – dasar pemrograman pascal dan C++.

2. Memahami penggunaan statement control khususnya if…, if…else,

switch.

3. Memahami penggunaan tipe data yang digunakan secara efisien.

4. Memahami manipulasi string.

5. Memahami dan bisa membuat program modul – modul yang

berbentuk suatu fungsi.

6. Memahami dan bisa menggunakan passing parameter dalam fungsi

dan procedure.

4.2 Tinjauan Pustaka

4.2.1 Tipe Data Dalam Pascal

Tipe sebuah objek menentukkan himpunan nilai yang dapat dimilikinya

dan operasi yang dapat dilakukan pada objek tersebut. Tipe atau jenis data dalam

turbo pascal dapat dibagi menjadi 6, yaitu:

1. Tipe Simple

Tipe simple atau tipe sederhana adalah tipe yang dalam perubahannya

hanya dimungkinkan untuk menyimpan sebuah nilai data. Tipe simple ini dapat

dibagi lagi menjadi 2 bagian, yaitu:

a. Tipe Ordinal

Tipe ordinal merupakan suatu tipe yang mempunyai jumlah

kemungkinan data yang pasti. Dalam tipe data ordinal terdapat 9 tipe data

lagi, yaitu integer, shortint, longint, byte, word, boolean, char, subrange

dan enumerated. Tipe data subrange dan enumerated ini merupakan type

data yang dapat didefinisikan sendiri.

Page 2: tipe data dan statement control

Tipe Integer

Tipe integer merupakan nama tipe dari bilangan bulat atau bilangan yang tidak

memiliki titik desimal. Tipe data yang termasuk di dalamnya adalah shortint,

integer, longint, byte dan word. Adapun jangkauan nilai dan ukuran memori dapat

dilihat pada tabel dibawah ini:

Tabel 4.1 Tipe Integer

Tipe Boolean

Tipe boolean merupakan nama tipe bilangan lojik. Nama boolean

ini diambil dari nama seorang matematikawan Inggris, George Boole.

Bilangan lojik hanya mengenal dua buah nilai, yakni benar (true) atau

salah (false). Nilai Boolean berfungsi untuk pengambilan keputusan

dalam suatu program. Pada Turbo Pascal terdapat empat macam tipe

data yang berkaitan dengan Boolean, yaitu:

Tabel 4.2 Tipe Boolean

Tipe Data RANGE Ukuran memory

Boolean Byte-sized 8 byte

ByteBool Byte-sized 8 byte

WordBool Word-sized 16 byte

LongBool Longint-sized 32 byte

Tipe Data Jangkauan Nilai Ukuran Memori

Shortint -128 s/d 127 1 byte

Integer -32.768 s/d 32.767 2 byte

Longint -2.147.483.648 s/d 2.147.483.647 4 byte

Byte 0 s/d 255 1 byte

Word 0 s/d 65.535 2 byte

Page 3: tipe data dan statement control

Tipe Char

yang termasuk dalam tipe char adalah karakter tunggal atau sebuah

karakter yang ditulis dengan tanda petik tunggal, misalnya

‘A’,’a’,’!’,’5’ dsb. Jenis data ini memerlukan alokasi data memori

sebesar 1 byte untuk masing-masing data.

Tipe Subrange (sub-jangkauan)

Tipe Subrange (sub-jangkauan) merupakan suatu tipe yang

menyatakan jangkauan nilai suatu tipe yang sudah ada. Jangkauan

nilainya ditentukan dari nilai terkecil dan nilai terbesar. Antara nilai

terkecil dan nilai terbesar dipisahkan oleh tanda subjangkauan (..).

Subjangkauan hanya dapat diterapkan pada semua tipe data ordinal.

Contoh:

Kode program 4.1 Tipe Subrange

Tipe Enumerated

Tipe enumerated disebut juga nilai terbilang karena pada tipe ini

semua nilai disebut satu per satu dan ditempatkan didalam kurung.

Contoh:

Kode program 4.2 Tipe Enumerated

b. Tipe Real

TYPENilaiBulan: 1..12; {subjangkauan dari integer}

TYPESistemOperasi=(UNIX,MS_DOS,OS_2,WINDOWS_NT,WINDOWS)

Page 4: tipe data dan statement control

Tipe real merupakan tipe bilangan yang mengandung pecahan

desimal. Dalam pemakaiannya pangkat bilangan dasar 10 (yang

digunakan untuk menunjukkan eksponensial) dinyatakan dengan

notasi E. contoh: 0.00123456 menjadi 1.23456 E-3. Dalam turbo

pascal terdapat 5 buah tipe real.

Tabel 4.3 Tipe Real

Tipe Data Jangkauan NilaiKetelitian

(digit)

Ukuran

Memori

Real 2.9 x 10E-39…1.7 x 10E38 11 – 12 6 byte

Single 1.5 x 10E-45…3.4 x 10E38 7 – 8 4 byte

double 5.0 x 10E-324…1.7 x 10E308 15 – 16 8 byte

extended 1.9 x 10E-4951…1.1 x 10E4932 19 – 20 10 byte

comp -2E63 + 1…2E63 – 1 19 – 20 8 byte

2. Tipe String

String merupakan kumpulan dari beberapa karakter yang panjangnya tidak

boleh melebihi 255 karakter dan diapit oleh tanda petik tunggal, contoh

‘ABCDEF’

3. Tipe Structure

Dalam tipe Structure setiap perubah bisa menyimpan lebih dari sebuah

nilai data. Ukuran tipe data terstruktur dalam Turbo Pascal maksimum 65520.

Tipe data ini dapat dibagi menjadi empat, yaitu tipe array, tipe record, tipe set dan

tipe file.

a. Tipe Array

Tipe data array atau biasa disebut larik merupakan tipe data terstruktur

yang berfungsi untuk menyimpan sejumlah data yang bertipe sama. Array

juga dapat menampung beberapa data yang nilainya sama. Bagian yang

menyusun array dinamakan elemen array. Masing-masing elemen dapat

diakses tersendiri, melalui indeks array, contoh:

Kode Program 4.3 Tipe Array

TYPETabelNilai = ARRAY[1..5] OF Byte;TabelHuruf = ARRAY[1..26] OF Char;

Page 5: tipe data dan statement control

b. Tipe Record

Sama halnya dengan larik, rekaman (record) adalah sekumpulan data.

Perbedaannya adalah bahwa dalam larik semua elemennya harus bertipe

sama, tetapi dalam record setiap elemen bisa mempunyai tipe data yang

berbeda satu sama lain.Sebuah Record dapat berisi komponen bilangan

atau field, contoh:

Kode Program 4.4 Tipe Record

Dengan mendeklarasikan seperti di atas, Barang akan mengandung tiga

buah field, yaitu Nama, Kualitas dan Harga.

c. Tipe Set

Tipe data set atau himpunan adalah koleksi dari sejumlah nilai yang

bertipe sama dan sifatnya tidak ada data yang kembar. Pada Turbo Pascal,

anggota dari suatu himpunan terbatas pada data ordinal yang nilai

ordinalnya terletak antara 0 sampai dengan 255.

d. Tipe File

Berkas (file) adalah kumpulan sejumlah komponen yang bertipe data

sama, yang jumlahnya tidak tertentu dan biasanya tersimpan dalam dalam

suatu media penyimpan luar.

4. Tipe Pointer

Semua tipe data yang telah dijelaskan di atas, apabila digunakan untuk

mendeklarasikan suatu perubah, maka sifat perubah tersebut adalah

perubah yang statis. Pascal dilengkapi dengan fasilitas yang

memungkinkan pemakai untuk menggunakan perubah yang bersifat

dinamis, yang juga disebut pointer. Tipe pointer adalah tipe yang berisi

alamat memori dan berlambang ^.

TYPERecBarang = RECORD

Nama : STRINGKualitas : Char;

Harga : LongInt END;

VARBarang : RecBarang;

Page 6: tipe data dan statement control

5. Tipe Prosedural

Procedure dan Function adalah bagian dari Pascal dalam membuat

program. Melalui Tipe Procedural, maka anda dapat memperlakukan

Procedure dan Function sebagai objek sehingga dapat dimasukkan ke

dalam sebuah variable dan parameter. Hasil function haruslah berupa

String, Real, Integer, Char, Boolean atau Pointer.

6. Tipe Object

Tipe objek adalah data berstruktur yang berisi komponen bilangan

fixed. Bentuk umum dari tipe object yaitu:

Kode Program 4.5 Tipe Object

4.2.2 Statement Control

Selection (pemilihan) dalam pascal digunakan untuk mengontrol jalannya

program agar dapat melakukan pemilihan dari sekian banyak pilihan yang ada.

Dalam pascal, terdapat 3 buah struktur selection, yaitu if, if…else, dan switch.

1. If

statement if digunakan untuk pemilihan kondisi analisis dalam satu

kasus.sintaks dari statement if adalah IF kondisi THEN. Dan

flowchartnya dapat digambarkan sebagai berikut:

ObjectField;Field;…Method;Method;

Page 7: tipe data dan statement control

Gambar 4.1 Flowchart Statement Control If

Contoh penggunaan if:

Kode Program 4.6 Statement Control IF

2. If… else

Statement if…else digunakan apabila statement yang akan dilakukan lebih

dari satu. sintaks sederhana statement ini adalah :

If kondisi ThenBegin statement 1;End Else Begin statement 2; End.

Kode Program 4.7 Statement Control If…Else

Dan flowchartnya:

Program nilai;Uses WinCrt;Var nilai : Real;Begin

ClrScr;Write(‘nilai ujian : ’);ReadLn(nilai);If nilai >= 55 then WriteLn(‘lulus’);WriteLn(‘Selesai’);

End.

Page 8: tipe data dan statement control

Contoh penggunaan if... else:

Kode Program 4.8 Statement Control If… Else

3. Case…of

Merupakan alternative dari pernyataan if untuk masalah dengan pilihan

berganda. Pada masalah tertentu, case lebih memberikan kejelasan

daripada IF. Namun, persoalan yang dapat ditangani oleh CASE dapat

ditangani oleh IF, namun tidak sebaliknya. Sintaks dari case…of adalah :

Gambar 4.2 Flowchart Statement Control If… else

Program nilai;

Uses wincrt;

Var

Nilai : byte;

Kte : string[5];

Begin

Writeln(‘Masukkan nilai :’);

Readln(Nilai);

If Nilai < 40 then

Ket := ‘E’

Else if Nilai < 55 then

Ket := ‘D’

Else if Nilai < 65 then

Ket := ‘C’

Else if Nilai < 80 then

Ket := ‘B’

Else Ket := ‘A’;

Writeln;

Writeln(‘keterangan hasil : ’,Ket);

End.

Case ungkapan of

Daftar label 1 : statement 1; Daftar label 2 : statement 2; Daftar label 3 : statement 3; Daftar label 4 : statement 4; ……………………………

Else statement 5;End;

Page 9: tipe data dan statement control

Kode Program 4.9 Statement Control Case… Of

Dan flowchartnya:

Contoh dari penggunaan case…of:

Gambar 4.3 Flowchart Statement Control Case… Of

Program hargatiket;Uses wincrt;Var Tiket : char; Harga : string[12];Begin Write(‘Masukkan jenis tiket yg ingin dibeli: ’); Readln(Tiket); Case Tiket of A : Harga := Rp 150000; B : Harga := Rp 100000; C : Harga := Rp 75000; D : Harga := Rp 50000; Else Harga := Rp 40000; End; Writeln; Write(‘Harga tiket yang anda pilih adalah: ’); Writeln(harga);End.

Page 10: tipe data dan statement control

Kode Program 4.10 Statement Control Case… Of

4.2.3 Passing Parameter

Passing parameter adalah program akan berjalan bila parameter yang

dibuat benar dan untuk kemudian dipanggil untuk dijalankan. Passing parameter

dibagi menjadi dua yaitu:

1. Pass By Value

Pass By Value adalah suatu prosedur yang hanya mempunyai

parameter input atau parameter nilai. Adapun ciri dari Pass By Value

adalah:

a. Harga parameter aktual disalin kedalam parameter formal, semua

acuan ke parameter formal tidak ada hubungan kedalam parameter

aktual.

b. Jika harga parameter formal diubah, tidak mempengaruhi harga

parameter aktual ketika pemanggilan dilakukan.

c. Berguna untuk melindungi parameter aktual dari efek perubahan harga

yang tidak diinginkan.

d. Dipakai jika mengannggap parameter aktual sebagai masukan modul

yang dipanggil.

Adapun contoh program yang menggunakan Pass By Value:

Program pass_by_value;Uses wincrt;var i : integer;procedure pass_nilai(j: integer); begin J := j + 1; writeln(‘j = ‘, j); end; begin i := 6; writeln(‘i = ‘, i); pass_nilai(i); writeln(‘i = ‘, i); end.

Page 11: tipe data dan statement control

Kode Program 4.11 Pass By Value

Dari program diatas didapatkan nilai i dan j sebesar:

i= 6

j= 7

i= 6

Nilai i tidak berubah meskipun sewaktu menjadi parameter aktual. Dalam

prosedur pass_nilai, variabel i menggantikan variabel j pada parameter

formal.

2. Pass By Reference

Pass By Reference adalah pemanggilan prosedur yang mempunyai

parameter output atau parameter variabel. Adapun ciri dari Pass By

Reference yaitu:

Pada waktu modul dipanggil untuk di eksekusi , alamat dari parameter

actual dikomunikasikan ke parameter formal.

Setiap acuan terhadap parameter formal dialihkan terhadap alamat

tersebut.

Perubahan harga pada parameter formal berakibat terhadap parameter

aktual karena diajukan ke alamat yang sama.

Dipakai jika parameter aktual dianggap sebagai keluaran yang

dihasilkan oleh modul dan dikembalikan ke modul yang

memanggilnya.

Adapun contoh program yang menggunakan Pass By Reference:

Program pass_by_reference;Uses wincrt;var

i : integer;

procedure pass_ref (var j: integer);begin

j := j + 1 writeln (‘j = ‘, j); end; begin i := 6; writeln (‘i = ‘, i); pass_ref (i); writeln (‘i = ‘, i); end.

Page 12: tipe data dan statement control

Kode Program 4.12 Pass By Reference

Sehingga didapatkan output keluarannya sebesar:

i =6

j =7

i =7

4.3 Pembahasan dan Analisa

4.3.1 Program Konversi Cek

4.3.1.1 Penjelasan Fungsi dan Procedure Dalam Program Konversi Cek

Pada program konversi cek ini kami menggunakan 3 buah function, yaitu:

a. Fungsi yang pertama yaitu function ratusan.

function ratusan (uang : longint) : longint;begin rat := uang div 100; sisa_rat := uang mod 100; case rat of 0: angka_rat := ''; 1: angka_rat := ' seratus'; 2: angka_rat := ' dua ratus'; 3: angka_rat := ' tiga ratus'; 4: angka_rat := ' empat ratus'; 5: angka_rat := ' lima ratus'; 6: angka_rat := ' enam ratus'; 7: angka_rat := ' tujuh ratus'; 8: angka_rat := ' delapan ratus'; 9: angka_rat := ' sembilan ratus'; end; pul := sisa_rat div 10; sisa_pul := sisa_rat mod 10; if pul = 1 then begin case sisa_pul of 0: angka_sat := ' sepuluh'; 1: angka_sat := ' sebelas'; 2: angka_sat := ' dua belas'; 3: angka_sat := ' tiga belas'; 4: angka_sat := ' empat belas'; 5: angka_sat := ' lima belas'; 6: angka_sat := ' enam belas'; 7: angka_sat := ' tujuh belas'; 8: angka_sat := ' delapan belas'; 9: angka_sat := ' sembilan belas'; end; write (angka_rat,angka_sat); end else if pul<>1 then begin case pul of

Page 13: tipe data dan statement control

Kode Program 4.13 Fungsi Ratusan

0: angka_pul := ''; 2: angka_pul := ' dua puluh'; 3: angka_pul := ' tiga puluh'; 4: angka_pul := ' empat puluh'; 5: angka_pul := ' lima puluh'; 6: angka_pul := ' enam puluh'; 7: angka_pul := ' tujuh puluh';

8: angka_sat := ' delapan belas'; 9: angka_sat := ' sembilan belas'; end; write (angka_rat,angka_sat); end else if pul<>1 then begin case pul of 0: angka_pul := ''; 2: angka_pul := ' dua puluh'; 3: angka_pul := ' tiga puluh'; 4: angka_pul := ' empat puluh'; 5: angka_pul := ' lima puluh'; 6: angka_pul := ' enam puluh'; 7: angka_pul := ' tujuh puluh'; 8: angka_pul := ' delapan puluh'; 9: angka_pul := ' sembilan puluh'; end; sisa_pul:=sisa_rat mod 10; case sisa_pul of 0: angka_sat := ''; 1: angka_sat := ' satu'; 2: angka_sat := ' dua'; 3: angka_sat := ' tiga'; 4: angka_sat := ' empat'; 5: angka_sat := ' lima'; 6: angka_sat := ' enam'; 7: angka_sat := ' tujuh'; 8: angka_sat := ' delapan'; 9: angka_sat := ' sembilan'; end; write (angka_rat,angka_pul,angka_sat); end;end;

Page 14: tipe data dan statement control

b. Fungsi yang kedua yaitu function ribuan

Kode Program 4.14 Fungsi Ribuan

c. Fungsi yang ketiga adalah function jutaan

Kode Program 4.15 Fungsi Jutaan

4.3.1.2 Algoritma

a. Algoritma Fungsi Ratusan

1. Mulai

2. ”Rat” diisi dengan ”uang” div 100

function ribuan (uang : longint) : longint;begin rib:=uang div 1000; sisa_rib:=uang mod 1000; if rib=1 then begin write (' seribu'); end else if rib>1 then begin ratusan(rib); write (' ribu'); end; ratusan(sisa_rib);end;

function jutaan (uang : longint) : longint;begin jut:=uang div 1000000; sisa_jut:= uang mod 1000000; ratusan(jut); if jut = 0 then begin write (''); end else write ('juta'); ribuan(sisa_jut);end;

Page 15: tipe data dan statement control

3. ”sisa_rat” diisi dengan ”uang” mod 100

4. Bila ”rat” = 0, ”angka_rat” tidak diisi apa-apa

5. Bila ” rat” =1, ”angka_rat” diisi dengan ’ seratus’

6. Bila ” rat” =2, ”angka_rat” diisi dengan ’ dua ratus’

7. Bila ” rat” =3, ”angka_rat” diisi dengan ’ tiga ratus’

8. Bila ” rat” =4, ”angka_rat” diisi dengan ’ empat ratus’

9. Bila ” rat” =5, ”angka_rat” diisi dengan ’ lima ratus’

10. Bila ” rat” =6, ”angka_rat” diisi dengan ’ enam ratus’

11. Bila ” rat” =7, ”angka_rat” diisi dengan ’ tujuh ratus’

12. Bila ” rat” =8, ”angka_rat” diisi dengan ’ delapan ratus’

13. Bila ” rat” =9, ”angka_rat” diisi dengan ’ sembilan ratus’

14. ”pul” diisi dengan ”sisa_rat” div 10

15. ”sisa_pul” diisi dengan ”sisa_rat” mod 10

16. Jika ”pul”=1 maka

17. Bila ”sisa_pul” = 0, ”angka_sat” diisi dengan ’ sepuluh’

18. Bila ” sisa_pul” =1, ”angka_sat” diisi dengan ’ sebelas’

19. Bila ” sisa_pul” =2, ”angka_sat” diisi dengan ’ dua belas’

20. Bila ” sisa_pul” =3, ”angka_sat” diisi dengan ’ tiga belas’

21. Bila ” sisa_pul” =4, ”angka_sat” diisi dengan ’ empat belas’

22. Bila ” sisa_pul” =5, ”angka_sat” diisi dengan ’ lima belas’

23. Bila ” sisa_pul” =6, ”angka_sat” diisi dengan ’ enam belas’

24. Bila ” sisa_pul” =7, ”angka_sat” diisi dengan ’ tujuh belas’

25. Bila ” sisa_pul” =8, ”angka_sat” diisi dengan ’ delapan belas’

26. Bila ” sisa_pul” =9, ”angka_sat” diisi dengan ’ sembilan belas’

27. Setelah itu cetak (angka_rat, angka_sat)

28. Jika ”pul”selain 1 maka

29. Bila ”pul” = 0, ”angka_pul” tidak diisi apa-apa

30. Bila ”pul” =2, ”angka_pul” diisi dengan ’ dua puluh’

31. Bila ”pul” =3, ”angka_pul” diisi dengan ’ tiga puluh’

32. Bila ”pul” =4, ”angka_pul” diisi dengan ’ empat puluh’

33. Bila ”pul” =5, ”angka_pul” diisi dengan ’ lima puluh’

Page 16: tipe data dan statement control

34. Bila ”pul” =6, ”angka_pul” diisi dengan ’ enam puluh’

35. Bila ”pul” =7, ”angka_pul” diisi dengan ’ tujuh puluh’

36. Bila ”pul” =8, ”angka_pul” diisi dengan ’ delapan puluh’

37. Bila ”pul” =9, ”angka_pul” diisi dengan ’ sembilan puluh’

38. Bila ”sisa_pul” = 0, ”angka_sat” tidak diisi apa-apa

39. Bila ” sisa_pul” =1, ”angka_sat” diisi dengan ’ satu’

40. Bila ” sisa_pul” =2, ”angka_sat” diisi dengan ’ dua’

41. Bila ” sisa_pul” =3, ”angka_sat” diisi dengan ’ tiga’

42. Bila ” sisa_pul” =4, ”angka_sat” diisi dengan ’ empat’

43. Bila ” sisa_pul” =5, ”angka_sat” diisi dengan ’ lima’

44. Bila ” sisa_pul” =6, ”angka_sat” diisi dengan ’ enam’

45. Bila ” sisa_pul” =7, ”angka_sat” diisi dengan ’ tujuh’

46. Bila ” sisa_pul” =8, ”angka_sat” diisi dengan ’ delapan’

47. Bila ” sisa_pul” =9, ”angka_sat” diisi dengan ’ sembilan’

48. Setelah itu cetak (angka_rat, angka_pul, angka_sat)

49. Selesai

b. Algoritma Fungsi Ribuan

1. Mulai

2. ”rib” diisi dengan ”uang” div 1000

3. ”sisa_rib” diisi dengan ”uang” mod 1000

4. Jika ”rib” = 1 maka cetak (’ seribu’)

5. Jika ”rib” > 1 maka

6. Panggil fungsi ”ratusan” dengan mengganti variabel ”ratusan” dengan

”rib” kemudian cetak (’ seribu’)

7. Panggil fungsi ”ratusan” dengan mengganti variabel ”ratusan” dengan

”sisa_rib”

8. Selesai

c. Algoritma Fungsi Juta

1. Mulai

Page 17: tipe data dan statement control

2. ”jut” diisi dengan ”uang” div 1000000

3. ”sisa_jut” diisi dengan ”uang” mod 1000000

4. Panggil fungsi ”ratusan” dengan mengganti variabel ”ratusan” dengan

”jut”

5. Jika ”jut” selain 0 maka cetak (’ juta’)

6. Panggil fungsi ”ribuan” dengan mengganti variabel ”ribuan” dengan

”sisa_jut”

7. Selesai

d. Algoritma Program Utama

1. Mulai

2. Masukkan uang anda (maksimal 999999999) dan disimpan di variabel

”uang”

3. Jika ”rupiah” kurang dari atau sama dengan 0 maka input yang anda

masukkan salah.

4. Jika ”rupiah” lebih dari 999999999 maka input yang anda masukkan

salah

5. Jika ”rupiah” <= 100 maka panggil fungsi ”ratusan” dan tulis

(’rupiah’)

6. Jika ”rupiah” <= 1000 maka panggil fungsi ”ribuan” dan tulis

(’rupiah’)

7. Jika ”rupiah” < 1000000000 maka panggil fungsi ”jutaan” dan tulis

(’rupiah’)

8. Percabangan menentukan apakah anda ingin mengulang atau tidak.

Jika ya kembali ke langkah 2 jika tidak program akan berheti.

Page 18: tipe data dan statement control

4.3.1.3 Flowchart

a. Flowchart Fungsi Ratusan

Page 19: tipe data dan statement control

Angka rat ‘seratus’

Angka rat ‘dua ratus’

Angka rat ‘tiga ratus’

Angka rat ‘empat ratus’

Angka rat ‘lima ratus’

Angka rat ‘enam ratus’

Angka rat ‘Tujuh ratus’

Angka rat ‘Delapan ratus’

Angka rat ‘Sembilan ratus’

Gambar 4.4 Flowchart Fungsi Ratusan (a)

1

Page 20: tipe data dan statement control

Angka sat ‘sepuluh’

Angka sat ‘sebelas’

Angka sat ‘tiga belas’

Angka sat ‘empat belas’

Angka sat ‘lima belas’

Angka sat ‘enam belas’

Angka sat ‘tujuh belas’

Angka sat ‘delapan belas’

Angka_sat ‘seembilan bebelas’

3

Pul <> 1 Pul = 0

Pul = 2

TIDAK

YAAngka_pul ← ‘’

Angka_pul ← ‘dua puluh’YA

TIDAK

YA

Gambar 4.5 Flowchart Fungsi Ratusan (b)

Angka sat ‘duabelas’

Page 21: tipe data dan statement control

4

Sisa_pul ← Sisa_rat MOD 10

Sisa_pul = 0 YA

TIDAK

Angka_sat ← ‘’

Gambar 4.6 Flowchart Fungsi Ratusan (c)

Page 22: tipe data dan statement control

b. Flowchart Fungsi RibuanGambar 4.7 Flowchart Fungsi Ratusan (d)

OUTPUT Angka_rat_Angka_pul,Angka_sat

Page 23: tipe data dan statement control

START

Rib ← uang DIV 1000Sisa_rib ← uang MOD 1000

Rib = 1 YA

TIDAK

OUTPUT‘Seribu’

Rib > 1

RATUSAN

YA

TIDAK

OUTPUT‘ ribu’

RATUSAN

STOP

Gambar 4.8 Flowchart Function Ribuan

c. Flowchart Fungsi Jutaan

Page 24: tipe data dan statement control

Gambar 4.9 Flowchart Function Jutaan

d. Flowchart Program Utama

START

Jut ← uang DIV 1000000

Sisa_jut ← uang MOD 1000000

RATUSAN

Jut = 0

OUTPUT

‘ ’

OUTPUT

‘ juta ’

RIBUAN

STOP

YA

TIDAK

Page 25: tipe data dan statement control

Gambar 4.10 Flowchart Program Utama Konversi Cek

4.3.1.4 Tracing Program Konversi Cek

START

INPUT

Uang

Uang >= 0 and Uang <=100YA

TIDAK

RATUSAN

Uang <= 1000 YA

RIBUAN

TIDAK

Uang< 1000000000YA

JUTAAN

TIDAK

Coba lagi?

TIDAK

STOP

YAX

X

Unag<>0

Page 26: tipe data dan statement control

Setelah selesai membuat flowchart, kita dapat melakukan uji coba

program tersebut dengan tracing.

Input : Uang : 270

Process :Rat : 2Sisa_rat : 70Pul : 7Sisa_pul: 0Rib : 0Sisa_rib: 270Jut :Sisa_jut :Angka_rat : Dua ratusAngka_sat : Angka_pul : Tujuh Puluh

Output :Angka_rat : Dua ratus Angka_sat :Angka_pul :Tujuh Puluh

Tabel 4.4 Tracing Program Konversi Cek

4.3.1.5 Listing Program Konversi Cek

Setelah selesai membuat flowchart dan tracenya. Kita dapat membuat

programnya yaitu sebagai berikut:

program KonversiCek;uses wincrt;var sisa_rat, sisa_pul, sisa_rib, sisa_jut, sisa_mil : longint; rat, pul, rib, jut, mil, rupiah : longint; uang, angka_rat, angka_sat, angka_pul : string; kode : Integer;function ratusan (uang : longint) : longint;begin rat := uang div 100; sisa_rat := uang mod 100; case rat of 0: angka_rat := ''; 1: angka_rat := ' seratus'; 2: angka_rat := ' dua ratus'; 3: angka_rat := ' tiga ratus'; 4: angka_rat := ' empat ratus'; 5: angka_rat := ' lima ratus'; 6: angka_rat := ' enam ratus'; 7: angka_rat := ' tujuh ratus'; 8: angka_rat := ' delapan ratus'; 9: angka_rat := ' sembilan ratus'; end; pul := sisa_rat div 10; sisa_pul := sisa_rat mod 10; if pul = 1 then

Page 27: tipe data dan statement control

4: angka_rat := ' empat ratus'; 5: angka_rat := ' lima ratus'; 6: angka_rat := ' enam ratus'; 7: angka_rat := ' tujuh ratus'; 8: angka_rat := ' delapan ratus'; 9: angka_rat := ' sembilan ratus'; end; pul := sisa_rat div 10; sisa_pul := sisa_rat mod 10; if pul = 1 then

function ribuan (uang : longint) : longint;begin rib:=uang div 1000; sisa_rib:=uang mod 1000; if rib=1 then begin write (' seribu'); end else if rib>1 then

Page 28: tipe data dan statement control

function ribuan (uang : longint) : longint;begin rib:=uang div 1000; sisa_rib:=uang mod 1000; if rib=1 then begin write (' seribu'); end else if rib>1 then

if rupiah > 999999999 then begin write ('uang yang anda masukan salah! maksimal uang yang anda masukkan adalah 999999999'); end else if Rupiah >0 then begin if Rupiah <=100 then begin

Page 29: tipe data dan statement control

Kode Program 4.16 Listing Program Konversi Cek

4.3.2 Program Konversi Suhu

4.3.2.1 Penjelasan Fungsi dan Procedure Dalam Program Konversi Suhu

Pada program konversi suhu ini, kami menggunakan statement control

Case… Of pada program utamanya dan menggunakan 12 function.

Adapun penjelasan function pada program konversi suhu ini yaitu

sebagai berikut:

a. Function F ke C

if rupiah > 999999999 then begin write ('uang yang anda masukan salah! maksimal uang yang anda masukkan adalah 999999999'); end else if Rupiah >0 then begin if Rupiah <=100 then begin

Page 30: tipe data dan statement control

Fungsi ini merupakan Fungsi untuk menghitung atau mengkonversi

suhu dari Fahrenheit ke Celcius. Fungsi diatas menggunakan 1 buah

parameter, yakni T yang bertipe real.

Kode Program 4.16 Function F ke C

b. Function F ke R

Fungsi ini merupakan Fungsi untuk menghitung atau mengkonversi

suhu dari Fahrenheit ke Reamur. Fungsi diatas menggunakan 1 buah

parameter, yakni T yang bertipe real.

Kode Program 4.17 Function F ke R

c. Function F ke K

Fungsi ini merupakan Fungsi untuk menghitung atau mengkonversi

suhu dari Fahrenheit ke Kelvin. Fungsi diatas menggunakan 1 buah

parameter, yakni T yang bertipe real.

Kode Program 4.18 Function F ke K

d. Function C ke F

Fungsi ini merupakan Fungsi untuk menghitung atau mengkonversi

suhu dari Celcius ke Fahrenheit. Fungsi diatas menggunakan 1 buah

parameter, yakni T yang bertipe real.

function F_ke_C (T:real):real;beginF_ke_C :=5/9*(T-32);end

function F_ke_R (T:real):real;begin F_ke_R :=4/9*(T-32);end

function F_ke_K (T:real):real;begin F_ke_C(T) + 273;end

function C_ke_F (T:real):real;begin C_ke_F := 9/5*T+32;end;

Page 31: tipe data dan statement control

Kode Program 4.19 Function C ke F

e. Function C ke R

Fungsi ini merupakan Fungsi untuk menghitung atau mengkonversi

suhu dari Celcius ke Reamur. Fungsi diatas menggunakan 1 buah

parameter, yakni T yang bertipe real.

Kode Program 4.20 Function C ke R

f. Function C ke K

Fungsi ini merupakan Fungsi untuk menghitung atau mengkonversi

suhu dari Celcius ke Kelvin. Fungsi diatas menggunakan 1 buah

parameter, yakni T yang bertipe real.

Kode Program 4.21 Function C ke K

g. Function R ke F

Fungsi ini merupakan Fungsi untuk menghitung atau mengkonversi

suhu dari Reamur ke Fahrenheit. Fungsi diatas menggunakan 1 buah

parameter, yakni T yang bertipe real.

Kode Program 4.22 Function R ke F

h. Function R ke C

function C_ke_R (T:real):real;begin C_ke_R:= 4/5*T;end;

function C_ke_K (T:real):real;begin C_ke_K:= T + 273;end;

function R_ke_F (T:real):real;begin R_ke_F := 9/4*T+32;end;

Page 32: tipe data dan statement control

Fungsi ini merupakan Fungsi untuk menghitung atau mengkonversi

suhu dari Reamur ke Celcius. Fungsi diatas menggunakan 1 buah

parameter, yakni T yang bertipe real.

Kode Program 4.23 Function R ke C

i. Function R ke K

Fungsi ini merupakan Fungsi untuk menghitung atau mengkonversi

suhu dari Reamur ke Kelvin. Fungsi diatas menggunakan 1 buah

parameter, yakni T yang bertipe real.

Kode Program 4.24 Function R ke K

j. Function K ke C

Fungsi ini merupakan Fungsi untuk menghitung atau mengkonversi

suhu dari Kelvin ke Celcius. Fungsi diatas menggunakan 1 buah

parameter, yakni T yang bertipe real.

Kode Program 4.25 Function K ke C

k. Function K ke F

Fungsi ini merupakan Fungsi untuk menghitung atau mengkonversi

suhu dari Kelvin ke Farenheit. Fungsi diatas menggunakan 1 buah

parameter, yakni T yang bertipe real.

function R_ke_C (T:real):real;begin R_ke_C := 5/4*T;end;

function R_ke_K (T:real):real;begin R_ke_K := R_ke_C (T) +273;end;

function K_ke_C (T:real):real;begin K_ke_C := T-273; end;

function K_ke_F (T:real):real;begin K_ke_F := (K_ke_C(T)*9/5*T+32);end;

Page 33: tipe data dan statement control

Kode Program 4.26 Function K ke F

l. Function K ke R

Fungsi ini merupakan Fungsi untuk menghitung atau mengkonversi

suhu dari Kelvin ke Reamur. Fungsi diatas menggunakan 1 buah

parameter, yakni T yang bertipe real.

Kode Program 4.26 Function K ke R

4.3.2.1 Algoritma

a. Algoritma Function F ke C

1. Start

2. Persiapan, T=real

3. Deklarasi konversi suhu F ke C= 5/9*(T-32)

4. Stop

b. Algoritma Function F ke R

1. Start

2. Persiapan, T=real

3. Deklarasi konversi suhu F ke R= (4/9*(T-32))

4. Stop

c. Algoritma Function F ke K

1. Start

2. Persiapan, T=real

3. Deklarasi konversi suhu F ke K= (5/9*(T-32))+273

4. Stop

function K_ke_R (T:real):real;begin K_ke_R :=4/5*K_ke_C(T);end;

Page 34: tipe data dan statement control

d. Algoritma Function C ke F

1. Start

2. Persiapan, T= real

3. Deklarasi konversi suhu C ke F=(9/5*T)+32

4. Stop

e. Algoritma Function C ke R

1. Start

2. Persiapan, T = real

3. Deklarasi konversi suhu C ke R=4/5*T

4. Stop

f. Algoritma Function C ke K

1. Start

2. Persiapan,T=real

3. Deklarasi konversi suhu C ke K= T + 273

4. Stop

g. Algoritma Function R ke F

1. Start

2. Persiapan, T=real

3. Deklarasi konversi suhu R ke F=(9/4*T)+32

4. Stop

h. Algoritma Function R ke C

1. Start

2. Persiapan, T= real

3. Deklarasi konversi suhu R ke C= 5/4*T

4. Stop

i. Algoritma Function R ke K

1. Start

2. Persiapan, T=real

3. Deklarasi konversi suhu R ke K= (5/4*T)+273

4. Stop

Page 35: tipe data dan statement control

j. Algoritma Function K ke C

1. Start

2. Persiapan, T=real

3. Deklarasi konversi suhu K ke C= T-273

4. Stop

k. Algoritma Function K ke F

1. Start

2. Persiapan, T=real

3. Deklarasi konversi suhu K ke F= ( 9 / 5 * (T – 273)) + 32

4. Stop

l. Algoritma Function K ke R

1. Start

2. Persiapan, T=real

3. Deklarasi konversi suhu K ke R= ( 4 / 5 * ( T – 273 )

4. Stop

m. Algoritma Program Utama

1. Mulai

2. Inisialiasasi F=0, C=0, R=0, K=0

3. Masukkan pilihan suhu yang ingin dikonversi (1-12)

4. Jika 0≥ kode yang dimasukkan <12 maka input yang anda

masukkan salah

5. Jika input yang dimasukkan adalah 1 maka deklarasi nilai

memanggil fungsi F_ke_C dan lanjut ke langkah 17, jika tidak

lanjut ke langkah selanjutnya

6. Jika input yang dimasukkan adalah 2 maka deklarasi nilai

memanggil fungsi F_ke_R dan lanjut ke langkah 17, jika tidak

lanjut ke langkah selanjutnya

7. Jika input yang dimasukkan adalah 3 maka deklarasi nilai

memanggil fungsi F_ke_K dan lanjut ke langkah 17, jika tidak

lanjut ke langkah selanjutnya

Page 36: tipe data dan statement control

8. Jika input yang dimasukkan adalah 4 maka deklarasi nilai

memanggil fungsi C_ke_F dan lanjut ke langkah 17, jika tidak

lanjut ke langkah selanjutnya

9. Jika input yang dimasukkan adalah 5 maka deklarasi nilai

memanggil fungsi C_ke_R dan lanjut ke langkah 17, jika tidak

lanjut ke langkah selanjutnya

10. Jika input yang dimasukkan adalah 6 maka deklarasi nilai

memanggil fungsi C_ke_K dan lanjut ke langkah 17, jika tidak

lanjut ke langkah selanjutnya

11. Jika input yang dimasukkan adalah 7 maka deklarasi nilai

memanggil fungsi R_ke_F dan lanjut ke langkah 17, jika tidak

lanjut ke langkah selanjutnya

12. Jika input yang dimasukkan adalah 8 maka deklarasi nilai

memanggil fungsi R_ke_C dan lanjut ke langkah 17, jika tidak

lanjut ke langkah selanjutnya

13. Jika input yang dimasukkan adalah 9 maka deklarasi nilai

memanggil fungsi R_ke_K dan lanjut ke langkah 17, jika tidak

lanjut ke langkah selanjutnya

14. Jika input yang dimasukkan adalah 10 maka deklarasi nilai

memanggil fungsi K_ke_C dan lanjut ke langkah 17, jika tidak

lanjut ke langkah selanjutnya

15. Jika input yang dimasukkan adalah 11 maka deklarasi nilai

memanggil fungsi K_ke_F dan lanjut ke langkah 17, jika tidak

lanjut ke langkah selanjutnya

16. Jika input yang dimasukkan adalah 11 maka deklarasi nilai

memanggil fungsi K_ke_R dan lanjut ke langkah 17, jika tidak

lanjut ke langkah selanjutnya

17. Keluaran berupa suhu akhir yang telah dikonversi

18. Percabangan menentukan apakah anda ingin mengulang? Jika ya

kembali ke langkah 2 jika tidak program akan berhenti

Page 37: tipe data dan statement control

T real

F ke R 4/9*(T-32)

Start

Stop

4.3.2.3 Flowchart

Fungsi F ke C Fungsi F ke R

Gambar 4.11 Flowchart Fungsi F ke C Gambar 4.12 Flowchart Fungsi F ke C

Fungsi F ke K Fungsi C ke F

Gambar 4.13 Flowchart Fungsi F ke K Gambar 4.14 Flowchart Fungsi C ke F

S T A R T

F_ke_C:=5/9 * (T-32)

S T O P

T real

F ke K (5/9*(T-32))+273

Start

Stop

T real

C ke F 9/5*T+32

Start

Stop

T real

Page 38: tipe data dan statement control

Gambar 4.15 Flowchart Fungsi C ke R

T real

C ke R 4/5*T

Start

Stop

T real

C ke K T+273

Stop

Start

Start

Stop

T real

R ke C 5/4*T

T real

R ke F (9/4*T)+32

Start

Stop

Fungsi C ke R Fungsi C ke K

Fungsi R ke F Fungsi R ke C

Gambar 4.16 Flowchart Fungsi C ke K

Gambar 4.17 Flowchart Fungsi R ke F Gambar 4.18 Flowchart Fungsi R ke C

Page 39: tipe data dan statement control

T real

K ke C T -273

Start

Stop

T real

K ke R 4/5*(T-273)

Start

Stop

Fungsi R ke K Fungsi K ke C

Gambar 4.19 Flowchart Fungsi R ke K Gambar 4.20 Flowchart Fungsi K ke C

Fungsi K ke F Fungsi K ke R

Gambar 4.21 Flowchart Fungsi K ke F Gambar 4.22 Flowchart Fungsi K ke R

S T A R T

R ke K (5/4*T)+273

S T O P

T real

S T A R T

K ke F (9/5*(T-273))+32

S T O P

T real

Page 40: tipe data dan statement control

Start

Tidak

Ya

Ya

Ya

Ya

Ya

Ya

Ya

Tidak

Tidak

Tidak

Tidak

Tidak

Tidak

B

C, R, F, K 0Kode IntegerHasil real

Input kode

Hasil F ke CKode=1

Hasil F ke RKode=2

Hasil F ke KKode=3

Hasil C ke FKode=4

Hasil C ke RKode=5

Hasil C ke KKode=6

A

A

A

C

Kode<1, Kode=0, bil> 12

Program Utama

Gambar 4.23 Flowchart Program Utama Konversi Suhu (a)

Page 41: tipe data dan statement control

Stop

Gambar 4.24 Flowchart Program Utama Konversi Suhu (b)

Ya

Ya

Ya

Ya

Ya

Ya

Tidak

Tidak

Tidak

Tidak

Tidak

Tidak

Tidak

Ya

Hasil R ke FKode=7

AB

Hasil R ke CKode=8

Hasil R ke Kpil=9

Hasil K ke CKode=10

Hasil K ke FKode=11

Hasil K ke RKode=12

Coba lagi?C

InputHasil

Page 42: tipe data dan statement control

Input :Kode : 1F : 41C :R :K :

_____________________________Process :

F : C :5/9*(T-32)R :K :

_____________________________Output :

C : 5

Input :Kode : 2F : 41C :R :K :

_____________________________Process :

F : C :R : 4/9*(T-32)K :

_____________________________Output :

R : 4

Input :Kode : 3F : 41C :R :K :

_____________________________Process :

F : C :R :K : (4/9*(T-32))+273

_____________________________Output :

K : 278

Input :Kode : 4F : C :5R :K :

_____________________________Process :

F : 9/5*T+32C R :K :

_____________________________Output :

F : 41

4.3.2.4 Tracing Program Konversi Suhu

Setelah selesai membuat flowchart, kita dapat melakukan uji coba

program tersebut dengan tracing.

Tabel 4.5 Tracing Konversi Suhu F ke C Tabel 4.6 Tracing Konversi Suhu F ke R

Tabel 4.7 Tracing Konversi Suhu F ke K Tabel 4.8 Tracing Konversi Suhu C ke F

Page 43: tipe data dan statement control

Input :Kode : 7F : C :R : 4K :

_____________________________Process :

F : 9/4*T+32C :R :K :

_____________________________Output :

F : 41

Input :Kode : 8F : C :R : 4K :

_____________________________Process :

F :C : 5/4*TR :K :

_____________________________Output :

C : 5

Input :Kode : 5F : C : 4R :K :

_____________________________Process :

F : C :R : 4/5*TK :

_____________________________Output :

R : 5

Input :Kode : 6F : C : 7R :K :

_____________________________Process :

F : C :R : K : T+273

_____________________________Output :

K : 280

Tabel 4.9 Tracing Konversi Suhu C ke R Tabel 4.10 Tracing Konversi Suhu C ke K

Tabel 4.11 Tracing Konversi Suhu R ke F Tabel 4.12 Tracing Konversi Suhu R ke C

Page 44: tipe data dan statement control

Input :Kode : 11F : C :R : K : 300

_____________________________Process :

F : (T-273)* (9/5*T+32)C :R :K :

_____________________________Output :

F : 14612

Input :Kode : 12F : C :R : K : 278

_____________________________Process :

F :C : R : 4/5*(T-273)K :

_____________________________Output :

R : 4

Input :Kode : 9F : C :R : 4K :

_____________________________Process :

F :C :R :K : (5/4*T)+273

_____________________________Output :

K : 278

Input :Kode : 10F : C :R : K : 300

_____________________________Process :

F :C : T-273R :K :

_____________________________Output :

C : 27

Tabel 4.13 Tracing Konversi Suhu R ke K Tabel 4.14 Tracing Konversi Suhu K ke C

Tabel 4.15 Tracing Konversi Suhu K ke F Tabel 4.16 Tracing Konversi Suhu K ke R

4.3.2.5 Listing Program Konversi Suhu

program konversi_suhu;uses wincrt;vara,b :string;no,kode: integer;suhu,T : real;

function F_ke_C (T:real):real;begin F_ke_C :=5/9*(T-32);

Page 45: tipe data dan statement control

end;function F_ke_R (T:real):real;begin F_ke_R:= 4/9*(T-32);end;function F_ke_K (T:real):real;begin F_ke_K := F_ke_C(T) + 273; end;

function C_ke_F (T:real):real;begin C_ke_F := 9/5*T+32;end;function C_ke_R (T:real):real;begin C_ke_R:= 4/5*T;end;function C_ke_K (T:real):real;begin C_ke_K := T+273;end;

function R_ke_F (T:real):real;begin R_ke_F := 9/4*T+32;end;function R_ke_C (T:real):real;begin R_ke_C := 5/4*T;end;function R_ke_K (T:real):real;begin R_ke_K := R_ke_C (T) +273;end;

function K_ke_C (T:real):real;begin K_ke_C := T-273; end;function K_ke_F (T:real):real;begin K_ke_F := (K_ke_C(T)*9/5*T+32);end;function K_ke_R (T:real):real;begin K_ke_R :=4/5*K_ke_C(T);end;begingotoxy (30,1); writeln ('*===== KELOMPOK 15 ======*');gotoxy (30,2); writeln ('**************************');gotoxy (30,3); writeln ('*Komang Isabella A |(65)*');gotoxy (30,4); writeln ('*I Made Anand Gopal |(66)*');gotoxy (30,5); writeln ('*Jaryanta Arya M. |(67)*');gotoxy (30,6); writeln ('*I Gede Darko Pancev|(68)*');gotoxy (30,7); writeln ('*Agus teja Baskara |(69)*');

Page 46: tipe data dan statement control

gotoxy (30,8); writeln ('**************************');writeln;writeln;writeln ('coba program konversi suhu? (Y/N)');while readkey= 'y' do

beginrepeat clrscr; gotoxy (30,1); writeln ('PROGRAM KONVERSI SUHU'); gotoxy (30,2); writeln ('---------------------');writeln;write ('SATUAN YANG DIKONVERSI');writeln;writeln('pilih salah satu'); writeln('1. Konversi F ke C'); writeln('2. Konversi F ke R'); writeln('3. Konversi F ke K'); writeln('4. Konversi C ke F'); writeln('5. Konversi C ke R'); writeln('6. Konversi C ke K'); writeln('7. Konversi R ke F'); writeln('8. Konversi R ke C'); writeln('9. Konversi R ke K'); writeln('10.Konversi K ke C'); writeln('11.Konversi K ke F'); writeln('12.Konversi K ke R'); writeln; repeat writeln ('masukkan pilihan anda (1-12):'); readln (a); val (a,no,kode); if (kode<>0) or (no<0) or (no>12) then writeln ('input yang anda masukkan salah. pilih nomor 1-12'); until (kode=0)and(no>0)and(no<13);

repeat writeln ('masukkan nilai suhu:'); readln (b); val(b,T,kode); if(kode<>0)then writeln('pilih nomor 1-12!'); Until(kode=0);

writeln; case no of 1:suhu:=F_ke_C(T); 2:suhu:=F_ke_R(T); 3:suhu:=F_ke_K(T); 4:suhu:=C_ke_F(T); 5:suhu:=C_ke_R(T); 6:suhu:=C_ke_K(T); 7:suhu:=R_ke_F(T); 8:suhu:=R_ke_C(T);

Page 47: tipe data dan statement control

Kode Program 4.27 Listing Program Konversi Suhu

4.4 Uji Coba dan User Interface

4.4.1 Program Konversi Cek

Setelah kita membuat programnya maka langkah selanjutnya adalah

menampilkan hasil program yang telah dibuat. Tampilan awal pada program

konversi cek dapat kita lihat pada gambar dibawah ini:

Gambar 4.25 Tampilan Awal Program Konversi Cek

Mula-mula kita menginputkan angka 270. Sehingga, ketika di run akan

mucul tampilan seperti ini:

9:suhu:=R_ke_K(T); 10:suhu:=K_ke_C(T); 11:suhu:=K_ke_F(T); 12:suhu:=K_ke_R(T); end;writeln ('jadi suhu akhir',suhu:0:2); writeln ('ingin mengulang? (Y/N)');Until readkey='n';clrscr;gotoxy(30,15); writeln ('TERIMAKASIH'); end;End.

Page 48: tipe data dan statement control

Gambar 4.26 Tampilan Program Konversi Cek 1

Setelah bilangan diinputkan, maka secara otomatis bilangan akan

dikonversi ke tulisan. seperti terlihat pada gambar 4.26. Kemudian muncul

perintah lagi yaitu “apakah anda ingin mengulang? (Y/N)”. Kami memilih ‘Y’

dan mencoba menginputkan huruf.

Gambar 4.27 Tampilan Pogram Konversi Cek 2

Page 49: tipe data dan statement control

Hal ini terjadi karena inputnya berupa huruf dan menyebabkan pesan kesalahan

sehingga program tidak dapat berjalan dengan baik.

4.4.2 Program Konversi Suhu

Setelah kita membuat programnya maka langkah selanjutnya adalah

menampilkan hasil program yang telah dibuat. Tampilan awal pada program

konversi cek dapat kita lihat pada gambar dibawah ini:

4.28 Gambar Tampilan Awal Program Konversi Suhu

Setelah itu, akan muncul tampilan kode dimana kita disuruh memilih

jenis konversi mana yang kita ingin uji coba. Setelah itu, kita menginputkan nilai

suhu awal dimana outputnya akan menampilkan nilai suhu akhir yang telah

dikonversi tersebut. Untuk tahap ini kita menginput kode 1 dan menginput nilai

suhu sebesar 41. Setelah di run akan muncul tampilan seperti tampak pada

gambar.

Page 50: tipe data dan statement control

Gambar 4.29 Tampilan Program Konversi Suhu 1

Pada uji coba yang kedua, kami mencoba menginputkan angka 13 pada kode,

sehingga akan tampak pada layar kesalahan input. Hal ini terjadi karena pilihan

yang seharusnya dimasukkan adalah 1-12. Apabila input masukkan kode yang

kita masukkan diluar dari ketentuan tersebut, maka program tidak dapat berjalan.

Gambar 4.30 Tampilan Pogram Konversi Suhu 2

Page 51: tipe data dan statement control

4.5 Kesimpulan

Dari pembahasan dan analisa diatas, kami dapat menarik beberapa

kesimpulan, yaitu:

1. Statement pengulangan dapat mempermudah untuk melaksanakan

suatu perintah yang dilaksanakan secara berulang-ulang.

2. Pemilihan tipe data juga sangat penting dalam suatu program. Dalam

program konversi cek kami menggunakan tipe data string karena

outputnya berupa kumpulan sejumlah karakter, dan pada program

konversi suhu kami menggunakan tipe data real karena dalam

perhitungannya menggunakan operator matematika pembagian real

(/) yang memungkinkan untuk mengeluarkan output bernilai

desimal.

3. Pada program konversi cek dan program konversi suhu, kami

menggunakan validasi yang berfungsi untuk melakukan perulangan

apabila terjadi kesalahan input.

4. Penggunaan prosedur dan fungsi dapat mempermudah pembuatan

program yaitu dengan cara melakukan pemanggilan dengan cara

memanggil namanya dari program pemanggil (misalnya dari

program utama).