34
 BAB I DASAR PEMROGRAMAN KOMPUTER 1.1. Definisi Pemrograman Pemrograman adalah proses menulis, menguji dan memperbaiki ( debug ), dan memelihara kode yang membangun sebuah program komputer. Kode ini ditulis dalam berbagai bahasa pemrograman . Tujuan dari pemrograman adalah untuk memuat suatu program yang dap at mel akuk an sua tu perh itun gan atau 'pek erja an' sesu ai den gan keingi nan si pe mr og ram. Un tuk da pat melakukan pemr og raman, diperlukan keterampi lan dalam algoritma, logika, bahasa pemrogra man, dan di banya k kasus, pengetahuan-pengetahuan lain seperti matematika. Pemro gra man adalah seb uah sen i dalam me nggunakan sat u atau lebih algoritma yang sa li ng be rhub un ga n de ng an me ng gu na ka n se bu ah bahasa pemrograman tertentu sehi ngga me nj ad i sebu ah pr og ram ko mput er . Bahasa pemrograman yang berbeda mendukung gaya pemrograman yang berbeda pula. Gaya pemrograman ini biasa disebut paradigma pemrograman . Apakah memprogram perangkat lunak lebih merupakan seni,  ilmu, atau teknik telah lama diperdebatkan. Pemrogram yang baik biasanya mengkombinasikan tiga hal tersebut, agar dapat menciptakan program yang efisien, baik dari sisi waktu berjalan (running time), atau memori. 1.2 Bahasa Pemrograman Bahasa pemrograman, atau sering diistilahkan juga dengan bahasa komputer , adalah teknik komando/instruksi standar untuk memerintah komputer . Bahasa pemrograman ini merupakan suatu set aturan sintaks dan semantik yang dipakai untuk mendefinisikan program kompute r . Bah asa ini memung kink an seor ang prog rammer da pat menent ukan secara persis da ta mana yang akan di ol ah ol eh komput er , bagaimana data ini akan disimpan/diteruskan, dan jenis langkah apa secara persis yang akan diambil dalam berbagai situasi. 1.3. Kebutuhan Pemrograman Untuk melakukan pemrograman komputer dibutuhkan beberapa hal anatara lain : a. Logika dan analisa Langka h awal yang harus dilakukan adalah mengid entifikasikan masalah antara lain tujuan dari pembuatan program, parameter-parameter yang digunakan dsb. Jika tidak menggunakan logika dan analisa yang baik maka dari awal kita sudah gagal untuk menyelesaikan masalah atau membuat sutau program. b. Algoritma Algoritma adalah urutan langkah-langkah logika yang menyatakan suatu tugas dalam menyelesaikan suatu masalah atau problem. Pemrograman Pascal Halaman 1

Buku Pascal New

Embed Size (px)

Citation preview

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 1/34

 

BAB IDASAR PEMROGRAMAN KOMPUTER

1.1. Definisi Pemrograman

Pemrograman adalah proses menulis, menguji dan memperbaiki (debug ), danmemelihara kode yang membangun sebuah program komputer. Kode ini ditulis dalamberbagai bahasa pemrograman. Tujuan dari pemrograman adalah untuk memuat suatuprogram yang dapat melakukan suatu perhitungan atau 'pekerjaan' sesuai dengankeinginan si pemrogram. Untuk dapat melakukan pemrograman, diperlukanketerampilan dalam algoritma, logika, bahasa pemrograman, dan di banyak kasus,pengetahuan-pengetahuan lain seperti matematika.

Pemrograman adalah sebuah seni dalam menggunakan satu atau lebihalgoritma yang saling berhubungan dengan menggunakan sebuah bahasa pemrograman tertentu sehingga menjadi sebuah program komputer. Bahasa pemrograman yang berbeda mendukung gaya pemrograman yang berbeda pula. Gaya

pemrograman ini biasa disebut paradigma pemrograman.

Apakah memprogram perangkat lunak lebih merupakan seni,  ilmu, atau teknik telah lama diperdebatkan. Pemrogram yang baik biasanya mengkombinasikan tiga haltersebut, agar dapat menciptakan program yang efisien, baik dari sisi waktu berjalan(running time), atau memori.

1.2 Bahasa Pemrograman

Bahasa pemrograman, atau sering diistilahkan juga dengan bahasa komputer ,adalah teknik komando/instruksi standar untuk memerintah komputer . Bahasapemrograman ini merupakan suatu set aturan sintaks dan semantik yang dipakai untukmendefinisikan program komputer . Bahasa ini memungkinkan seorang programmer dapat menentukan secara persis data mana yang akan diolah oleh komputer,bagaimana data ini akan disimpan/diteruskan, dan jenis langkah apa secara persis yangakan diambil dalam berbagai situasi.

1.3. Kebutuhan Pemrograman

Untuk melakukan pemrograman komputer dibutuhkan beberapa hal anatara lain :

a. Logika dan analisa

Langkah awal yang harus dilakukan adalah mengidentifikasikan masalah antaralain tujuan dari pembuatan program, parameter-parameter yang digunakan dsb. Jikatidak menggunakan logika dan analisa yang baik maka dari awal kita sudah gagaluntuk menyelesaikan masalah atau membuat sutau program.

b. Algoritma

Algoritma adalah urutan langkah-langkah logika yang menyatakan suatu tugasdalam menyelesaikan suatu masalah atau problem.

Pemrograman Pascal Halaman 1

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 2/34

 

Contoh : Buat algoritma untuk menentukan apakah suatu bilangan merupakanbilangan ganjil atau bilangan genap.Algoritmanya :

