Académique Documents
Professionnel Documents
Culture Documents
Muhammad Romzi
KATA PENGANTAR
Logika dan Algoritma merupakan matakuliah yang mengajarkan tentang bagai mana cara penyelesaian suatu masalah berdasarkan tahapan-tahapan yang sistematis dan logis. Suatu algoritma dapat dibuktikan kebenarannya melalui komputer setelah algoritma tersebut ditranslasikan kedalam bahasa pemrograman. Bahasa pemrograman yang digunakan pada modul ini menggunakan turbo pascal 1.5 yang berjalan pada sistem operasi windows. Modul ini membahas secara ringkas tentang algoritma dan pascal, sebagai dasar bagi mahasiswa bagaimana cara membuat program komputer. Dipilihnya bahasa pascal disamping kemudahan penggunaan dan juga sebagai bekal bagi mahasiswa yang mempelajari pemrograman visual dengan menggunakan Borland Delphi. Akhir kata, penulis mengucapkan syukur Alhamdulillah modul ini dapat diselesaikan dengan baik, walaupun masih banyak kekurangan disana-sini yang perlu perbaikan dimasa yang akan datang. Oleh karena itu penulis menerima masukan dan saran dari rekan-rekan dosen pengajar matakuliah algoritma maupun masukan dari mahasiswa yang menggunakan modul ini. Mudahmudahan modul ini dapat bermanfaat baik bagi penulis sendiri maupun bagi pengguna.
Penulis
DAFTAR ISI
KATA PENGANTAR DAFTAR ISI BAB 1. Mengenal Logika dan Algoritma A. Pengertian Logika dan Algoritma.. B. Syarat-Syarat Algoritma. C. Struktur Dasar Algoritma D. Penulisan Algortima.. E. Teks Algoritma BAB 2. Mengenal Pascal (TPW 1.5) A. Sejarah.. B. Struktur Bahasa Pascal. BAB 3. Mengenal Flow chart. A. Flow Chart. B. Simbol Flow chart.. BAB 4. Pemrograman pada Pascal.. A. Translasi Teks Algoritma kedalam Pascal. B. Penulisan Kode Program pada TPW 1.5 C. Statement Input/Output D. Struktur Perulangan. E. Struktur Percabangan. F. Array. G. Prosedur. H. Fungsi.. Daftar Pustaka. Penulis. 3 3 5 5 6 7 9 9 9 15 15 15 19 19 20 26 26 32 35 35 36 37 38
Algortima Tukar_Isi_Gelas Ada dua gelas (gelas A dan gelas B), gelas A berisi Kopi dan gelas B berisi Teh. Pertukarkan isi kedua gelas tersebut sehingga gelas A yang semula berisi Kopi menjadi berisi Teh dan gelas B yang semula berisi Teh menjadi berisi Kopi Deskripsi 1. Tuangkan isi gelas A ke gelas C 2. Tungkan isi gelas B ke gelas A 3. Tuangkan isi gelas C ke gelas B
Gambar 1. Algoritma Tukar Isi Gelas (Sumber Rujukan: Rinaldi Munir,Algoritma dan Pemrograman, Informatika Bandung )
Hasil akhir dari algoritma pertukaran isi gelas menjadi: A : berisi Teh B : berisi air Kopi B. Syarat-Syarat Algoritma Syarat-Syarat Algoritma menurtu Donald E. Knuth, yaitu: 1. Finiteness (Keterbatasan) Algoritma harus berakhir setelah melakukan sejumlah langkah proses 2. Definiteness (Kepastian) Setiap langkah algoritma harus didefinisikan dengan tepat dan tidak menimbulkan makna ganda 3. Input (Masukan) Sebuah algoritma memiliki nol atau lebih masukan (input) yang diberikan kepada algoritma sebelum dijalankan 4. Output (Keluaran) Setiap algoritma memberikan satu atau beberapa hasil keluaran 5. Effectiveness (Efektivitas) Langkah-langkah algoritma dikerjakan dalam waktu yang wajar C. Struktur Dasar Algoritma Suatu Algoritma dapat terdiri dari tiga struktur dasar, yaitu runtunan, pemilihan dan pengulangan. Berikut Penjelasan ringkas dari tiga struktur tersebut : 1. Runtunan Runtunan yaitu satu atau lebih berurutan sesuai dengan urutan menentukan hasil akhir dari suatu berubah maka mungkin juga hasil instruksi yang dikerjakan secara penulisannya. Urutan dari instruksi algoritma. Bila urutan penulisan akhirnya berubah.
Dari contoh diatas dapat dilihat ternyata hasil akhirnya dapat berubah apabila urutan pengerjaannya berbeda. 2. Pemilihan Pemilihan yaitu instruksi yang dikerjakan dengan kondisi tertentu. Kondisi adalah persyaratan yang dapat bernilai benar atau salah. Instruksi hanya dilaksanakan apabila kondisi bernilai benar, sebaliknya apabila salah maka instruksi tidak akan dilaksankan. Pernyataaan kondisi menggunakan statemen If (jika) dan Then (maka). Contoh pernyataaan kondisi Jika suatu bilangan habis dibagi dua Maka bilangan itu bilangan genap 3. Pengulangan Pengulangan merupakan pengulangan sejumlah aksi yang sama sebanyak jumlah yang ditentukan atau sesuai dengan kondisi yang diinginkan. Beberapa statemen pengulangan yaitu: For To ... Do While Do Repeat ... Until / For ... Downto ... Do
D. Penulisan Algoritma Algoritma dapat ditulis dengan cara berikut: 1. Menggunakan bahasa natural 2. Menggunakan kode semu (pseudo-code) Teknik penulisan yang mendekati bahasa pemrograman tertentu 3. Menggunakan diagram alir (flow chart) Teknik penyajian dengan menggunakan symbol-simbol. Dari ketiga cara ditas untuk mempermudah translasi teks algoritma kedalam teks program sebaiknya ditulis dalam bentuk notasi yang mendekati bahasa pemrograman (pseudo-code). Contoh: Tulislah algoritma untuk mencari Luas Persegi Panjang, apabila diketahui nilai panjang 8 dan nilai lebar 5.
Bahasa Natural 1 2 3 4 5 7 Mulai Masukkan Nilai Panjang Persegi Panjang Masukkan Nilai Lebar Persegi Panjang Hitung Luas Persegi (Luas = Panjang x Lebar) Tampilkan Nilai Luas Persegi Panjang Selesai
Pseude Code 1 2 3 4 5 7 Start Input (Panjang) Input (Lebar) Luas Panjang * Lebar Output (Luas) End
E. Teks Algoritma Teks algoritma tersusun dalam tiga bagian, yaitu: 1. Bagian Kepala 2. Bagian Deklarasi 3. Bagian Deskripsi Setiap bagian disertai dengan penjelasan tentang maksud penulisan teks. Penjelasan ini ditulis dalam kurung seperti ini { } Algoritma nama_algoritma {penjelasan singkat uraian yang dilakukan oleh algoritma} Deklarasi {semua nama yang digunakan, meliputi nama-nama: tipe, konstanta, variable juga nama sub program dinyatakan dibagian ini} Deskripsi {semua langkah penyelesaian dituliskan disini}
(Sumber : Rinaldi Munir,Algoritma dan Pemrograman, Informatika Bandung )
Algoritma Cetak_Ucapan {mencetak ucapan Selamat Belajar dan diikuti dengan nama orang} Deklarasi nama : string; Deskripsi namaAhmad write(Selamat Belajar, nama)
Identifier terdiri atas: a. Identifier Umum Identifier umum merupakan identifier yang didefenisikan sendiri oleh pemrogram yang tidak boleh sama dengan identifier standard maupun identifier reserved word b. Identifier Standar Identifier standar merupakan identifier yang terdapat pada library compiler. Library berisi procedure, fungsi, unit yang siap pakai. Contoh identifier standar: Read, readln, write, writeln c. Identifier reserved word Identifier yang telah ada atau telah didefenisikan dan digunakan bahasa Pascal. Contoh identifier: Begin, end, if, else 2.1. Deklarasi Variabel dan Konstanta Variabel adalah suatu pengenal (identifier) yang digunakan untuk mewakili suatu nilai tertentu didalam proses program. Berbeda dengan konstanta yang nilainya selalu tetap, nilai dari suatu variabel dapat berubah sesuai kebutuhan. Deklarasi variabel didefenisikan sebagai berikut: Var Variabel : Tipe_Data; contoh var Nama : string;
Deklarasi konstanta didefenisikan sebagai berikut: Const pengenal = Ekspresi; 2.2. Deklarasi Tipe Tipe data dalam pascal dibedakan dalam dua macam, yaitu : tipe data dasar dan tipe data bentukan. Tipe data dasar terdiri dari: bilangan logic, bilangan bulat, bilangan Riil dan Karakter. Sedangkan tipe data bentukan terdiri dari: string, Rekaman dan tipe bentukan yang dibentuk dari tipe dasar. contoh const phi = 3.14
10
Bilangan Logik Bilangan Bulat Bilangan Riil Tipe Dasar Tipe Data TipeBentukan String Rekaman Tipe Bentukan Gambar 3. Tipe Data 2.2.1. Bilangan Logika : Boolean : Benar (True) atau salah (False) Benar (1) atau salah (0) : Not, And, Or, Xor Not Y False True Y True False True False X and Y True False False False X or Y True True True False X xor Y False True True False Karakter
Nama Tipe Rentang Nilai Operasi Y True False X True True False False
Keterangan: Not : kebalikan dari nilai yang diberikan And : bernilai benar apabila keduanya benar Or : bernilai benar apabila keduanya benar atau salah satunya benar Xor : bernilai benar apabila salah satunya saja yang benar
11
Operator Not merupakan operator Unary (hanya 1 operand) Operator AND, OR, XOR merupakan operator Binary (operator yang memerlukan 2 operand) Contoh:
AND
OPEARATOR
OPERAND
2.2.2.
Ada 5 tipe pada bilangan integer TIPE Shortint Integer Longint Byte Word RENTANG NILAI -128 .. 127 -32768 .. 32767 -2147483648 .. 2147483647 0 .. 255 0 .. 65535 UKURAN Signed 8 bit Signed 16 bit Signed 32 bit Unsigned 8 bit Unsigned 16 bit
Operasi pada bilangan bulat, terdiri dari operasi aritmatika dan operasi perbandingan. Operator Aritmatika + Penjumlahan Pengurangan * Perkalian Div Pembagian Bulat Mod Sisa hasil bagi Operator Perbandingan = Sama dengan < Lebih kecil dari > Lebih besar dari <= Lebih kecil sama dengan >= Lebih besar sama dengan <> Tidak sama dengan
12
2.2.3 Bilangan Real (Pecahan) Bilangan Real merupakan bilangan pecahan yang dinyatakan dalam bentuk eksponensial. Bilangan real memiliki beberapa macam tipe, yaitu:
x x x x
RENTANG NILAI 10-39 .. 1.7 x 1038 10-45 .. 3.4 x 1038 10-324 .. 1.7 x 10308 10-4932 .. 1.1 x 104932
Operasi pada bilangan bulat, terdiri dari operasi aritmatika dan operasi perbandingan. Operator Aritmatika + Penjumlahan Pengurangan * Perkalian / Pembagian Operator Perbandingan < Lebih kecil dari > Lebih besar dari <= Lebih kecil sama dengan >= Lebih besar sama dengan <> Tidak sama dengan
2.2.4 CHAR Char adalah semua character yang terdapat pada tombol keyboard atau semua karakter yang terdapat dalam kode ASCII. Operasi yang ada pada tipe ini hanya operasi perbandingan Operator Perbandingan = Sama dengan < Lebih kecil dari > Lebih besar dari <= Lebih kecil sama dengan >= Lebih besar sama dengan <> Tidak sama dengan Contoh a = a Hasil : True M = m Hasil : False m < z Hasil : True
13
2.2.5. STRING String adalah deretan karakter dengan panjang tertentu Operasi yag terdapat pada tipe string, yaitu: a. Operasi Penyambungan (Concatenation) Operasi penyambungan menggunakan operator + Contoh : AKMI + Baturaja b. Operasi Perbandingan Operator Perbandingan = Sama dengan < Lebih kecil dari > Lebih besar dari <= Lebih kecil sama dengan >= Lebih besar sama dengan <> Tidak sama dengan Contoh aku = akur Hasil : False aku < AKU Hasil : True 2.2.6. REKAMAN Rekaman disusun oleh satu atau lebih field. Tiap field menyimpan data dari tipe dasar tertentu yang sudah didefenisikan sebelumnya. Rekaman juga disebut dengan tipe terstruktur. 2.2.7. TIPE BENTUKAN DARI TIPE DASAR Nama baru untuk tipe bentukan dapat dibuat dengan kata kunci type. Contoh : Type Bulat : Integer; hasilnya: AKMI Baturaja
Keterangan : membuat tipe baru dengan nama bulat yang sama dengan integer.
14
Flowchart
adalah bagan-bagan yang mempunyai arus yang menggambarkan langkah-langkah penyelesaian suatu masalah. Flowchart merupakan cara penyajian dari suatu algoritma. Ada 2 jenis Flowchart : 1. System Flowchart Menggambarkan urutan proses dalam system dengan menunjukkan alat media input, output serta jenis media penyimpanan dalam proses pengolahan data. 2. Program Flowchart Menggambarkan urutan instruksi yang digambarkan dengan symbol tertentu untuk memecahkan masalah dalam suatu program. B. Simbol Flow Chart
Secara garis besar simbol Flowchart terdiri dari:
1. Simbolpenghubung alur (Flow Direction Symbols) 2. Simbol Proses (Processing Symbols) 3. Simbol Input-Output (Input-Output Symbols) Bentuk umum dari symbol-simbol Flow Chart antara lain: SIMBOL NAMA Terminator KETERANGAN Simbol Awal (Start) / Simbol Akhir (End) Simbol aliran / penghubung Perhitungan / pengolahan
Flow Line
Proses
15
Input/Output Data
Decision
Simbol pilihan
pernyataan
Preparation
16
START
INPUT (PANJANG)
INPUT (LEBAR)
OUTPUT (LUAS)
END
17
START
BYAWAL = UNIT*JML
IF BYAWAL >=100000
YES
POT= (BYAWAL*10)/100
NO
POT=0
PRINT POT
BYRAKHIR= BYAWAL-POT
PRINT BYRAKHIR
END
18
Algoritma Cetak_Ucapan {mencetak ucapan Selamat Belajar dan diikuti dengan nama} Deklarasi nama : string; Deskripsi namaAhmad write(Selamat Belajar, nama)
Program Cetak_Ucapan; Var nama : string; Begin nama:=Ahmad; write(Selamat Belajar , nama); End.
19
Penjelasan Program
1. 2. 3. 4. 5. 6. 7. 8.
1. 2. 3. 4. 5. 6. 7. 8.
Program Cetak_Ucapan; Uses wincrt; Var Nama : string; Begin Nama := Ahmad; Write (Selamat Belajar ,nama); End.
Judul algoritma menjadi judul program dan diakhiri dengan tanda titik koma (;). File library untuk unit tampilan layar Tulisan Deklarasi menjadi Var yang menandakan adanya pendeklara-sian variabel pada program. Deklarasi diatas mendeklarasikan variabel nama dengan tipe string diikuti dengan tanda titik koma (;). Blok awal program Pemberian nilai pada variabel nama dengan nilai Ahmad Menampilkan tulisan Selamat Belajar dengan disertai pemanggilan variabel nama Blok akhir program
B. Menuliskan Kode Program pada TPW 1.5 1. Menjalankan TPW 1.5 Cara menjalankan TPW 1.5 adalah sebagai berikut: 1. Klik Start Program TPW 1.5TPW 1.5
20
3.
Gambar 8. Menampil Editor Baru 4. Tuliskan kode Program pada jendela baru tersebut
Gambar 9. Menuliskan Kode Program 5. Jalankan dengan menekan tombol Ctrl dan F9 secara bersamaan atau klik menu run untuk menjalankan program
21
2. Program Error Ada kemungkinan pada saat program dijalankan akan terdapat pesan kesalahan disebabkan kesalahan penulisan program dan sebagainya. Untuk mengatasinya, perhatikan pesan kesalahan yang ditampilan yang terdapat pada bagian bawah editor program dan juga perhatikan tanda blok hitam berada. Untuk lebih jelasnya perhatikan contoh program berikut: 1.
Blok Hitam
Gambar 11. Error Program Keterangan: Saat program dijalankan terdapat tanda blok hitam, maka pusatkan perhatian dibaris mana blok hitam itu berada, perhatikan apa yang kurang pada baris tersebut, apabila tidak ada yang kurang alias sudah benar, maka perhatikan baris program yang terdapat diatas blok hitam itu. Pada baris program diatas blok hitam itu ternyata memiliki error, apa errornya?. Ternyata sesuai dengan pesan kesalahan (Error 85: ; expected) errornya yaitu kurang tanda titik koma (;) setelah Ahmad . 2 Lakukan perbaikan dengan cara menambahkan tanda titik koma (;) pada bagian yang dimaksud, setelah itu jalankan ulang kembali program dengan cara menekn tombol CTRL+F9 atau melalui Menu Run Berikut hasil program yang telah diperbaiki
22
Gambar 12. Jendela Output Progam 3. Menyimpan Program Untuk memudahkan pencarian program, biasakan menyimpan program pada folder yang telah ditentukan. Untuk itu sebelum menyimpan program, buatlah folder terlrbih dahulu dengan nama folder bebas asal mudah diingat. Sebagai contoh pada modul ini forlder dibuat dengan nama LATIHAN yang dibuat pada drive D. Langkah Peyimpanan Program sebagai berikut: 1. 2. Buat sesuai dengan nama dimaksud yaitu LATIHAN pada drive D (D:\LATIHAN) Klik menu FileSave
23
3.
Drive D:\
Gambar 14. Jendela Simpan Program 4. Double klick pada drive D:\ , hingga posisi Path berubah seperti pada gambar 16.
24
6.
Setelah posisi path drive menjadi D:\ , kemudian cari folder LATIHAN pada drive D:\ selanjutnya Klik ganda pada folder tersebut, sehingga posisi seperti gambar berikut:
Lokasi Path
Gambar 17. Path Drive D:\Latihan 7. Beri nama File dengan nama latih1.pas pada kotak File name
Gambar 18. Nam File 8. Klik OK untuk simpan program dan sekligus menutup jendela penyimpanan program.
25
C. Statement Input/Otput 1. Write/Writeln Write : Menampilkan data dalam satu baris Writeln : Menampilkan data disertai dengan penambahan baris baru Contoh: Statemen Write(Selamat ); Write(Belajar) Writeln(Selamat ); Writeln(Belajar) Hasil Selamat Belajar
Selamat Belajar
Read/Readln Statemen untuk membaca data yang diinputkan Write(Masukkan Nama : );readln(nm); Keterangan: membaca nilai yang disimpan dalam variabel nm
D. Struktur Perulangan 1. For..To..Do For to do, merupakan bentuk perulangan positip. Bentuk umum perulangan For adalah FOR [varibel perulangan] := [nilai awal] TO [nilai akhir] DO contoh: Program 1 1. 2. 3. 4. 5. 6. 7. 8. program perulangan; uses wincrt; Var a : integer; Begin For a:= 1 to 5 do writeln('AKMI); End.
26
Output Program 1 AKMI AKMI AKMI AKMI AKMI Keterangan : Program diatas menghasilkan tulisan AKMI sebanyak 5 kali Program 2 1. program perulangan; 2. uses wincrt; 3. Var 4. a : integer; 5. Begin 6. For a:= 1 to 5 do 7. writeln('a); 8. End. Output Program 2 a a a a a Keterangan : Program diatas menghasilkan huruf a sebanyak 5 kali Program 3 1. program perulangan; 2. uses wincrt; 3. Var 4. a : integer; 5. Begin 6. For a:= 1 to 5 do 7. writeln('a); 8. End. Output Program 3 1 2 3 4 5
27
Keterangan : Program diatas menghasilkan deret angka dari 1 s.d 5 Pertanyaan: Apa perbedaan antara program 2 dengan program 3 diatas? Apa pendapat anda tentang kedua program diatas? 2. For..DownTo..Do For Downto do, merupakan bentuk perulangan negatip. Bentuk umum perulangan For..DownTo..Do adalah
FOR [varibel perulangan] := [nilai akhir] DOWNTO [nilai awal] DO
contoh: Program A 1. program perulangan; 2. uses wincrt; 3. Var 4. a : integer; 5. Begin 6. For a:= 5 Downto 1 do 7. writeln('AKMI); 8. End. Output Program A AKMI AKMI AKMI AKMI AKMI Keterangan : Program diatas menghasilkan tulisan AKMI sebanyak 5 kali Program B 1. program perulangan; 2. uses wincrt; 3. Var 4. a : integer; 5. Begin 6. For a:= 5 downto 1 do 7. writeln('a); 8. End.
28
Output Program B a a a a a Keterangan : Program diatas menghasilkan huruf a sebanyak 5 kali Program C 1. program perulangan; 2. uses wincrt; 3. Var 4. a : integer; 5. Begin 6. For a:= 5 downto 1 do 7. writeln(a); 8. End. Output Program C 5 4 3 2 1 Keterangan : Program diatas menghasilkan deret angka dari dari besar ke kecil (descending) atau perulangan negatif Pertanyaan: Apa perbedaan antara program B dengan program C diatas? Apa perbedaan antara program 3 dengan program C diatas? Jelaskan perbedaan antara program A dengan program 1! Jelaskan perbedaan antara program B dengan program 2! Jelaskan perbedaan antara program C dengan program 3! 3. While..Do While Do merupakan perulangan positip. Dengan menggunakan statemen ini perulangan dilakukan selagi kondisinya terpenuhi atau kondisi Benar (True). Contoh Program, Apabila kondisinya terpenuhi:
29
Program 4 program perulangan; 1. 2. uses wincrt; Var 3. 4. a : integer; Begin 5. 6. a :=1; 7. while a < 5 do Begin 8. 9. writeln(a); 10. a := a + 1; 11. End; 12. End. Output Program 4 1 2 3 4 Keterangan: Program diatas menghasilkan deret angka 1 s.d 4 Pemberian nilai awal Contoh Program, Apabila kondisinya tidak terpenuhi: Program 5 program perulangan; 1. 2. uses wincrt; Var 3. 4. a : integer; Begin 5. 6. a :=5; 7. while a < 5 do Begin 8. 9. writeln(a); 10. a := a + 1; 11. End; 12. End. Program 5 tidak dapat menampilkan output. 4. Repeat..Until Repeat..Until merupakan perulangan positip. Perulangan akan dilakukan hingga kondisi tidak terpenuhi. Contoh Program, Apabila kondisinya tidak terpenuhi:
30
Program 5 1. Program perulangan; 2. uses wincrt; 3. Var 4. a : integer; 5. Begin 6. a :=1; 7. Repeat 8. Begin 9. writeln(a); 10. a := a + 1; 11. End; 12. until a > 5 13. End. Output Program 5 1 2 3 4 5 Contoh Program, Apabila kondisinya terpenuhi: Program 6 1. Program perulangan; 2. uses wincrt; 3. Var 4. a : integer; 5. Begin 6. a :=10; 7. Repeat 8. Begin 9. writeln(a); 10. a := a + 1; 11. End; 12. until a > 5 13. End. Output Program 6 10
31
Program 7 1. Program perulangan; 2. uses wincrt; 3. Var 4. a : integer; 5. Begin 6. a :=1; 7. Repeat 8. Begin 9. writeln(a); 10. a := a + 1; 11. End; 12. until a < 5 13. End. Output Program 7 1
Keterangan: Perulangan Repeat..Until akan melakukan perulangan minimal satu kali, berbeda dengan perulangan menggunakan while..do,. Perulangan while..do tidak akan melakukan perulangan apabila kondisinya tidak terpenuhi.
E. Struktur Percabangan Percabangan kondisi yang aksi. Pada percabangan percabangan 1. adalah bentuk penyeleksian aksi yang dilaksanakan berdasarkan ditentukan. Biasanya aksi yang diberikan terdiri lebih dari satu sebagian program yang komplek, kadangkala terdapat didalam percabangan (percabangan tersarang). Jenis yang umum digunakan antara lain:
IF..Then..Else Percabangan yang menyeleksi suatu kondisi yang saling berkaitan. Bentuk umum percabangan dengan statemen ini adalah: a. Satu Kondisi Dua Aksi IF <KONDISI> THEN <AKSI1> ELSE <AKSI2>
32
b. Lebih dari satu kondisi IF <KONDISI1> THEN <AKSI1> ELSE IF <KONDISI2> THEN <AKSI2> ELSE IF <KONDISI3> THEN <AKSI3> ELSE <AKSI4>
IF suatu bilangan habis dibagi dua Then Bilangan itu bilangan genap Else Bilangan itu bilangan ganjil Contoh Program: Menentukan apakah genap atau ganjil, berdasarkan bilangan yang dimasukkan. Program 8 1. Program percabangan; 2. uses wincrt; 3. Var 4. bil : integer; Begin 5. 6. Write(Masukkan Bilangan : ); 7. Readln(bil); If bil mod 2 = 0 then 8. 9. Writeln(Bilangan Genap) 10. Else 11. Writeln(Bilangan Ganjil); 12. End.
2.
Case..OF Percabangan yang menyeleksi suatu kondisi yang saling berlepasan. Bentuk umum percabangan dengan statemen ini adalah:
33
Case <expression> Of Case : statement; Case : statement; End Atau Case <expression> Of Case : statement; Case : statement; Else statement End Contoh Program: Menentukan predikat nilai berdasarkan masukan nilai huruf berikut: Nilai Huruf A B C D E Prdikat Istimewa Baik Cukup Buruk Buruk Sekali
Program 8 1. program percabangan; 2. uses wincrt; 3. var 4. nh : char; 5. pre : string; 6. Begin 7. write('Nilai Huruf :'); 8. readln(nh); 9. case nh of 10. 'A' : pre := 'Istimewa'; 11. 'B' : pre := 'Baik'; 12. 'C' : pre := 'Cukup'; 13. 'D' : pre := 'Buruk'; 14. 'E' : pre := 'Buruk sekali'; 15. end; 16. writeln('Predikat Nilai : ',pre); 17. end.
34
F. ARRAY Array adalah tipe data terstruktur yang dapat menyimpan lebih dari satu nilai yang sejenis. Tipe data pada array dapat berupa integer, real, char dan string. Berikut, contoh pendeklarasian array 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. program percabangan; uses wincrt; var Nmhari : array[1..7] of string; a : integer; Begin for a:= 1 to 7 do begin write('Nama Hari Ke-',a,' :'); readln(nmhari[a]); end; CLRSCR; writeln('================'); writeln('NAMA-NAMA HARI'); writeln('================'); for a:= 1 to 7 do writeln(a,' ',nmhari[a]); end.
G. Prosedur Prosedur adalah program terpisah atau subprogram yang dibuat dengan tujuan untuk menyederhanakan program. Prosedur ditulis dalam satu blok program yang cukup ditulis satu kali tetapi dapat dipanggil berulang kali. Berikut contoh penggunaan prosedur dalam program. 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. program prosedur1; uses wincrt; procedure judul; begin writeln('----------------------'); writeln(' PERKALIAN BILANGAN '); writeln('======================'); end; var a, b : integer; begin write('Masukkan Bilangan Pertama : ');
35
readln(a); write('Masukkan Bilangan Kedua : '); readln(b); judul; writeln('Billangan Pertama : ',a); writeln('Billangan Kedua : ',b); writeln('Hasil Perkalian : ',a*b); end.
H. Fungsi Fungsi hampir sama dengan prosedur, perbedaannya fungsi harus dideklarasikan dengan tipenya. Tipe deklarasi menunjukkan tipe hasil dari fungsi. Cara penulisan function adalah: FUNCTION identifier(parameter) : type Contoh: function perkalian (var a,b :integer):integer; Berikut contoh penggunaan fungsi dan prosedur dalam program. 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. program prosedur1; uses wincrt; procedure judul; begin writeln('----------------------'); writeln(' LUAS PERSEGI PANJANG '); writeln('======================'); end; function perkalian (var a,b : integer): integer; begin perkalian := a * b; end; var pj, lb : integer; begin write('Masukkan Nilai Panjang : '); readln(pj); write('Masukkan Nilai Lebar : '); readln(lb); judul; writeln('Nilai Panjang : ',pj); writeln('Nilai Lebar : ',lb);
writeln('Luas Persegi Panjang : ',perkalian(pj,lb));
end.
36
DAFTAR PUSTAKA Jogiyanto H.M. 1997. Turbo Pascal. Andi Offset Yogyakarta Rinaldi Munir. 2001. Algoritma dan Pemrograman Dalam Bahasa Pascal dan C, Buku 1. Informatika Bandung
37
PENULIS Muhammad Romzi, mengajar di AMIK AKMI Baturaja sejak tahun 2002 dengan riwayat sebagai berikut: Amanah Jabatan: 1. 2. 3. 4. 5. Ka. Ka. Ka. Ka. Ka. LPPM AKMI Baturaja, tahun 2004 Perpustakaan AKMI Baturaja, tahun 2005 BAAK AKMI Baturaja, tahun 2007 Prodi MI, tahun 2008 BPM, tahun 2012
38