1. Bagi bilangan dengan bilangan 22. Hitung sisa hasil bagi pada langkah 1.3. Bila sisa hasil bagi sama dengan 0 maka bilangan itu adalah bilangan genap tetapi

bila sisa hasil bagi sama dengan 1 maka bilangan itu adalah bilangan ganjil.

c. Folwchart

Flowchart adalah gambaran dalam bentuk diagram alir dari algoritma-algoritmadalam suatu program, yang menyatakan arah alur program tersebut. Berikut adalahbeberapa simbol yang digunakan dalam menggambar suatu flowchart :

SIMBOL NAMA FUNGSI

TERMINATOR Permulaan/akhir program

GARIS ALIR(FLOW LINE)

Arah aliran program

PREPARATIONProses inisialisasi/pemberian

harga awal

PROSESProses perhitungan/proses

pengolahan data

INPUT/OUTPUT

DATA

Proses input/output data,

parameter, informasi

DECISION

Perbandingan pernyataan,penyeleksian data yang

memberikan pilihan untuk langkahselanjutnya

ON PAGECONNECTOR

Penghubung bagian-bagianflowchart yang berada pada satu

halaman

OFF PAGECONNECTOR

Penghubung bagian-bagianflowchart yang berada pada

halaman berbeda

Pemrograman Pascal Halaman 2

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 3/34

 

Contoh program membuat nasi goring yang disajikan dalam bentuk flowchart

contoh lain untuk menyelesaikan algoritma diatas. Menentukan bilangan ganjil ataugenap.

Pemrograman Pascal Halaman 3

 Y  T

begin

Bumbu, nasi ,penggorengan,

telor

Campur nasidengan bumbu

dan telor

A

A

 

ApakahSudah

matang ?

Hidangkannasi goreng

End

Digoreng

B

B

 Y

 Y

 T

begin

A

B= A mod 2

A

A

B = 0

WriteGenap

writeGanjil

End

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 4/34

 

d. Bahasa pemrograman

Bahasa yang digunakan adalah pascal dan akan di bahas secara detail padabab-bab selanjutnya.

Tugas

1. Disediakan dengan volume 8 liter dan diisi air hingga penuh, kemudiandisediakan gelas lain dengan volume 5 liter dan 3 liter tetapi isinya kosong.Bagaimana cara anda menghasilkan 4 liter air dari ketiga gelas tersebut!Jelaskan algoritmanya !

2. Si A mempunyai 3 roti, si B mempunyai 5 roti kemudian datang si C yang tidakpunya roti dan ingin makan roti. Dan si C membayarkan 8 dolar kepada A dan Bagar bias-bisa makan roti bersama. Jika roti itu terbagi dengan adil, berapa dolar yang didapat masing-masing A dan B ?

3. Buat flowchart bagaimana cara menampilkan bilangan :a. Genap dari 0 sampai dengan n masukkanb. Ganjil dari 0 sampai dengan n masukkanc. 1 -2 3 -4 5 -6 dst sejumlah n masukkand. 2 2 4 4 2 2 4 4 dst sejumlah n masukkan

Happy Programming !

Pemrograman Pascal Halaman 4

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 5/34

 

BAB 2DASAR-DASAR BAHASA PASCAL

2.1 Pengenalan : menulis, menyimpan, run, compile .

Run adalah menjalankan program yang diketik pada jendela editor. Compileadalah mengubah bahasa pemrograman tingkat tinggi yang telah diketik ke bahasamesin dan menyimpannya ke disk dalam bentuk Executetable program. Pada FreePascal proses menyimpan biasanya diarahkan ke memori atau disk.

Latihan 1

Langkah- Langkah membuat dan menjalankan program :1. Tulis potongan program dibawah (Program ini menampilkan sebuah kalimat di layar)

{ File : first.pas }

Program kesan;Beginwriteln(‘Pemrograman komputer menyenangkan’);

End.

2. Simpan kedalam file first.pas.3. Compile program ini .4. Jalankan menu run.

Latihan 2

1. Sekarang buat file baru seperti di bawah ini dengan nama konstant1.pas. Beikutadalah metode belajar dengan mengamati dari contoh dan memahami. Jadi tulis dulu

program di bawah ini dan jalankan lalu baca penjelasan lanjut mulai dari 2.2 sampai 2.9. 

{ File : konstant1.pas }Program konstan ;ConstPi = 3.1415;Var r : real ;luas : real ;BeginWrite('Masukkan jari-jari lingkaran =');Readln(r);luas := pi*r*r;Writeln('Luas lingkaran = ',luas:12:3);Readln;End.

Pemrograman Pascal Halaman 5

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 6/34

 

2.2 Kerangka Program Pascal

Program Free Pascal merupakan kumpulan fungsi, prosedur dan variable.Sebuah fungsi merupakan sekumpulan baris program yang mengerjakan tugas tertentudan mengembalikan hasilnya. Sebuah fungsi terdiri dari sebuah nama fungsi, daftar variabel, satu blok kode yang membentuk fungsi tersebut. Sebuah blok dimulai oleh kata

“begin“ , diikuti dengan beberapa statement dan diakhiri dengan kata “end.”. Setiapprogram Pascal diawali dengan pemanggilan tag  program nama ,begin dan diakhiridengan end . Untuk lebih jelasnya dapat dilihat kerangka utama dari program pascalberikut :

PROGRAM namaProgram (FileList );CONST{ deklarasi Constant } ----- bila diperlukanTYPE{ deklarasi Type } ----- bila diperlukanVAR{ deklarasi Variable } ----- tempat mendaftar variabel  

BEGIN{ Statemen yang akan dijalankan(execute) }END.

2.3 Tanda-tanda baca dalam pascal

Program Free Pascal mempunyai beberapa tanda baca dalam tata tulispemrogramannya. Berikut beberapa tanda baca yang ada dalam bahasa pascal berikutfungsinya :

2.4 Tipe Data

Tipe data menyatakan pola penyajian data dalam komputer: karakter, bilangan,

string, record. Dalam Pascal tipe data digolongkan menjadi 4 yaitu tipe data standart,tipe data didefinisikan oleh pemakai, tipe data terstruktur dan tipe data penunjuk. Tabeldibawah menampilkan beberapa tipe data standart dan domainnya, yang dikenal dalamFree Pascal.

a. Tipe data integer Adalah tipe data yang digunakan untuk menampung seluruh angka bulat.

Pemrograman Pascal Halaman 6

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 7/34

 

b. Tipe data realAdalah tipe data yang digunakan untuk menampung angka pecahan atau

decimal.

c. Tipe data booleanAdalah tipe data yang hanya memiliki 2 nilai yaitu true atau false.

d. Tipe data char dan stringTipe data char adalah tipe data yang hanya memuat satu karakter saja. Karakter 

adalah seluruh tombol yang ada di keyboard selain tombol fungsi. Sedangkan tipe datastring adalah tipe data yang memuat banyak karakter maksimal terdiri dari 255 karakter.Selain tipe data diatas free pascal juga menyediakan banyak tipe data lain yang tidakdapat tertuangkan dalam buku ini.

2.5 Variable

Variabel adalah penampung data yang isinya dapat diubah-ubah didalam program.Data yang dapat disimpan adalah data sesuai dengan tipenya. Nama variabel terdiri darihuruf, angka dan garis bawah, dan hanya dapat didahului oleh huruf atau garis bawah,dengan ketentuan:a) Nama variabel tidak dapat disela dengan spasi.b) Tidak dapat menggunakan reseved words.

Pemrograman Pascal Halaman 7

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 8/34

 

c) Huruf besar dan huruf kecil sama saja.d) Panjang variabel yang dianggap/dikenal hanya 63 karakter pertama

a. Deklarasi VariableSebelum bisa digunakan maka variable harus dideklarasikan terlebih dahulu.

Pendeklarasian berarti memesan ruang di memori dan menyatakan tipe data yang bisa

disimpannya.

Bentuk umum :Var daftar_variabel : tipe_data;

Contoh :Var inc1,bil1 : integer;flag1 : char;nama : array[1..10] of char;

b. Pemberian nilai ke VariablePemberian nilai hanya bisa dilakukan setelah sebuah variable dideklarasikan.

Bentuk umum :variabel := nilai;

Contoh :inc1: = 0;bil1 := 10;

2.6. Konstanta

Konstanta berbeda dengan variable, dimana isi dari konstanta tidak bisa diubahdengan cara pemberian (assignment) nilai.

Bentuk umum :constvariabel=nilai;

Contohconstpi = 3.14;ch1 = 'A';

2.7. Menampilkan Data dengan write dan writeln.

Perintah write/writeln adalah perintah untuk mencetak data ke layar. Perbedaan darikeduanya adalah perintah write digunakan untuk mencetak data ke layar tanpa bergantibaris setelahnya. Sedangkan perintah writeln digunakan untuk mencetak data ke layar dengan berganti baris setelahnya.

Adapun bentuk penulisannya :Write(’tulisan’);Write(variable);

Pemrograman Pascal Halaman 8

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 9/34

 

Jika yang ingin dicetak hanya tulisan biasa maka diberi tanda petik (’ ’) tapi jika yangingin dicetak adalah nilai dari suatu variabel maka tidak perlu diberi tanda petik (’ ’).

Write dan writeln punya kekhususan pada penulisan tipe data real misal pada contohdiatas :

Writeln(’Luas lingkaran = ’,luas:12:3);

Perintah diatas maksudnya akan menampilkan nilai dari variabel luas dengan 12angka di depan koma dan 3 angka di belakang koma. Jika ada angka 0 di depan nilaitidak dianggap atau tidak dituliskan sehingga dengan kata lain jika 12 kita ganti denganangka lain tidak ada bedanya. Jadi yang berpengaruh hanya angka dibelakang koma.Tapi tetap saja penulisannya harus seperti diatas. Sekali lagi kekhususan ini hanyauntuk kumpulan variabel beritpe data real.

Untuk mencetak pada posisi x,y layar, digunakan perintah GOTOXY baru setelah itudigunakan perintah write. Untuk dapat menggunakan perintah ini program harusmelibatkan unit standar Crt. (Diberi tulisan uses crt; dibawah tulisan program).

Bentuk UmumGotoxy(Xpos, Ypos);

2.8. Menerima Masukan dengan read dan readln.

Prosedur read dapat digunakan untuk menerima masukan dari keyboard. Tiap-tiap data yang dimasukkan harus sesuai dengan tipe variabelnya. Prosedur readln untukmemasukkan data perbaris, artinya setelah ditekan maka akan ganti baris, sedangkanprosedur read tidak.

Bentuk Umumread (nama_variabel);

Contoh:read(bil1);readln(bil1);

Namun pada umunya antara read dan readln tidak ada bedanya jika yang dibacasatu nilai tapi apabila membaca nilai lebih dari satu dilakukan bersamaan maka akanterlihat beda read dan readln.

 Tugas

1. Sebutkan syarat-syarat penulisan variabel !2. Jika dalam sebuah program masukan yang diinginkan adalah nama orang maka tipedata apa yang digunakan untuk membacanya ? jelaskan alasannya !3. Sekarang pahami program di latihan 2 dengan seksama lalu cobalah membuat sendiriprogram menghitung luas lingkaran tanpa melihat program yang ada sebelumnya!

Pemrograman Pascal Halaman 9

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 10/34

 

BAB 3OPERATOR

Operator merupakan simbol atau kata yang digunakan untuk operasi danmanipulasi data dalam. Dalam bahasa Pascal Operator dikelompokkan ke dalam 9

kategori.

3.1. Operator Assignment.

Merupakan operator yang berfungsi untuk memberikan suatu nilai ke sebuahvariabel.Bentuk umumVariabel := 50,75;

3.2. Operator Binary.

Merupakan operator yang berfungsi untuk mengoperasikan dua operand.

Operand dapat berupa konstanta ataupun variabel. Digunakan untuk operasiarithmatika.

Latihan 1{ File : opr_binary.pas }

Program binary;Begin

writeln(' 5 + 3 = ',5+3);

writeln(' 3 - 5 = ',3-5);writeln(' 5 * 3 = ',5*3);

writeln(' 5 / 3 = ',5/3);

writeln(' 5 Div 3 = ',5 div 3);writeln(' 5 mod 3 = ',5 mod 3);

readln;

End.

3.3 Operator Bit.

Merupakan operator yang berfungsi untuk operasi bit per bit pada nilai integer.

Pemrograman Pascal Halaman 10

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 11/34

 

Latihan 2

{ File : opr_bit.pas }Program opr_bit;

Begin

Writeln('not 0 =',not 0);Writeln('not 8 =',not 8);

Writeln('1 or 2 =',1 or 2);

Writeln('1 and 2 =',1 and 2);

End.

Penjelasan latihan 21. Perintah not mempunyai rumus sbb :

Not(a) = (-a) -1

2. Untuk mengetahui hasil operasi or perlu terlebih dahulu mengetahui bilanganbasis.Misal : Basis 2 dari 1 = 1

Basis 2 dari 2 =10Jika dioeparsikan dalam or adalah sebagai berikut :

1 = 012 = 10

--- or 11

Basis 10 dari 11 adalah 3

Tabel kebenaran or 

A B A or B

0 0 0

0 1 1

1 0 1

1 1 1

3. Sama seperti or, Jika dioeparsikan dalam and adalah sebagai berikut :1 = 012 = 10

--- and11

Pemrograman Pascal Halaman 11

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 12/34

 

Basis 10 dari 0 adalah 0

Tabel kebenaran and

A B A and B

0 0 0

0 1 0

1 0 0

1 1 1

3.4 Operator Relasi.

Merupakan operator yang berfungsi untuk membandingkan hubungan antaradua buah operand dan akan didapatkan hasil tipe boolean, yaitu true atau false.

3.5 Operator Logika

Terdapat 4 buah operator logika , yaitu Not, And, Or dan Xor. Bentuk operator inisama dengan operator bit, namun penggunaannya lain. Operator ini bekerja dengannilai-nilai logika, yaitu true dan false.Tabel Kebenaran Operator Logika.

Pemrograman Pascal Halaman 12

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 13/34

 

Latihan 3

{ File : opr_rel.pas }Program opr_rel;

Var 

a, b : Integer;

Begina:=5;

 b:=3;writeln(a,'=',b,' ? ',a=b);

writeln(a,'<>',b,'? ',a<>b);

writeln(a,'>',b,' ? ',a>b);writeln(a,'<',b,' ? ',a<b);

writeln('(',a,'<',b,') or (',a,'=',b,') ? ',(a=b) or (a<b));

writeln('(',a,'> 4 ) and ( 4 >',b,') ? ',(a>4) and (4>b));

readln;End.

3.6 Operator String

Merupakan operator yang digunakan untuk operasi string. String adalahkumpulan karakter.

Bentuk umumString1 + String 2;

Latihan 4

{ File : opr_str.pas }Program opr_str;Uses crt;

Var 

 Nama1, Nama2, Nama3 : String[15];Begin

Clrscr;

 Nama1:='Budi '; Nama2:='Santosa';

 Nama3:=Nama1+Nama2;

writeln(Nama3);

readkey;End.

Tugas1. Buat program perhitungan konversi temperatur dari Fahrenheit ke Celcius!

2. Buat program untuk menghitung kecepatan (S/t) ! input berupa jarak dan waktu.

3. Buat program yang menerima input bilangan antara 1 dan 9999 dan menulissetiap digitnya per baris!

Pemrograman Pascal Halaman 13

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 14/34

 

BAB 4STRUKTUR KONTROL PEMILIHAN

Program dalam bahasa Pascal tersusun dari baris- baris pernyataan. Eksekusibaris- baris pernyataan ini dapat

dilakukan dengan struktur kontrol :1. Runtunan (Sequence)2. Pemilihan (Selection)3. Pengulangan (Repetiton)Ketiga struktur tersebut dapat menggunakan operator relasi ataupun operator logika.

4.1 Pernyataan if dengan Satu Aksi

Gambar 3.1. Flowchart pernyataan if dengan satu aksi.

Pada model pernyataan pada gambar 3.1., sebuah aksi akan dikerjakan jikasyarat bernilai benar.

Bentuk umum:if  (syarat) then

aksi1;

Aksi bisa terdiri sari satu baris pernyataan atau berupa sekumpulan (blok) barispernyataan.

Latihan 1

{ File :if1.pas }Program if1;Uses crt;Var a : Integer;Begin

Writeln('Contoh if satu kasus ');Write('Ketikkan suatu nilai integer :');Readln(a);If(a>0) then

beginWriteln('Nilai ',a,' adalah nilai positif');End;

Readkey;End.

Pemrograman Pascal Halaman 14

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 15/34

 

4.2. Pernyataan if dengan Dua Aksi

Pada model pernyataan gambar 3.2., aksi1 akan dikerjakan jika syarat bernilaibenar, sedangkan jika salah maka aksi2 yang dikerjakan.Bentuk umum:if (syarat) then

aksi1elseaksi2;

Gambar 4.2. Flowchart pernyataan if dengan dua aksi.

Latihan 2

{file : if2.pas}Program if2;Var a : Integer;BeginWriteln('Contoh if dua kasus ');Write('Ketikkan suatu nilai integer :');Readln(a);If(a>0) then

beginWriteln('Nilai ',a,' adalah nilai positif');End

ElsebeginWriteln('Nilai ',a,' adalah nilai negatif');End;

Readln;End.

4.3 Pernyataan if dengan lebih dari dua aksi

Karena pilihan aksi yang dikerjakan lebih dari dua, maka dapat dibuat modelbertingkat/ bersarang /nested.

Pemrograman Pascal Halaman 15

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 16/34

 

Gambar 4.3. Flowchart pernyataan if dengan dua aksi.

Bentuk umum:if (syarat1) thenaksi1elseif (syarat2) thenaksi2elseaksiN;

Latihan 3

{ File : if3.pas }Program if3;Var a : Integer;BeginWriteln('Contoh if dua kasus ');Write('Ketikkan suatu nilai integer :');Readln(a);If(a>0) then

beginWriteln('Nilai ',a,' adalah nilai positif');end

else If (a=0) thenbegin

Writeln('Nilai ',a,' adalah nol');end

elsebeginWriteln('Nilai ',a,' adalah nilai negatif'); ;end;

Readln;end.

Pemrograman Pascal Halaman 16

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 17/34

 

Catatan:Jika pernyataan aksi hanya terdiri dari 1 baris perintah maka pada if tidak

perlu diberi begin end. Tetapi jika lebih dari 1 tetap menggunakan begin end. Sehinggalatihan 3 dapat ditulis sebagai berikut :

{ File : if3.pas }

Program if3;Var a : Integer;BeginWriteln('Contoh if dua kasus ');Write('Ketikkan suatu nilai integer :');Readln(a);If(a>0) then

Writeln('Nilai ',a,' adalah nilai positif')else If (a=0) then

Writeln('Nilai ',a,' adalah nol')else

Writeln('Nilai ',a,' adalah nilai negatif'); ;Readln;end.

Perhatikan perintah writeln yang terletak dalam if ! ada yang tidak menggunakantanda ; dan ada yang menggunakan. Tanda ; digunakan untuk mengakhiri seluruhperintah if. jadi baru diberi setelah pernyataan else yang terakhir.

4.4. Pernyataan case

Tangga if-else-if  dapat digunakan menguji beberapa syarat tetapi sulit dalamaplikasinya. Untuk itu dapat digunakan pernyataan case-of , sebuah variabel dapatsecara berturut-turut diuji oleh daftar konstanta (bilangan bulat atau karakter). Jikasesuai dengan sebuah konstanta, maka dikerjakan sesuai dengan pernyataan yangmengikuti konstanta tersebut.

Pernyataan setelah else akan dikerjakan bila tidak ada konstanta yang tidaksesuai. Else bersifat optional,bila tidak ada else maka tidak ada yang dikerjakan. Adabeberapa hal yang perlu diperhatikan:a) Case-of hanya dapat memeriksa sebuah konstanta atau range dari konstanta yangbukan bertipe real,sedang if dapat memeriks syarat-syarat lain(>,<,<>,dsb).b) Tidak ada dua konstanta yang sama dalam sebuah case.

Bentuk Umum :Case variabel of 

{konstanta1 : pernyataan;konstanta2 : pernyataan;..Else pernyataan;}

Pemrograman Pascal Halaman 17

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 18/34

 

Latihan 4

{ File : case-of.pas }Program caseof;Var cc:char;BeginWriteln('Ketikkan sebuah huruf ,akhiri dengan Enter : ');

Read(cc);Case cc of 

'0'..'9' : writeln('Yang anda ketik adalah angka');'a','e','i','u','o' : writeln('Yang anda ketik adalah huruf vokal');'b'..'d','f'..'h','j'..'n','p'..'t','v'..'z' : writeln('Yang anda ketik adalah huruf konsonan');

Elsewriteln('Yang anda ketik adalah karakter');

End;Readln;End.

Pemrograman Pascal Halaman 18

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 19/34

 

Tugas

1. Buatlah program yang menentukan apakah suatu bilangan ganjil atau genap !

2. Buatlah program untuk yang memasukkan 2 angka kemudian diberikan pilihanuntuk mengkali, membagi, menambah atau menguranginya !3. Buatlah program yang menyatakan hadiah bagi orang yang belanja denganinputan total belanja.

Total belanja HadiahHarga >100000 Baju1000000>=Harga>100000 Topi100000>=Harga>10000 PermenHarga <=10000 Senyum dari kasir  

Pemrograman Pascal Halaman 19

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 20/34

 

BAB 5STRUKTUR KONTROL PERULANGAN

Struktur kontrol pengulangan dalam bahasa pemrograman dikenal dengan loop.Pengulangan dilakukan terus sampai dipenuhi keadaan tertentu. Dalam pascal dikenal

tiga jenis pengulangan dan pernyataan yang digunakan adalah:1. for 2. while-do3. repeat-until

5.1. Pengulangan dengan for Perulangan for dapat berbentuk perulangan positif, negatif dan bersarang. Pada

pengulangan dengan for diperlukan variabel kontrol, nilai awal untuk inisialisasisehingga pengulangan bisa dilakukan,dan nilai akhir untuk kondisi mengakhiripengulangan.

Bentuk Menaik :

for variabel-kontrol:=nilai-awal to nilai-akhir dopernyataan;

Bentuk Menurun :for variabel-kontrol:=nilai-awal downto nilai-akhir dopernyataan;

Bentuk loop dalam loop :for variabel-kontrol1:=nilai-awal1 to nilai-akhir1 dofor variabel-kontrol2:=nilai-awal2 to nilai-akhir2 dopernyataan;

Latihan 1{ File : writefor.pas }Program WriteFor;Var i,N: Integer;BeginWriteln('Baca N, print 1 s/d N');Write('N=');Read(N);For i:=1 to N do

BeginWriteln(i);

End;Writeln('Akhir program');Readln;End.

Pemrograman Pascal Halaman 20

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 21/34

 

Latihan 2Perulangan dengan menggunakan for naik.

{ File : fornaik.pas }Program ForNaik;Var i,awal,akhir : Integer;

Beginawal:=1;akhir:=5;for i:=awal to akhir do

BeginWriteln(i);End;

End.

Latihan 3Perulangan dengan menggunakan for turun.

{ File : forturun.pas }Program ForTurun;Var i,bawah,atas : Integer;Beginbawah:=1;atas:=5;for i:=atas to bawah do

Beginwriteln(i);read(i);

End.

Latihan 4Perulangan dengan menggunakan for dengan batas merupakan karakter bukan integer.

{ File : forchr.pas }Program forChr;Uses crt;Var ch:char;BeginFor ch:='a' to 'z' do

BeginWrite(ch);End;

Readkey;End.

Pemrograman Pascal Halaman 21

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 22/34

 

Latihan 5Perulangan dengan for bersarang.

{File : srgloop.pas }Program srgloop;Uses crt;Var 

i,j:integer;BeginClrscr;Writeln('Contoh loop dalam loop');For i:=1 to 3 do

beginFor j:=1 to 3 do

BeginWrite('*');End;

Writeln;End;

End.

Catatan : Sama seperti if jika aksi dari for hanya terdiri dari 1 baris perintah maka begindan and dapat dihilangkan. Tetapi jika aksi dari for lebih dari 1 baris tetap menggunakanbegin end. Sehingga latihan 5 dapat ditulis sebagai berikut :

{File : srgloop.pas }Program srgloop;Uses crt;Var i,j:integer;BeginClrscr;Writeln('Contoh loop dalam loop');For i:=1 to 3 do

BeginFor j:=1 to 3 do

Write('*');Writeln;End;

End.

5.2. Pengulangan dengan while do.

Pada pengulangan jenis ini, pengecekan syarat dilakukan diawal. Pengulangandengan while-do ini digunakan untuk melakukan proses perulangan suatu pernyataanatau blok pernyataan terus-menerus selama kondisi ungkapan logika pada syarat masihbernilai logika benar.

Pemrograman Pascal Halaman 22

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 23/34

 

Gambar 4.2. Flowchart while do.

Bentuk Umum :While syarat doperintah;

Latihan 6{ File : while.pas }Program _while;Uses crt;Var i: Integer;Begini:=1;while i<=5 do

beginwriteln(i);i:=i+1;

end;readkey;End.

Latihan 7

{ File : priwhile.pas }Program priwhile;Var N,i: Integer;BeginWriteln('Nilai N=');Read(N);

i:=1;while i<=N do

beginwriteln(i);i:=i+1;end;

readln;End.

Pemrograman Pascal Halaman 23

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 24/34

 

Latihan 8

{ File : whiledo.pas }Program whiledo;Uses crt;Var nama : String[20];

BeginClrscr;Write('Ketik nama siswa( X=selesai):');Readln(nama);While(nama[1]<>'X') do

BeginWrite('Ketik nama siswa( X=selesai):');Readln(nama);End;

End.

5.3. Loop Repeat...Until.

Berbeda dengan dua jenis pengulangan sebelumnya, syarat pengulangan padarepeat...until dicek pada akhir perulangan. Repeat...Until digunakan untuk mengulangstatemen-statemen sampai (until) kondisi yang diseleksi di Until terpenuhi.

Bentuk Umum:repeatperintah…until syarat;

Latihan 8

{ File : repeatUn.pas }Program RepeatUntil;Var i : Integer;Begini:=0;Repeat

Writeln(i);i:=i+1;

until i=5;End.

Tugas1. Buatlah program untuk menghitung nilai faktorial dari angka yang dimasukkan !2. Buatlah program untuk menentukan faktor kali dari angka yang dimasukkan !

3. Buatlah program yang memasukkan username dan password. Komputer akanterus menanyakan username dan password sampai user mengisikannya denganbenar! (Username = smala dan password = 12345)

Pemrograman Pascal Halaman 24

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 25/34

 

BAB 6ARRAY

6.1. Array Satu Dimensi

Array adalah deretan variabel yang berjenis sama dan menpunyai nama yangsama. Pada bahasa Pascal, array mempunyai lokasi yang bersebelahan, alamat terkecilmenunjukan elemen pertama dan alamat terbesar menunjuk pada alamat terakhir.

Bentuk umum :nama_array:array [ukuran] of tipetipe = menyatakan tipe data dasar ukuran = menyatakan banyaknya element pada array

Contoh :Nilai: array[1..10] of Integer;

Latihan 1{File : tabel.pas}Program tabel;Uses crt;Var i,N : Integer;tab : array[1..10] of Integer;beginclrscr;N:=5;Writeln('Isi dan print tabel');For i:=0 to N do

BeginTab[i]:=i;End;

For i:=0 to N doBeginwriteln('Tabel[',i,']=',tab[i]);End;

Readkey;end.

Pemrograman Pascal Halaman 25

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 26/34

 

Latihan 2

{File : tab_rata.pas}Program rata;Uses crt;ConstMAKS_TES = 5;

Var i : Integer;nilai_total,rata_rata : Real;nilai_test : array[1..MAKS_TES] of Real;BeginWriteln('Pemasukan 5 buah nilai pada tabel');For i:=1 to MAKS_TES do

BeginWrite('Nilai tes ke ',i,' : ');Readln(nilai_test[i]);End;

nilai_total:=0;

for i:=1 to MAKS_TES dobeginnilai_total:=nilai_total+nilai_test[i];end;

Rata_rata := nilai_total/MAKS_TES;Writeln('Nilai rata-rata : ',rata_rata:3:2);Readkey;End.

6.2 Array Multi Dimensi

Dalam bahasa Pascal kita dapat membuat array hingga beberapa dimensi,misalnya array dua dimensi yangpada dasarnya adalah sebuah daftar yang terdiri array-array satu dimensi.

Bentuk umum :nama_array : array[ukuran1] of array[ukuran2] of tipe;nama_array : array[ukuran1,ukuranN] of tipe;

Keterangan:tipe = menyatakan tipe data dasar ukuran1 = menyatakan banyaknya element pada array pada dimensi ke-1ukuranN = menyatakan banyaknya element pada array pada dimensi ke-N

Pemrograman Pascal Halaman 26

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 27/34

 

6.3 Inisialisasi Array

Inisialisasi array dapat dilakukan pada saat pendeklarasiannya. Pada array multidimensi, inisialisasi dimulai dari dimensi yang paling besar. Untuk setiap dimensi dimulaidari indeks yang paling kecil. Pada Pascal cara proses inisialisasi diletakkan padabagian deklarasi konstanta.

Contoh:ConstI : array[1..10] of Integer =(12,45,67,34,2,5,60,7,19,21);matrix : array[1..3,1..4] of Integer =((42,47,53,48),(6,43,82,90),(53,62,23,55));nama : array[1..14]of char =(‘p’,’r’,’o’,’k’,’o’,’m’,’ ’,’g’,’a’,’m’,’p’,’a’,’n’,’g’);

Tugas

1. Buat program menampilkan bilangan fibonachi sampai n inputan !2. Buat program yang dapat memasukkan sejumlah N data kemudian mencari nilai

data yang paling besar!3. Buat program untuk menentukan bilangan prima ke-n masukkan! Missal jika

dimasukkan 3 maka keluarannya adalah :2 3 5Hasil diatas merupakan 3 bilangan prima yang pertama.

Pemrograman Pascal Halaman 27

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 28/34

 

 BAB 7

STRING

7.1. Pendeklarasian String

String merupakan salah satu tipe data bentukan untuk menyatakan data teks/kalimat/ serangkaian karakter. Pada bahasa Pascal panjang maksimum string yangdiijinkan adalah 255 karakter.

Bentuk umumnama_variable :String[panjang_string];nama_variable :String ;

Bila tidak disebutkan panjang string maka secara default panjangnya adalah 255.Contohnama : String[15];

mendeklarasikan variable string nama dengan panjang 15 karakter.

7.2. Memasukkan Data String dengan read/readln.

Pemasukan data string ke dalam suatu variable biasa dilakukan denganmemakai read ataupun readln. Fungsi read/readln akan membaca seluruh karakter yangdiketik sampai tombol enter ditekan, dalam hal ini tidak ada pengecekan terhadap batasarray. Panjang string dikurangi ukuran array ditambah karakter NULL.

Bentuk Umumread(nama_array);readln(nama_array);

7.3. Inisialisasi String

Inisialisasi string bisa dilakukan dengan assignment karakter per karakter ataupun tidak.

Bentuk umum:nama_variable[]=data_string;

ContohConst:Nama1 : String = { ‘T’,’U’,’R’,’B’,’O’,’ ‘,’C’,’\0’};

Nama2 : String = ’FREE C’;

7.4. Menampilkan Isi Variable String Ke Layar :

Untuk menampilkan isi variable string, pernyataan yang dapat digunakan fungsiwrite atau writeln.Bentuk umum:writeln(var_string);write(var_string);

Pemrograman Pascal Halaman 28

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 29/34

 

7.5. Mengakses Elemen String

Variabel string merupakan bentuk khusus dari array bertipe char, oleh karena ituelemen dari variable string dapat diakses seperti pengaksesan elemen array.

Latihan 1{file : hitkar.pas}Program hitkar;Const maks=256;Var teks: String[maks];Jumkar,i : Integer;BeginWriteln(‘Masukkan suatu kalimat :’);Readln(teks);Jumkar:=0;For i:=0 to maks do

Begin

If teks[i]=’a’ thenJumkar:=jumkar+1;

end;Writeln(‘jumlah karakter a =’,jumkar);End;

7.6. Beberapa Fungsi Mengenai String

Free Pascal menyediakan fungsi untuk manipulasi string, diantaranya:

Pemrograman Pascal Halaman 29

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 30/34

 

Latihan 2

{string1.pas}program string1;var s:string;p,n :integer;

beginwrite('masukkan karakter! = ');readln(s);val(s,n,p);writeln('nilai numeriknya = ',n);writeln('posisi salahnya = ',p);insert('z',s,4);writeln('setelah disispi z pada huruf ke 4 jadinya = ',s);end.

Tugas

1. Buat program yang memasukkan 2 angka kemudian menghitungpenjumlahannya secara matematis ataupun secara string !misal :angka1 = 3angka2 =7penjumlahan matematis = 10penjumlahan string = 37

2. Buat program untuk mengganti huruf a dengan huruf x dari kata yangdimasukkan !

3. Buat program untuk mencari huruf terbanyak dari kata yang dimasukkan !

Pemrograman Pascal Halaman 30

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 31/34

 

BAB 8PROCEDURE DAN FUNCTION

8.1 Procedure

Procedure merupakan blok baris perintah sebagai satu kesatuan yang

mengerjakan tugas khusus. Keuntungan menggunakan procedure :1) Program menjadi terstruktur.2) Dapat mengurangi pengulangan kode.Procedure dipanggil dan digunakan di dalam blok baris perintah yang lainnya denganmenyebutkan judul  procedurenya. Procedure dapat menerima nilai dari luar ataupunmengirimkan nilai keluar yang dilewatkan melalui parameter.Terkait dengan prosedure, dikenal dua macam variable yaitu :1) Variabel lokal : variabel yang dideklarasikan di dalam  procedure, variabel ini tidakdikenal di luar  procedure.2) Variabel global : variabel yang dideklarasikan di luar semua  procedure, sehinggaakan dikenal di seluruhbagian progam.

Bentuk umumProcedure nama_procedure(deklarasi parameter);Begin………..End;

Dalam pascal ada dua jenis pengiriman parameter :

1) Pengiriman parameter secara nilai (by value).Bila parameter dikirm secara nilai, parameter formal, maka perubahan-perubahan yangterjadi pada nilai parameter formal di procedure tidak akan mempengaruhi nilaiparameter nyata.

2) Pengiriman parameter secara acuan (by reference).Bila parameter dikirm secara nilai, parameter formal, maka perubahan-perubahan yangterjadi pada nilai parameter formal di procedure akan mempengaruhi nilai parameter nyata.

Latihan 1

{File : procedur.pas}program procedur;uses crt;var a:Integer;

{parameter by value}procedure ubah1(x:Integer);beginwriteln('parameter by value');writeln('Nilai akan diubah menjadi 5');x:=5;end;

Pemrograman Pascal Halaman 31

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 32/34

 

{parameter by reference}procedure ubah2(var x:Integer);

beginwriteln('parameter by reference');writeln('Nilai akan diubah menjadi 5');

x:=5;end;beginclrscr;a:=10;writeln('Nilai sebelum diubah adalah ',a);ubah1(a);writeln('nilai setelah diubah adalah ',a);ubah2(a);writeln('nilai setelah diubah adalah ',a);readln;end.

Latihan 2

{file : point.pas}Program point;ConstTrue = 1;False = 0;Var Pilih,quit : Integer;

Procedure P1; {procedure tanpa memakai parameter}BeginWriteln(‘Ini procedure P1’);End;

Procedure P2;BeginWriteln(‘Ini procedure P2’);End;

Procedure P3;BeginWriteln(‘Ini procedure P3’);End;

Procedure P4;BeginWriteln(‘Quit.....’);End;

BeginQuit:=false;

Pemrograman Pascal Halaman 32

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 33/34

 

Repeatwriteln(‘Pilihlah salah satu:’);writeln(‘1.Buka File hanya untk baca ‘);writeln(‘2.Tutup file ‘);writeln(‘3.Edit File ‘);

writeln(‘4.Quit ‘);readln(pilih);case pilih of 1 :P1;2 :P2;3 :P3;4 :beginP4;Quit:=true;End;Else writeln(‘Pilihan diluar yang ditentukan’);end;

Until quit=true;End.

6.2. Function

Function mirip dengan procedure, bedanya function harus mengembalikan suatunilai. Nilai yang dikembalikan terdapat pada nama function.

Bentuk umum:nama_function(deklarasi parameter):tipe_data;begin ...nama_function:=nilai;end;

Latihan 3

{File : fungsi1.pas}Program fungsi1;Uses crt;Var a,b,c:Integer;

{fungsi memakai parameter by value}Function tambah(a,b:Integer):Integer; Begintambah:=a+b;End;

Beginclrscr;write(‘A = ’);readln(a);write(‘B = ’);readln(b);

Pemrograman Pascal Halaman 33

5/9/2018 Buku Pascal New - slidepdf.com

http://slidepdf.com/reader/full/buku-pascal-new-559bf62d05a68 34/34

 

c:=jumlah(a,b);writeln(‘Jumlah tersebut adalah : ’,c);readln;End.

Latihan 4

{File : fungsi.pas}Program fungsi;Uses crt;

Procedure hai(kalimat:String); {prosedure hai memakai parameter by value}BeginWriteln(kalimat);End;

Beginclrscr;hai(‘Hallo’);hai(‘Siapa namamu’);readln;End.

Tugas

1. Buat program kalender abadi yang memiliki pilihan antara lain :a. Pergi ke tanggal xx bulan yy tahun zzzzb. Tambah u hari lagic. Mundur t hari lagi

e. Selisih hari yang ditunjuk dengan hari sekarang

Pemrograman Pascal Halaman 34