KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman...

46
Susiantoro tiksman8kediri ------------------ PEMR Fax (0354) 6998iman8kediri@ Nama Kelas No. Absen (((KHUSUS D SMA Jalan Pahla Fax (03 Panduan Praktikum Pemrogram ----------------------------------------------------------- PANDUAN Praktikum ROGRAMAN DASAR PASC oleh SUSIANTORO @gmail. DIPAKAI DALAM LINGKUNGAN S A NEGERI 8 KEDIR awan Kusuma Bangsa 77 (0354) 6787151 354) 699806 E-mail : [email protected] man Dasar Pascal 2012 0 -------------- susmix24.co.cc CAL SENDIRI))) RI Kediri om susmix24.co.cc susmix24.co.cc

Transcript of KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman...

Page 1: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

0tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

PANDUANPraktikum

PEMROGRAMAN DASAR PASCAL

oleh

SUSIANTORO

Fax (0354) 6998iman8kediri@gmail.

NamaKelasNo. Absen

(((KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI)))

SMA NEGERI 8 KEDIRIJalan Pahlawan Kusuma Bangsa 77 (0354) 6787151 Kediri

Fax (0354) 699806 E-mail : [email protected]

susmix24.co.cc

susmix24.co.cc

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

0tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

PANDUANPraktikum

PEMROGRAMAN DASAR PASCAL

oleh

SUSIANTORO

Fax (0354) 6998iman8kediri@gmail.

NamaKelasNo. Absen

(((KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI)))

SMA NEGERI 8 KEDIRIJalan Pahlawan Kusuma Bangsa 77 (0354) 6787151 Kediri

Fax (0354) 699806 E-mail : [email protected]

susmix24.co.cc

susmix24.co.cc

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

0tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

PANDUANPraktikum

PEMROGRAMAN DASAR PASCAL

oleh

SUSIANTORO

Fax (0354) 6998iman8kediri@gmail.

NamaKelasNo. Absen

(((KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI)))

SMA NEGERI 8 KEDIRIJalan Pahlawan Kusuma Bangsa 77 (0354) 6787151 Kediri

Fax (0354) 699806 E-mail : [email protected]

susmix24.co.cc

susmix24.co.cc

Page 2: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

1tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

Bab 1MENGENAL BAHASA PEMROGRAMAN

Pada dasarnya, sebuah komputer tidak dapat mengerjakan apapun tanpa adanya perintahdari manusia. Perintah-perintah yang terstruktur dan sistematis untuk membuat komputer bekerjasesuai dengan apa yang diinginkan disebut program. Apa yang dapat dilakukan oleh programkomputer? Komputer dapat diprogram untuk berbagai hal, misalnya diprogram untuk melakukanperhitungan suatu ekspresi matematika dan menampilkan hasilnya di layar monitor, diprogramuntuk memainkan sebuah lagu, diprogram untuk mengurutkan data (misalnya mengurutkan datanama siswa, data nilai siswa), diprogram untuk permainan, diprogram untuk menggambar dansebagainya. Program-program semacam itu dibuat oleh manusia, syarat utama dalam membuatprogram adalah perintah-perintah yang diberikan dalam program tersebut harus dimengerti olehkomputer.

Sayangnya, komputer hanya dapat mengerti sebuah bahasa yang disebut bahasa mesin,bahasa yang sangat berbeda dari bahasa manusia dan terlebih lagi akan amat menyulitkan untukmembuat sebuah program dalam bahasa mesin ini. Manusia menginginkan sebuah bahasakomputer yang sederhana yang dapat dimengerti dan mudah dipelajari oleh manusia sekaligusdapat dimengerti oleh komputer.

Bahasa komputer tersebut disebut bahasa pemrograman (programming language). Yangperlu diingat, konsep bahasa pemrograman adalah merubah/menerjemahkan perintah-perintah(program) yang diberikan oleh manusia ke dalam bahasa mesin yang dapat dimengerti olehkomputer. Jadi bahasa pemrograman adalah sarana interaksi antara manusia dan komputer.Seperti tujuan semula, bahasa pemrograman dibuat mudah dipelajari dan dimengerti agarmanusia dapat mudah membuat program komputer dengan bahasa pemrograman ini (tak perlumenggunakan bahasa mesin untuk membuat program komputer).

Penerjemah bahasa pemrograman dibedakan menjadi tiga macam, yaitu:1. Assembler adalah program yang digunakan untuk menerjemahkan kode sumber dalam

bahasa rakitan (assembly) ke dalam bahasa mesin2. Kompiler adalah program penerjemah yang mengonversi semua kode sumber selain dalam

bahasa rakitan menjadi kode objek. Hasil berupa kode objek inilah yang bisa dijalankanoleh komputer. Perlu diketahui, proses untuk melakukan penerjemahan ini biasa disebutkompilasi. Bahasa pemrograman yang menggunakan proses kompilasi adalah: BahasaCOBOL, Pascal, Bahasa C

3. Intepreter adalah program yang menerjemahkan satu per satu instruksi dalam kodesumber dan kemudian segera menjalankan instruksi yang telah diterjemahkan tersebut.Bahasa seperti BASIC pada awalnya menggunakan konsep intepreter ini.

Pada intinya, bahasa pemrograman digunakan untuk mempermudah manusia dalamberinteraksi dengan komputer. Syarat utama untuk membuat program komputer adalah denganmenggunakannya sesuai dengan kaidah-kaidah yang berlaku dalam bahasa pemrogramantersebut. Masing-masing bahasa pemrograman mempunyai ciri khas/kaidah tersendiri. Karenaitu, sebelum membuat sebuah program dengan menggunakan bahasa pemrograman, sangat wajibuntuk mengerti tentang aturan penulisan bahasa pemrograman tersebut.Saat ini ada banyak bahasa pemrograman yang beredar di pasaran. Masing-masing memberikankemudahan dan fasilitas untuk membuat sebuah program komputer yang sesuai dengankeinginan.

Page 3: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

2tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

FORTRANFORTRAN kepanjangan dari Formula Translation. Pertama kali dikembangkan pada tahun 1956oleh John Backus di IBM. Ditujukan untuk mempermudah pembuatan aplikasi matematika, ilmupengetahuan dan teknik. Merupakan bahasa pemrograman tingkat tinggi pertama kali.

Keunggulan FORTRAN terletak pada dukungan untuk menangani perhitungan termasukbilangan kompleks. Kelemahan bahasa ini terletak pada operasi masukan/keluaran yang sangatkaku. Selain itu kode sumbernya lebih sulit dipahami dibandingkan dengan bahasa pemrogramantingkat tinggi lainnya.

Contoh program dalam bahasa FORTRAN :

// JOB// FOR* ONE WORD INTEGERS* IOCS(DISK,TYPEWRITER,KEYBOARD,PAPERTAPE)______DIMENSION IEMG(10,15),IEMG1(13)______DEFINE FILE 12(80,150,U,K)______WRITE(1,10)___10 FORMAT('PAPERTAPE'//'GIVE NUMBER EXPERIMENT (1-5 IN INT)')______READ(6,30) M___30 FORMAT(I1)______PAUSE 1______DO 25 N=1,16______DO 15 I=1,15______READ(4,20) IEMG1___20 FORMAT(13I4)______DO 15 J=4,13______J3=J-3___15 IEMG(J3,I)=IEMG1(J)______NE=N+(M-1)*16___25 WRITE(12'NE) IEMG______CALL EXIT______END// DUP*DELETE SJA1*STORECI WS UA SJA1*FILES(12,EMG)

COBOLCOBOL (Common Business Oriented Language) dikembangkan tahun 1959 dan tergolong sebagaibahasa tingkat tinggi. Sesuai dengan kepanjangan namanya, bahasa ini ditujukan untukmempermudah pembuatan aplikasi di bidang bisnis. Sejauh ini bahasa ini masih banyakdigunakan terutama di lingkungan komputer minikomputer dan mainframe.

Keunggulan COBOL adalah : Sintaksnya yang menggunakan kata -kata bahasa Inggris sehingga mempermudah

programmer. Kemudahan terhadap penanganan file. Kemudahan terhadap masukan / keluaran program

Contoh program dalam bahasa COBOL :

000100 IDENTIFICATION DIVISION.000200 PROGRAM-ID. HELLOWORLD.000300000400*000500 ENVIRONMENT DIVISION.000600 CONFIGURATION SECTION.000700 SOURCE-COMPUTER. RM-COBOL.000800 OBJECT-COMPUTER. RM-COBOL.

Page 4: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

3tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

000900001000 DATA DIVISION.001100 FILE SECTION.001200100000 PROCEDURE DIVISION.100100100200 MAIN-LOGIC SECTION.100300 BEGIN.100400 DISPLAY " " LINE 1 POSITION 1 ERASE EOS.100500 DISPLAY "Hello world!" LINE 15 POSITION 10.100600 STOP RUN.100700 MAIN-LOGIC-EXIT.100800 EXIT.

BASICBASIC adalah kepanjangan dari Beginner All-purpose Symbolic Instruction Code. Dikembangkantahun 1965 di Darmouth College. Penciptanya adalah John Kemeny dan Thomas Kurtz. AwalnyaBASIC digunakan sebagai pengajaran dasar untuk bahasa pemrograman sederhana.

Keunggulan BASIC terletak pada kemudahannya untuk dipakai dan penggunaan bahasa Inggrisyang mirip dengan kehidupan sehari-hari sebagai sintaksnya. BASIC merupakan bahasapemrograman yang sangat populer sebelum Pascal dibuat.

Contoh program dalam bahasa BASIC

REM Program mencari rata-rata 3 buah bilanganINPUT “Masukkan tiga buah bilangan : “, a, b, crata=(a+b+c)/3PRINT “Rata-rata ketiga bilangan adalah : “; rata

PASCALSejarah perkembangan Pascal dimulai pada tahun 1960, yaitu ketika bahasa pemrogramanALGOL 60 digunakan sebagai algorithmic language yang digunakan untuk memecahkan masalahsehari-hari dengan menggunakan komputer. Nama Pascal sendiri diambil dari nama seorang ahliimatematika dan ilmu pengetahuan bangsa Perancis, yaitu Blaise Pascal (1623-1662). Niklaus Wirthdari Sekolah Teknik Tinggi Zurich - Swiss, menjadi terkenal sebagai perancang bahasa Pascal,compiler pertama yang dilaksanakan pada tahun 1970, kemudian direvisi pada tahun 1973 bersamaK. Jensen. Kemudian pada tahun 1983 bahasa Pascal dapat dibakukan secara resmi dengan adanyaPascal Standard dari ISO.

Keunggulan bahasa Pascal adalah keteraturan dalam pembuatan program dan kelengkapanstruktur data.

Contoh program dalam bahasa Pascal :

PROGRAM CariMin;{Mencari Bilangan terkecil dari dua buah bilangan}VAR

x,y,min:integer;BEGIN

WRITE(‘Bilangan pertama : ‘);READLN(x);WRITE(‘Bilangan kedua : ‘);READLN(y);IF x>y THEN

Min:=yELSE

Min:=x;WRITE(‘Bilangan terkecil : ‘,min);

END.

Page 5: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

4tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

BAHASA CBahasa C diciptakan oleh Brian W. Kernighan dan Dennis M. Ritchie pada tahun 1972 dilaboratorium Bell AT&T. Bahasa ini menggabungkan kemampuan pengendalian mesin dalam arasrendah dan struktur data serta struktur kontrol aras tinggi. Jadi dapat disebut bahasa C adalahbahasa pemrograman yang menggabungan kemudahan pengontrolan hardware dalam bahasapemrograman tingkat rendah serta struktur kontrol dalam bahasa tingkat tinggi. Bahasa C inidigunakan untuk menyusun sistem operasi UNIX dan Linux.

Keunggulan bahasa C adalah : Sifat portabilitas, yaitu kode sumber pada sebuah platform dapat ditransfer ke platform

lain tanpa ada perubahan Kemudahan akses terhadap hardware Cepat dan efisien

Pada tahun 1983, Bjarne Stroustrup mengembangkan bahasa C yang pada mulanya disebutsebagai “a better C”. Namun kemudian bahasa ini dikenal dengan nama C++ (C Plus plus) yangmengunggulkan kelebihannya sebagai bahasa pemrograman berorientasi objek.

Contoh program dalam Bahasa C :

/*Mencari Bilangan terkecil dari dua buah bilangan*/#include <stdio.h>main (){

int x,y, min;printf (“Bilangan pertama : “);scanf(“%1f”,&x);printf (“Bilangan kedua : “);scanf(“%1f”,&y);if x>ymin=xelsemin=y;printf(“Bilangan terkecil : %1f\n”,min);

}

BAHASA JAVABahasa Java dikembangkan oleh Sun Microsystem pada tahun 1955. Merupakan bahasa yangberorientasi objek. Kode Java dikompilasi dalam format yang disebut bytecode. Bytecode ini dapatdijalankan di semua komputer yang telah dilengkapi dengan program Java Intepreter dan JavaVirtual Machine.Java sangat populer karena pada masa awal Internet menjadi populer, Java telah menyediakansarana untuk membuat program (yang disebut sebagai applet) yang dapat berjalan pada webbrowser seperti Internet Explorer, Netscape Navigator.

Contoh program dalam bahasa Java:

Public class SayHello {Public static void main(String[] args {

System.out.println(“Hello world!”);}

}

Page 6: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

5tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

Bab 2FREE PASCAL

Mengapa Pascal ?Mengapa Pascal yang dipilih sebagai bahasa pemrograman dalam OSN bidang komputer ? Danmengapa compilernya adalah Free Pascal ? Alasan di bawah ini setidaknya akan menjawabpertanyaan di atas, Very Clean Language. Bahasa Pascal adalah bahasa yang sangat mudah dibaca dan dikelola

dibandingkan dengan bahasa C. No Makefiles. Tidak seperti kebanyakan bahasa pemrograman lain (Clipper, Java, C),

Pascal tidak memerlukan makefiles. Ini dapat menghemat banyak waktu, compiler hanyamelakukan proses kompilasi terhadap file-file memang perlu dikompilasi.

Pascal Compiler are FAST. Begitu proses kompilasi dijalankan, maka hampir pada saatyang bersamaan program tersebut telah selesai dikompilasi, bahkan untuk program yangbesar

Each unit has it’s own identifiers. Pada Free Pascal, nama identifier (variabel, konstanta,tipe data, fungsi, prosedur) tidak harus berbeda untuk tiap unit. Walaupun dalam sebuahunit terdapat prosedur clrscr misalnya, maka dalam program yang menggunakan unittersebut, nama clrscr masih dapat digunakan sebagai identifier.

Integrated Develoment Environment. Free Pascal mempunyai IDE (editor) yang dapatbekerja dalam beberapa platform, di mana kita dapat langsung mengetikkan program,mengkompilasi serta melakukan debugging.

Great integration with Assembler. Assembler adalah bahasa mesin yang dapat secaralangsung mengakses hardware. Compiler Free Pascal mampu menggabungkankemampuan dalam bahasa Assembler ini dengan bahasa Pascal.

Object Oriented Programming (OOP). Bagi anda yang serius dengan pemrograman, tentusangat tertarik dengan OOP ini (karena arah pemrograman di Windows adalah OOP). FreePascal mensupport secara penuh OOP ini dalam bahasa Pascal.

Support Database. Database yang disupport oleh Free Pascal adalah PostgreSQL, MySQL,Interbase, ODBC.

Smartlinking . Free Pascal smart linker akan meninggalkan semua variabel-variabel yangtidak diperlukan sehingga program akan berukuran sangat kecil.

Compatible. Kompabilitas Free Pascal terhadap compiler Pascal lain sangat tinggi. Hampirsemua program di Turbo Pascal atau di Delphi dapat dikompilasi di Free Pascal.

Tentang Free PascalFree Pascal adalah compiler untuk bahasa Pascal. Free Pascal ini didistribusikan secara gratis dibawah lisensi GNU Public. Versi terakhir Free Pascal dapat di download di:http://www.freepascal.org/. Hingga bulan Juni 2004, versi Free Pascal yang paling stabiladalah versi 1.0.10. Sedangkan versi 1.9x masih dalam tahap pengembangan.Free Pascal tersedia untuk berbagai macam prosesor, yaitu Intel x86, Motorola 680x0 (untuk versi1.0 saja) dan PowerPC (mulai versi 1.9.2). Selain itu juga mendukung berbagai sistem operasi,yaitu: Linux, FreeBSD, NetBSD, MacOSX, DOS, Win32, OS/2, BeOS, SunOS (Solaris), QNX danClassic Amiga.

Page 7: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

6tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

I. InstalasiInstalasi Free Pascal sangat sederhana. Hanya dengan beberapa kali klik dengan mengikuti petunjukyang ada, kita dapat langsung menginstallnya. Tentu saja telah ada panduan instalasi yang disertakandalam paket. Versi terbaru Free pascal dapat didownload secara gratis di www.freepascal.org ,dimana tersedia versi terbaru yang paling stabil untuk beberapa platform seperti windows dan linux.

II. Mengakses PascalUntuk mengakses Free Pascal dari desktop, cukup dengan melakukak click dua kali dengan mousemenunjuk pada icon Free Pascal. Maka dalam hitungan detik kita akan dibawa masuk ke lingkunganIDE Free Pascal.

III. Tampilan Lingkungan Terpadu (IDE – Integrated Development Environment)Untuk mengakses Free Pascal dari desktop, cukup dengan melakukak click dua kali denganmouse menunjuk pada icon Free Pascal. Maka dalam hitungan detik kita akan dibawa masukke lingkungan IDE Free Pascal.Tampilan Free Pascal dibuat semirip mungkin dengan tampilan Turbo Pascal, yaitu terdiridari Menu Utama , Jendela Edit dan Baris bawah.

a. Menu Utama, terdiri dari

1. Menu FileTabel 1. Menu File

Open (F3) Membuka program yang sudah ada di disk (harddisk maupundisket atau sumber lain)

Save (F2) Menyimpan file ke dalam disketNew Membuat file baruSave as Menyimpan file dengan nama lain yang kita kehendakiPrint Mengeprint file yang sedang dibukaChange dir Merubah direktori aktifCommand Shell Masuk ke dalam lingkungan DOS untuk menjalankan perintah

DOSExit Keluar dari program Free Pascal

2. Menu Run, digunakan untuk mengecek kesalahan program kita maupun menjalankanprogram

Tabel 2. Menu RunRun (Ctrl+F9) Menjalankan programStep Over (F8) Menjalankan program baris demi baris tanpa masuk ke

prosedur / fungsi yang dipanggilTrace Into (F7) Menjalankan program baris demi baris dengan masuk

ke prosedur / fungsi yang dipanggilGoto Cursor (F4) Menjalankan program sampai pada kursor yang

ditunjuk

Page 8: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

7tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

3. Menu Compile, digunakan untuk mengkompilasi program yang kita buat. Bila ditekanALT +F9, program akan dikompilasi di disket, sedangkan bila ditekanF9 saja, program akan dikompilasi di memori saja. Untukmengkompile program kemudian menjalankannya di lingkunganDOS, ditekan CTRL + F9.

Dalam proses compiling, akan dilakukan pengecekan dahulu apakahprogram sudah benar syntaxnya. Bila belum benar, akan ditampilkanpesan kesalahan.

4. Menu Options, dipilih bila akan mengatur atau menentukan kembali bagaimanaIntegrated Develompment bekerja.

5. Menu Debug dan Break / Watch digunakan untuk melacak jalannya program

b. Jendela Edit (edit window), digunakan untuk menulis dan mengedit program

c. Baris Bawah (bottom line), menunjukkan informasi tombol-tombol jalan pintas (shortcut)/ hotkey yang dapat ditekan untuk keperluan tertentu. Shortcut ditulis di sebelah kananmenu utama. Beberapa shortcut yang penting adalah :

Shorcut (hotkey)F1 Menampilkan jendela bantuan (help)F2 Menyimpan file (save)F3 Membuka program dari disk (open)F4 Menjalankan program sampai kursor sekarangF5 Membuka user commandF7 TraceF8 Step OverF9 MakeF10 Menuju ke menu utamaALT + F9 CompileCTRL + F9 Menjalankan programShift + Del Menghapus baris yang sudah diblok sebelumnyaCtrl + Ins Mengkopi baris yang sudah diblok ke dalam

clipboardShift + Ins Mempaste baris yang sudah dicopy sebelumnya

pada posisi kursorCtrl + Y Menghapus 1 baris

Page 9: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

8tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

Free Pascal dikembangkan dalam lingkungan windows, sehingga perintah-perintah diatasdapat dijalankan dengan menggunakan mouse. Tekan Click Kanan pada Jendela Edituntuk menampilkan menu pulldown tambahan

Gambar 1.1. IDE Free Pascal

Gambar 1.2. Klik kanan pada Jendela Edit untuk menampilkan menu Pulldown

Page 10: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

9tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

IV. Menjalankan ProgramSetelah program diketik, ada dua cara untuk menjalankannya:1. Menggunakan hotkey, yaitu dengan menekan tombol Ctrl + F92. Kembali ke menu utama terlebih dahulu (F10), dan memilih menu Run dan memilih

perintah Run dengan menekan tombol R

V. Menyimpan Program ke DiskProgram yang telah diketik pada jendela editor masih berada di meori computer, belumtersimpan di disk. Untuk menyimpan program tersebut ke disk dapat dilakukan denganmenekan tombol F2 (hotkey) atau save pada menu File

VI. Membuat Executabel ProgramExecutable Program merupakan program yang sudah berbentuk bahasa mesin hasil dari proseskompilasi. Executabel program dapat langsung dijalankan dari prompt DOS, atau dapat langsungdilakukan double Click pada lingkungan windows.Cara membuat executabel program adalah :1. Menggunakan menu Compile (ALT + C)2. Setelah sub menu dari menu compile tampak di layar, tekan tombol D untuk merubah hasil

kompilasi ke disk.3. Tekan tombol C untuk memulai kompilasi4. Setelah proses kompilasi selesai, maka program telah diterjemahkan ke bahasa mesin dan disimpan

ke disk.

VII. Contoh Menulis Program Free PascalBerikut ini akan diberikan contoh langkah-langkah membuat program Pascal, mulai dari menulis kodesampai ke mengcompile code, yaitu:1. Pada keadaan awal, jalankan menu File à New2. Kemudian tulis kode program Pascal pada Jendela Editor3. Jangan lupa untuk menyimpan program yang anda ketik dengan memberi nama yang sesuai4. Cobalah untuk menjalankan program dengan menekan Ctrl + F9. Apabila masih salah, akan muncul

pesan kesalahan . Segera perbaiki dan kembali tekan Ctrl + F9 apabila sudah selesai5. Apabila kompilasi sukses, maka kita dapat langsung melihat hasil program pada Output window

Penulisan Kode didalam jendela Editor (2)

Page 11: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

10tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

Menyimpan program dalam disk dan menamainya (3)

Ctrl + F9 akan mengaktifkan pesan kesalahan bila ada (4)

Hasil Program pada Output Window (5)

Page 12: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

11tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

LATIHAN-1 :

1. Cobalah mengetik program contoh pada gambar diatas, kemudian lakukan compile.Periksa kesalahan-kesalahan apa saja yang anda lakukan.

2. Ketikkan teks berikut dengan tanda baca yang benar (kesalahan terhadap tanda baca akanmempengaruhi program yang kamu buat) , kemudian jalankan !

Program Pertama;BeginWrite (‘Ini adalah program pertama buatanku’);Readln ();End.

3. Ketiklah teks program pascal berikut :

Writeln(‘Ujian Akhir TIK’);Write(‘Kelas X’);Write(‘Semester Genap’);Writeln(‘Mudah dan Menyenangkan’);

Jika program dianggap benar dan lengkap, apa output dari pernyataan diatas :

4. Apakah output program berikut :

write (‘Selamat Belajar’);writeln (‘Pascal’);write (‘Semoga Sukses’);

5. Buatlah program sederhana yang outputnya :

Saya suka belajar bahasa pemrograman PascalDi SMA Negeri 8 Kediri

6. Dengan mempraktikkan dan mengamati latihan program diatas, apakah kegunaanpernyataan / statement :a. Writeb. Writelnc. Readd. Readln

Page 13: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

12tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

Bab 3BAHASA PASCAL

Sebelum membahas dengan detail tentang bahasa Pascal (dalam hal ini adalah compilerFree Pascal), perlu diketahui terlebih dulu struktur program dalam bahasa Pascal. Bentuk ini harusdipenuhi agar program dapat dikompilasi oleh compiler.

Struktur Bahasa Pascal

Bentuk umum bahasa Pascal adalah sebagai berikut :

PROGRAM nama(file1,file2,file3);CONST deklarasikonstanta;VAR deklarasivariabel;TYPE deklarasitype;LABEL deklarasilabel;FUNCTION deklarasifungsi;PROCEDURE deklarasiprosedur;

BEGINstatement1;statement2;statement3;...

END.

Program Pascal terdiri dari 3 bagian pokok, yaitu:1. Nama Program

Nama program adalah hanya sekedar menuliskan judul dari program, tidak mempunyai artiapa-apa dalam proses kompilasi. Judul program dapat diikuti oleh file-file data yangberhubungan dengan program tersebut.Pada Turbo Pascal, dapat ditambahkan klausa uses yang menunjukkan bahwa programmenggunakan unit.

2. DeklarasiBagian ini berisi deklarasi pengenal maupun data yang dipergunakan di dalam program.Walaupun tampaknya membuang-buang waktu dan tidak berguna, namun sesungguhnyamerupakan bagian terpenting dari rangka penyusunan sebuah program yang terstruktur.Struktur program sangat penting dalam pembuatan program yang panjang, karena bagian iniakan mengingatkan programmer tentang variabel, tipe data, konstanta, fungsi, prosedur yangdigunakan dalam program. Selain itu, orang lain yang membaca program akan lebih dapatmengerti jalannya program dengan deklarasi ini.

3. Program utamaProgram utama berisi statement. Tentang statement akan dibahas pada bab selanjutnya.

Deklarasi program

Bagian deklarasi ada 6 macam, yaitu:

1. Deklarasi CONST

Page 14: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

13tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

Deklarasi CONST gunanya untuk mendeklarasikan nama konstanta tertentu. Nama konstantaadalah merupakan suatu pengenal (identifier) yang nilainya tidak dapat berubah dalamprogram.Contoh :

CONSTPi=3.14Titikkoma=’;’

2. Deklarasi VARDeklarasi VAR gunanya adalah untuk menyatakan variabel yang digunakan dalam program.Variabel adalah suatu pengenal (identifier) yang nilainya dapat berubah.Contoh:

VARData:array[1..100] of byte;Umur: 0..100;

3. Deklarasi TYPEDeklarasi type dipergunakan untuk menyusun suatu bentuk tipe data yang baru sebagai hasilpenggabungan dari tipe-tipe yang sudah ada.Contoh:

TYPEData=array[1..100] of byte;Hari=(Senin, Selasa, Rabu, Kamis, Jumat, Sabtu);

VARNilai:Data;HariKerja:Senin..Jumat;

4. Deklarasi LABELDeklarasi label menjelaskan adanya label atau tujuan yang bisa melompatkan jalannya programdengan statement goto

5. Deklarasi FUNCTIONFunction adalah bagian dari program yang melakukan tugas tertentu dan menghasilkan suatu nilai.Sintaks penulisan:

function namafunction:tipehasil;Atau

function namafunction(daftarparameter):tipehasil;Contoh :

function UpCaseStr(S: string): string;var

I: Integer;begin

for I := 1 to Length(S) doif (S[I] >= 'a') and (S[I] <= 'z') thenDec(S[I], 32);UpCaseStr := S;

end;begin

writeln(UpCaseStr(‘this is text’));end.

Page 15: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

14tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

6. Deklarasi PROCEDUREProcedure adalah bagian dari program yang melakukan aksi tertentu, seringkali aksi tersebutdilakukan berdasarkan parameter.Sintaks penulisan:

procedure namafunction;Atau

procedure namafunction(daftarparameter);Contoh:

procedure WrStr(X, Y: integer; S: string);var

SaveX, SaveY: Integer;begin

SaveX := WhereX;SaveY := WhereY;GotoXY(X, Y);Write(S);GotoXY(SaveX, SaveY);

end;

beginWrStr(10,20,’This is text’);

end.

Aturan penulisan program PascalSuatu bahasa pemrograman selalu mempunyai aturan penulisan program. Hal ini menunjukkankonsistensi kompiler dalam melakukan proses kompilasi. Aturan pada program Pascal adalahsebagai berikut :

Program pascal dapat ditulis pada kolom berapa saja dan diakhiri pada kolom berapa saja.Antar statement / perintah dipisahkan dengan tanda ; (titik koma)

Akhir dari sebuah program Pascal ditandai dengan tanda . (titik) setelah perintah END. Semuastatement / perintah setelah END. tidak akan dianggap sebagai perintah.

Spasi antar pengenal (identifier) diabaikan.

Baris komentar diletakkan di antara tanda (* dan *) atau { dan }. Baris komentar tidak akandieksekusi oleh komputer. Baris komentar biasanya dipergunakan untuk memberikan penjelasan-penjelasan guna memperjelas pengertian variabel atau tipe atau perintah dalam sebuah program.

Simbol (Symbols)Pascal mengenal simbol-simbol yang dapat digunakan dalam program, yaitu:huruf : A..Z , a..zdigit : 0..9digit heksadesimal : 0..9, A..F, a..fKarakter khusus : + - * / = < > [ ] . , ( ) : ^ @ { } $ #Pasangan karakter : <= >= := (* *)Selain dari karakter-karakter di atas, adalah karakter yang tidak dikenali oleh bahasa Pascal.

Kata tercadang (Reserved Words)Kata tercadang adalah bagian dari bahasa Pascal dan tidak dapat dipakai untuk kegunaan laindalam program (tidak dapat didefinisikan ulang). Kata tercadang ini tidaklah case sensitive,artinya for akan sama dengan FOR.

Page 16: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

15tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

Berikut adalah perbandingan kata tercadang dalam Turbo Pascal dan free pascal :

Tabel Perbandingan kata tercadang Free Pascal dan Turbo PascalFree Pascal Turbo Pascal

A absolute,and, array, asm absolute,and, array, asmB begin, break begin, breakC case, const, constructor, continue case, const, constructor, continueD destructor, div, do, downto, dispose destructor, div, do, downtoE else, end, exit else, endF file, for, function, false file, for, functionG goto GotoI if, implementation, in, inherited, inline, interface if, implementation, in, inherited, inline, interfaceL label labelM mod modN nil, not, new nil, notO object, of, on, operator, or object, of, on, operator, orP packed, procedure, program packed, procedure, programR record, repeat record, repeatS self, set, shl, shr, string self, set, shl, shr, stringT then, to, type, true then, to, typeU unit, until, uses unit, until, usesV var, while, with var, while, withX xor xor

Pengenal (Identifier)Identifier adalah nama yang diberikan untuk elemen -elemen dalam Pascal. Misalnya namaprosedur, nama tipe, nama fungsi, nama variabel dan nama label. Identifier ini harusdideklarasikan terlebih dulu agar dapat dikenali oleh program.

Syarat-syarat penamaan sebuah identifier adalah : Dapat sepanjang apapun, namun Turbo Pascal akan mengambil 63 karakter pertama dari

nama identifier HARUS diawali dengan huruf atau underscore (_) Karakter ke dua dan selanjutnya dapat berupa huruf, angka, atau underscore Tidak boleh ada 2 identifier yang sama dalam satu program Tidak boleh berupa reserved word . Reserved Word adalah kata yang telah dikenal oleh Pascal

yang telah mempunyai kegunaan tertentu.

Contoh penulisan identifier yang benar :coba1jari_jariprogramcoba_cobainteger (mengapa indentifier ini diperbolehkan?)

Contoh penulisan identifier yang salah :coba 1 (mengandung spasi)jari-jari (mengandung karakter -)2b (diawali dengan angka)to (mengapa tidak diperbolehkan?)

Page 17: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

16tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

Contoh penggunaan identifier :program coba1;var

a,b:byte;type

c=word;beginend.

Pada program di atas, terdapat 4 buah indentifier, yaitu coba1, a, b dan c. Coba1 digunakansebagai identifier nama program, a dan b digunakan sebagai identifier dari deklarasi var dan csebagai indentifier nama type.

Angka (Numbers)Ada 2 macam penulisan angka dalam bilangan bulat yang dikenal dalam Pascal. Normal, dalam format desimal (basis 10). Heksadesimal (basis 16), penulisan angka dalam format heksadesimal harus didahului oleh

tanda $. Misalnya $FF berarti 255 desimal.Free Pascal menambahkan 2 format penulisan lagi, yaitu : Oktal (basis 8), penulisan angka dalam format oktal harus didahului oleh tanda &.

Misalnya 15 desimal mempunyai nilai yang sama dengan &17. Biner (basis 2), penulisan angka dalam format biner harus didahului oleh tanda %.

Misalnya 15 desimal mempunyai nilai yang sama dengan %1111.

Tipe (Type)Tipe data yang dikenal oleh Pascal dapat diklasifikasikan menjadi: tipe sederhana, tipe string, tipeterstruktur dan tipe data pointer. Ada tipe yang sudah didefinisikan (built-in) sehingga compilerlangsung mengenalinya tanpa perlu dideklarasikan. Tapi ada tipe yang harus dideklarasikanterlebih dulu (user-defined types).Free Pascal melakukan beberapa perubahan untuk taksonomi tipe data ini, yaitu: Tipe dasar / tipe sederhana (Based Types) Tipe ordinal (ordinal types) Tipe real (real types)

Tipe karakter (Character Types) Karakter (Char) Untai (Strings) Untai pendek (Short strings) Ansistrings Konstanta string (Constant string ) Pchar – Null terminated string

Tipe terstruktur (Structured types) Array Record Set File Pointer Deklarasi Forward Tipe Prosedur

Page 18: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

17tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

Penjelasan Tipe data pada Free PascalTipe Dasar / Sederhana (Based Types or Simple Types)Tipe dasar mendefinisikan suatu nilai yang berurutan. Ada 2 kelas dari tipe sederhana ini yaitu:

A. Tipe Ordinal (Ordinal type)Pada tipe ordinal, Free Pascal telah mendefinisikan 14 predefined type (apa yang dimaksudpredefined type?), yaitu : bilangan bulat, boolean, char. (dimana 11 buah tipe data yang lain?).Artinya pembuat program tidak perlu mendefinisikan tipe untuk tipe-tipe data di atas.Sedangkan untuk user defined type pada tipe ordinal ada 2 macam, yaitu : tipe enumerasi(enumerated types) dan tipe subjangkauan (subrange types).Tipe Ordinal dapat dioperasikan dengan fungsi/prosedur berikut: ORD (fungsi) PRED (fungsi) SUCC (fungsi) HIGH (fungsi) LOW (fungsi) INC (prosedur) DEC (prosedur)

A.1 Tipe Enumerasi (Enumerated)Tipe Enumerasi mendefinisikan nilai yang berurutan ke suatu elemen dalam suatu daftaridentifier. Elemen pertama mempunyai nilai 0, yang kedua mempunyai nilai 1 danseterusnya.Format penulisan :

typeidentifier=(identifier_1,identifier_2,...,identifier_n)

(Berdasarkan definisi tipe enumerasi, mana yang disebut elemen pada format penulisan di atas? Manayang disebut nilai yang berurutan? Mana yang disebut daftar identifier? Dan di mana letak userdefined type dari tipe enumerasi ini)Contoh tipe enumerasi yang benar :

typekartu=(club, heart, diamond, spade);musik=(jazz, blues, country, pop);

Untuk mengetahui urutan suatu nilai dari tipe enumerasi ini dengan menggunakan fungsiord, untuk mengetahui nilai sebelumnya menggunakan fungsi pred dan untuk mengetahuinilai sesudahnya digunakan fungsi succ.Contoh penggunaan tipe enumerasi dalam program :

varmodel:(small,medium,large);

beginmodel:=medium;writeln(ord(model)); {berapa urutan dari model?}model:=pred(model); {apa nilai dari model?}model:=succ(succ(model)); {apa nilai dari model?}

end.

Page 19: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

18tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

A.2 Tipe Subjangkauan (Subrange)Tipe subjangkauan mendefinisikan suatu elemen dari nilai terkecil sampai nilai terbesar.Format penulisan :

typeidentifier=nilai1..nilai2;

Nilai1 dan nilai2 haruslah merupakan merupakan nilai dari tipe ordinal yang sama. Padasuatu tipe subjangkauan, juga dapat digunakan fungsi-fungsi ord, pred dan succ. Fungsi-fungsi tersebut masih tetap mengacu pada tipe enumerasi asalnya.

Contoh dalam program :

varnilai:’a’..’e’;

beginnilai:=’a’;writeln(ord(nilai)); {berapa yang dihasilkan, mengapa?}writeln(pred(nilai)); {mengapa diperbolehkan?}

end.

A.3 Tipe Boolean (Boolean)Tipe boolean adalah sebuah tipe yang hanya dapat bernilai false atau true. Dalam Free Pascalmendukung tipe Bytebool, WordBool dan LongBool.Karena masih merupakan tipe ordinal, maka nilainya dapat diketahui urutannya denganmenggunakan fungsi ord.

ORD(FALSE) = 0ORD(TRUE) = 1

Operasi-operasi yang dapat dilakukan pada tipe boolean adalah (diurutkan berdasarkanhirarki teratas sampai terendah) : NOT, AND, ORContoh dalam program:

VarX:boolean;A:byte;

BeginA:=0;If a>100 then x:=true else x:=true;

End.

varOk:boolean;a,b:byte;

Begina:=10;b:=20;Ok:=a=b;

End.

Page 20: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

19tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

A.4 Tipe Bilangan Bulat (Integer)Ada 10 tipe bilangan bulat, yaitu :

Tabel : Tipe bilangan bulat di Free Pascal

Tipe Integer secara standard akan diarahkan pada tipe smallint, sedangkan tipe cardinalselalu diarahkan pada tipe longword.

Tipe bilangan bulat ini dapat disebut sebagai predefined type, atau dapat juga dimasukkandalam tipe subjangakauan.

Operasi-operasi yang dapat dilakukan pada tipe bilangan bulat adalah (diurutkanberdasarkan hirarki teratas sampai terendah) : @, NOT *, /, div, mod, and, shl, shr +, –, or, xor =, <>, <, >, <=, >=, in

Tabel Daftar operator pada bilangan bulat

Page 21: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

20tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

LATIHAN-2 :

Evaluasilah ekspresi di bawah ini, tentukan apakah ekspresi tersebut benar atau salah, jikabenar berapa nilai akhirnya, jika salah tentukan alasannya!

3 + 5 * 2

6 or 2 and 5 div 2

4 mod not 6

5 >= 6

10 and 3 = 0

(10 and 5 = 0) or (4 * 1 = 4)

varx:boolean;a,b:byte;

begina:=10;x:=true;if (a>=0) and x then write(‘a’);

end.

begina:=4;b:=a and 4;x:=true;if b and x then write(‘a’);

end.beginif b=4 and a=1 then write(‘a’);

end.

Page 22: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

21tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

B. Tipe Real

Sebuah tipe real adalah anggota bilangan real, yang dinyatakan dalam notasi floating point.Ada 6 model tipe real, masing-masing mempunyai jangkauan, ketepatan angka dan ukuran.

Type Jangkauan Digit Ukuran

Real 2,9.10-39 .. 1,7.1038 11-12 6 byteSingle 1,5.10-45 .. 3,4.1038 7-8 4 byteDouble 5,0.10-324 .. 1,7.10308 15-16 8 byteExtended 3,4.10-4932 .. 1,1.104932 19-20 10 byteComp -2.1063+1 .. 2.1063-1 19-20 8 byte

Ada 4 macam operator pada tipe real, yaitu :

Tabel operator pada tipe real

2. Tipe Karakter (Character)Merupakan suatu tipe data untuk menyimpan karakter ASCII. Ditulis dengan menggunakantanda petik atau diawali dengan #. Karena masih masuk dalam tipe ordinal maka dapatdioperasikan dengan menggunakan fungsi ord (untuk mengetahui urutannya), fungsi succ,fungsi pred, prosedur inc, prosedur dec.

Tipe ini juga dapat menerima fungsi CHR ( mengubah suatu bilangan bulat menjadi karakteryang sesuai dengan ASCII )

Contoh :

VarA:char;

BeginA:=’A’;A:=CHR(65)A:=#1;

End.

A. Tipe Untai (String )Tipe string adalah tipe yang diisi rangkaian karakter.Format penulisan :type

identifier=string[panjang];

Page 23: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

22tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

Bila panjang tidak didefinisikan, maka Pascal menganggap panjangnya adalah 255 karakter(panjang maksimum).

Contoh penggunaan dalam program

typestr80=string[80]; {bisa dideklarasikan dalam tipe terlebih dulu}var

a:str80;b:string[10]; {atau langsung dalam variabel}

constHeading: string[7] = 'Section';NewLine: string[2] = #13#10;TrueStr: string[5] = 'Yes';FalseStr: string[5] = 'No';

Fungsi standard dari Length adalah untuk mencari panjang dari string. Perbandinganantar string didefinisikan dengan melihat urutan karakter di dalamnya. Misalnya “AB”lebih besar dari “A”; sehingga ‘AB’>’A’ menghasilkan TRUE. String kosong ( panjangnya 0) adalah string yang mempunyai urutan terendah.

String dapat dicari urutannya seperti halnya Array. Jika S adalah sebuah variabel stringdan I adalah sebuah ekspresi numerik yang menghasilkan bilangan bulat, maka S[I] akanmenghasilkan karakter dari S yang ke i. Statement MyString[2]:=’A’ akan mengisikankarakter ke-2 dari MyString dengan karakter A.

Contoh berikut adalah penggunaan fungsi standard UpCase untuk mengubah sebuahstring menjadi huruf besar.

var I: Integer;

beginI := Length(MyString);while I > 0 dobegin

MyString[I] := UpCase(MyString[I]);I := I - 1;

end;end;

B. Tipe Untai Pendek (Short String)Deklarasi String akan mendeklarasikan sebagai shortstring apabila : Opsi dimatikan {$H-}, maka deklarasi string akan selalu shortstring Opsi dinyalakan {$H+} dan diberikan panjang tertentu, maka deklarasi tersebut

adalah shortstring.

Page 24: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

23tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

Predefined type untuk shortstring adalah :

ShortString = String[255];

C. Tipe AnsistringsFormat penulisan :

typeidentifier=ansistring;

Tipe ansistring adalah tipe string dengan panjang tanpa batas. Dalam proseskompilasi, ansistring diperlakukan sebagai pointer. Jika string adalah kosong (‘‘), makapointer akan menunjuk pada NIL. Jika ada isinya, pointer akan menunjuk suatualamat pada heap memory.

Ketika tipe ansistring dideklarasikan, Free Pascal hanya mengalokasikan alamat untukpointernya saja. Pointer ini pasti berisi NIL, sehingga isi mula-mula dari variabelansistring pasti kosong (tidak mempunyai nilai apa-apa)

D. Tipe PCharFormat penulisan :

typeidentifier=PChar;

Pchar adalah variabel berjenis pointer yang mengarah ke sebuah array dengan tipeChar, yang diakhiri dengan karakter 0 (#0). Dengan tipe Pchar, dimungkinkan adanyaoperasi tambahan pada tipe ini.

Perhatikan cara pemakaian PChar pada program di bawah ini :

program one;var p : PChar;begin

P := 'This is a null-terminated string.';WriteLn (P);

end.

Akan sama dengan :

program two;const P : PChar = 'This is a null-terminated string.'begin

WriteLn (P);end.

Mungkin juga nilai sebuah string diberikan pada Pchar, caranya :

Page 25: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

24tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

Program three;Var S : String[30];

P : PChar;begin

S := 'This is a null-terminated string.'#0;P := @S[1];WriteLn (P);

end.

3. Tipe Terstruktur (Structured Type)Tipe terstruktur dalam pascal adalah tipe yang dapat menampung lebih dari 1 nilai.Free Pascal mendefinisikan beberapa tipe terstruktur ini, yaitu :

A. Tipe ArrayTipe array adalah suatu tipe yang dapat menampung beberapa nilai dengan tipe yangsama dalam bentuk satu dimensi atau multidimensi. Tiap nilai dalam array dapat diacudengan nama array dan indeksnya yang diletakkan dalam kurung.

Format penulisan:

typeidentifier=array[tipe_indeks] of tipe_data

Tipe_indeks adalah suatu tipe data ordinal (apa itu tipe data ordinal ? Terdiri dari apa sajatipe data ordinal ?)Tipe_data mendefinisikan bahwa array tersebut untuk menampung nilai dengan tipe dataapa saja.

Contoh dalam program :

typea=array[boolean] of byte;c=5..10;b=array[1..10,c] of real; {termasuk tipe data apa c?}

varnilai_a:a;nilai_b:b;

beginnilai_a[true]:=10;nilai_b[1,5]:=10.4;

end.

Dalam contoh di atas, tipe_indeks apa yang digunakan? Berapa byte-kah yang digunakanprogram di atas untuk mendeklarasikan variabel dalam tipe tersebut ?

Page 26: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

25tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

B. Tipe Himpunan (Set)Himpunan adalah kumpulan dari beberapa nilai yang bertipe ordinal. Dalam sebuahhimpunan, nilai-nilai di dalamnya akan otomatis terurut dari elemen yang paling kecilhingga yang paling besar. Dan tidak ada 2 nilai yang sama dalam sebuah himpunan.

Format penulisan:

typeidentifier=set of ordinal_type;

Contoh dalam program :

type TIntSet = set of 1..250;var Set1, Set2: TIntSet;begin

Set1 := [1, 3, 5, 7, 9];Set2 := [2, 4, 6, 8, 10]

End.

Operasi-operasi yang dapat diberlakukan pada tipe data set :

Operation Operand Result type Exampleunion set set Set1 + Set2difference set set S - Tintersection set set S * Tsubset set Boolean Q <= MySetsuperset set Boolean S1 >= S2equality set Boolean S2 = MySetinequality set Boolean MySet <> S1membership ordinal, set Boolean A in Set1

Evaluasilah ekspresi di bawah ini. Tentukan nilai akhir untuk ekspresi tersebut.

VarA,B:set of char

BeginA:=[‘A’..’E’];B:=[‘D’..’H’];

End.

A + B A – B B – A A * B ‘A’ in B A in B ‘A’ <= B

Page 27: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

26tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

C. Tipe RecordSebuah record dapat terdiri dari sejumlah komponen (atau field), yang masing-masingfield dapat mempunyai tipe yang berbeda-beda.

Format penulisan :

Type identifier = recordfieldList1: type1;...fieldListn: typen;

end;

Contoh penulisan sebuah record :

TypePoint = Record

X,Y,Z : Real;end;

RPoint = RecordCase Boolean ofFalse : (X,Y,Z : Real);True : (R,theta,phi : Real);end;

BetterRPoint = RecordCase UsePolar : Boolean ofFalse : (X,Y,Z : Real);True : (R,theta,phi : Real);end;

TDateRec = recordYear: Integer;Month: (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec);Day: 1..31;

end;

var Record1, Record2: TDateRec;

Deklarasi variabel di atas (Record1 dan Record2) mempunyai tipe data yang sama. Untukmengakses nilai untuk tiap field dalam sebuah record, menggunakan format :

Namarecord.namafield

Contoh :Record1.Year := 1904;Record1.Month := Jun;Record1.Day := 16;

Atau dapat juga dengan menggunakan statement With .

Page 28: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

27tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

with Record1 dobegin

Year := 1904;Month := Jun;Day := 16;

End;

Untuk tipe data record yang sama, dapat berlaku statement :

Record2 := Record1;

D. Tipe FileFile adalah sekumpulan elemen (data).

Sintaks penulisan untuk tipe data file:

type fileTypeName = file of type

di mana fileTypeName is sembarang nama identifier dan tipe adalah fixed-size type.Contoh :

typePhoneEntry = record

FirstName, LastName: string[20];PhoneNumber: string[15];Listed: Boolean;

end;PhoneList = file of PhoneEntry;

VarFilephone: PhoneList;

Deklarasi di atas, mendeklarasikan file bertipe record. Deklarasi di atas, dapat juga secaralangsung dituliskan:

var List1: file of PhoneEntry;

Tipe data file dapat juga berupa file tidak bertipe.

Format penulisan:

VarMyFile : File;

Page 29: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

28tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

4. Tipe PointerPointer adalah sebuah variabel yang berisi alamat memori dan bukan berisi data numerik ataustring seperti halnya variabel biasa.

Format penulisan:

type pointerTypeName = ^type

Contoh dalam program :

varX, Y: Integer; // X and Y are Integer variablesP: ^Integer; // P points to an Integer

beginX := 17; // assign a value to XP := @X; // assign the address of X to PY := P^; // dereference P; assign the result to Y

end;

5. Tipe prosedural (Procedural Types)

Tipe prosedural pada Free Pascal berbeda dengan Turbo Pascal walaupun secara konsepsama. Berikut adalah contoh pemakaian dalam program :

Type TOneArg = Procedure (Var X : integer);TNoArg = Function : Real;

var proc : TOneArg;func : TNoArg;

Pengubah (Variable)Variabel adalah penampung nilai yang nilai di dalamnya dapat berubah pada saat runtime.Variabel harus mempunyai tipe data tertentu, sehingga compiler dapat memperlakukan datayang ditampung dengan semestinya. Deklarasi untuk variabel terdiri dari 2 bagian, yaitu namavariabel dan tipe datanya, yang dipisahkan dengan semicolon (:).

Cara mendeklarasikan variabel adalah :

Var Identifierlist : type;

Identifierlist merupakan kumpulan identifier yang dipisahkan dengan tanda koma dan typeadalah sembarang tipe data.

Contoh pendeklarasian variabel yang benar :Var

a:byte;

Var a,b:byte;

Page 30: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

29tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

VarX, Y, Z: Double;I, J, K: Integer;Digit: 0..9;Okay: Boolean;

Contoh pendeklarasian variabel yang salah:

Vara,b;

vara:8;

Konstanta (Constant)Konstanta berisi suatu nilai yang tidak dapat dirubah. Pemberian nilai untuk konstanta ini padasaat konstanta dideklarasikan.

Contoh deklarasi konstanta

constPi = 3.14159;Answer = 342;ProductName = 'Delphi';

MaxData = 1024 * 64 - 16;NumChars = Ord('Z') - Ord('A') + 1;Message = 'Hello world...';

Konstanta seperti di atas disebut sebagai konstanta tak bertipe. Sedangkan konstanta yang bertipemempunyai sifat seperti variabel. Untuk konstanta bertipe deklarasinya:

const identifier: type = value

Mendeklarasikan konstanta bertipe untuk ARRAY:const Digits: array[0..9] of Char = ('0', '1', '2', '3', '4', '5', '6', '7', '8', '9');Factorial: array[1..7] of Integer = (1, 2, 6, 24, 120, 720, 5040);

Mendeklarasikan konstanta bertipe untuk RECORDtype

Point = recordX, Y: Real;

end;Vector = array[0..1] of Point;Month = (Jan, Feb, Mar, Apr, May, Jun, Jly, Aug, Sep, Oct, Nov, Dec);Date = recordD: 1..31;M: Month;Y: 1900..1999;

end;const

Origin: Point = (X: 0.0; Y: 0.0);Line: Vector = ((X: -3.1; Y: 1.5), (X: 5.8; Y: 3.0));SomeDay: Date = (D: 2; M: Dec; Y: 1960);

Page 31: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

30tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

Mendeklarasikan konstanta bertipe untuk SETtype

Digits = set of 0..9;Letters = set of 'A'..'Z';

constEvenDigits: Digits = [0, 2, 4, 6, 8];Vowels: Letters = ['A', 'E', 'I', 'O', 'U', 'Y'];HexDigits: set of '0'..'z' = ['0'..'9', 'A'..'F', 'a'...f'];

Mendeklarasikan konstanta bertipe untuk tipe data sederhanaconst

Maximum: Integer = 9999;Factor: Real = -0.1;Breakchar: Char = #3;

Mendeklarasikan konstanta bertipe untuk tipe data stringconst

Heading: string[7] = 'Section';NewLine: string[2] = #13#10;TrueStr: string[5] = 'Yes';FalseStr: string[5] = 'No';

Page 32: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

31tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

Bab 4OPERASI DI PASCAL

Operasi AritmatikaOperasi Aritmatika adalah operasi untuk melaksanakan suatu proses perhitungan. Hasil darioperasi ini diberikan pada variabel yang dapat menampung nilai numerik.

Seperti yang telah ditulis pada pembahasan tipe bilangan bulat dan real, operator pada operasiaritmatika adalah :

Tabel operator untuk operasi aritmetika

Operator +, - dan * juga dipergunakan untuk operasi himpunan (set)

Yang perlu diperhatikan dalam operator aritmatika adalah: Tipe bilangan bulat dapat diberikan kepada tipe real, tapi tidak berlaku sebaliknya. Contoh :

VarA:real;L:Longint;

beginA := L; {statement yang benar}L := A; {statement yang salah}

End.

Tidak boleh ada dua atau lebih operator yang berurutan dalam sebuah ekspresi aritmatika.Contoh:

VarA:real;L:Longint;

BeginA := A + 1; {statement yang benar}A := L++; {statement yang salah}

End.

Operasi LogikaOperasi logika menggunakan sistem bilangan biner untuk perhitungannya. Ada 6 buah operatorlogika yang dikenal Pascal, yaitu :

Page 33: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

32tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

Tabel operator logika

Operasi BooleanOperasi boolean menggunakan operand yang bertipe boolean serta hasil boolean untukoperasinya. Ada 4 operator boolean yang dikenal Pascal, yaitu :

Tabel operator boolean

Operasi StringOperasi string pada Pascal hanya mengenal sebuah operator yaitu operator + atau penggabunganantar string.

Operasi himpunanPada operasi himpunan selalu menggunakan tipe data himpunan (set) untuk operator maupunoperannya. Ada 3 macam operator pada operasi himpunan, yaitu :

Tabel operasi himpunan

Hasil dari operasi-operasi himpunan berdasarkan aturan sebagai berikut: Nilai ordinal C ada di A+B hanya jika C ada di A atau B Nilai ordinal C ada di A-B hanya jika C terdapat di A dan bukan di B Nilai ordinal C ada di A*B hanya jika C terdapat baik di A maupun B

Operasi RelasiOperasi ini digunakan untuk melakukan perbandingan dan menghasilkan boolean (true ataufalse) yang menunjukkan perbandingan tersebut bernilai benar atau salah.

Page 34: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

33tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

Tabel operator relasi

LATIHAN-3 :

Merakit program sederhana1. Salinlah program dibawah ini baik-baik dengan IDE (editor) Free Pascal jangan

sampai ada yang salah .a. Program Lat_1a; b. Program Lat_1b;

Var Varpanjang, lebar, tinggi, isi : Real; panjang, lebar, tinggi, isi : Real;

Begin Beginpanjang :=5; Read (panjang);lebar :=3; Read (lebar);tinggi :=4; Read (tinggi);isi := panjang * lebar * tinggi; isi :=panjang * lebar * tinggi;Writeln (isi); Writeln (isi:5:2);

End. End.

c. Program Lat_1c;Var

panjang, lebar, tinggi, isi : Real;Begin

Write (‘Panjang :’); Readln (panjang);Write (‘Lebar :’); Readln (lebar);Write (‘Tinggi :’); Readln (tinggi);Isi := panjang * lebar * tinggi;Writeln (‘Isi :’,isi:10:3);

Pertanyaan :a. Untuk menghitung apakah program Lat_1a, Lat_1b dan Lat_1c ?b. Jalankan masing-masing program tersebut dengan perintah Run ( Ctrl + F9 ),

kemudian lihat hasilnya dengan perintah Debug User Screen (Ctrl +F5)

Page 35: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

34tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

c. Apakah perbedaannya hasil program Lat_1a, Lat_1b dan Lat_1c ?d. Sisipkan masing-masing program tersebut dengan kata tercadang Uses Crt dan ClrScr

Jalankan Program kemudian amatilah hasilnya

2. Diketahui suatu persegi panjang dengan panjang ( P ) = 20, lebar ( L ) = 25Buatlah suatu program untuk menghitung luas dan kelilingnyaRumus : LUAS = P * L

KELILING = 2 * ( P + L )

3. Bila masa suatu benda adalah M dan mengalami percepatan sebesar A , maka yangtimbul adalah gaya F = M * A. Bila M = 50 Kg dan A = 15 m/det2. Buatlah programuntuk menghitung gaya F

4. Buatlah program untuk menghitung keliling dan luas lingkaran , jika diketahui jari-jarinya berupa input ( masukan ) harga R = 100

5. Jika Celcius = 75 O , buatlah program menghitung Fahrenheit dan Reamur, demikianjuga jika celcius 100 O hitung pula Fahrenheit dan ReamurnyaRumus Konversi suhu : Fahrenheit = celcius / 5 * 9 + 32

Reamur = celcius / 5 * 4

6. Harga BBM Pertamax Rp.8800; /liter Premium Rp. 4500; /liter . Bila kita membeli 5liter Pertamax dan 10 Premium . Berapa total harganya ? Buatlah Programnya !

7. Salinlah program dibawah ini dengan IDE Free Pascal

Program Einstein;Uses Crt;Const c = 300000000;Var

E, m : Real;BeginClrScr;

Write(‘Masukkan massa benda (Kg):’); Readln(m);E := m*c*c;Writeln (‘Energi yang terkandung di dalam’,m:6:3,’Kg benda adalah :’,E:20:0,’J’);

End.

Jalankan Program , Amati hasilnya !

8. PT. Telkom di kota Kediri mempunyai tarif Rp. 1000; per pulsa. Setiap langganandikenakan biaya langganan sebesar Rp. 5000; per bulan . Jumlah pulsa = 525. Buatlahprogram untuk menghitung tagihan langgananKeluaran : Jumlah TagihanPetunjuk : Buatlah biaya langganan dan tarif pulsa sebagai konstanta ( karena sama

untuk semua langganan )

Page 36: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

35tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

Bab 5STATEMENT

Statement adalah perintah yang dikenal oleh Pascal. Dalam bahasa Pascal terdapat 11 statement,artinya SEMUA program dalam Pascal hanya menggunakan kombinasi dari ke-11 statement inisaja.

Statement-statement yang dikenal Pascal adalah :1. Assignment (pemberian nilai)2. Compound (penggabungan)3. IF – THEN – ELSE4. CASE – OF5. FOR – TO – DO6. REPEAT – UNTIL7. WHILE – DO8. WITH9. Procedure Call10. Goto11. Inline

Statement GOTO adalah statement yang jarang digunakan karena dianggap sebagai statementyang tidak sesuai dengan konsep pemrograman terstruktur. Sedangkan statement inline adalahstatement untuk menjalankan instruksi bahasa mesin dan tidak digunakan dalam TOKI ataupunIOI.

Assignment (pemberian nilai)Statement Assignment digunakan untuk memberikan nilai pada sebuah variabel.Sintaks penulisan:

Variabel := nilai

Contoh 1:var a,b:byte;begin

a:=10;a:=a*4;if a>5 then b:=40;

end.

Contoh 2:var a,b:byte;begin

a:=0;a=a+4;

end.Ada berapa assignment statement dari contoh di atas ?

1

Page 37: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

36tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

Catatan untuk FreePascal

Assignment HasilA += b Menambah b ke a, hasil disimpan di a.A -= b Mengurangi b dari a, hasil disimpan di a.A *= b Mengalikan a dengan b, hasil disimpan di a.A /= b Membagi a terhadap b, hasil disimpan di a.

Compound StatementDigunakan untuk menggabungkan beberapa statement. Pada statement ini selalu diawalidengan kata BEGIN dan diakhiri dengan kata END

Sintaks Penulisan :begin

statement;statement;…statement

end

Contoh :

if a>5 thenbegin

a:=a*4;b:=a-4

end;

Ada berapa statement assignment pada potongan program di atas ? Ada berapa statementpada potongan program di atas ? Mana yang disebut compound statement ?

IF – THEN – ELSE StatementMerupakan perintah percabangan yang akan menjalankan statement sesuai dengan kondisiyang ada.Ada 2 macam sintaks penulisan IF – THEN – ELSE :

IF kondisi THEN statementDanIF kondisi THEN statement ELSE statementContoh :

If a>5 then a:=a+1;If a-4=2 then begin a:=2;b:=a end;if (a=3) and (b=2) thenbegina:=a-1;b:=a

end else b:=3;

if a>5 then a:=4else begina:=4 mod b;b:=b-1

end;

2

3

Page 38: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

37tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

Tentukan kondisi-kondisi pada IF Statement yang ada ! Apakah compound statementdigunakan pada contoh di atas ? Apakah assignment statement digunakan pada contoh diatas ? Jika ya, tentukan di mana letak compound dan assignment statement !

FOR – TO / DOWNTO – DO StatementDigunakan untuk mengulang statement

Sintaks penulisan

FOR variabel := awal TO akhir DO statementAtauFOR variabel := akhir DOWNTO awal DO statement

Catatan:Statement akan diulang sebanyak akhir-awal+1. Selama perulangan, nilai variabel akanbernilai dari awal sampai akhir

Contoh :{Program 1} {Program 2}var var

a:byte; a,b:byte;begin begin

for a:=1 to 5 do for a:=5 downto 2 dowrite(a); for b:=1 to a do write(a+b)

end. end.

write(a) pada contoh 1, merupakan statement procedure call (pemanggilan prosedur)Pada contoh 2, setelah for a:=5 downto 2 do, statement berikutnya adalah statement for –to – do. Berapa kali statement write(a+b) dieksekusi? Tuliskan ouput dari contoh 2.

CASE OF StatementStatement case digunakan untuk perintah bercabang dengan banyak kondisi. Terdiri dariekspresi (atau biasa disebut dengan selector) dan serangkaian statement.

Sintaks penulisan :

case expression of Atau case expression ofcase: statement; case: statement;... ...case: statement; case: statement;

end elsestatement

endCatatan:Jika pada sebuah kondisi dapat terdiri dari banyak range, maka dapat kondisi-kondisi yang ada dapatdipisahkan dengan koma.

4

5

Page 39: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

38tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

Contoh :case Ch of

'A'..'Z', 'a'..'z': WriteLn( 'Letter' );'0'..'9': WriteLn( 'Digit' );'+', '-', '*', '/': WriteLn( 'Operator');

elseWriteLn( 'Special character' );

end;

Repeat – Until StatementPerintah yang ada di dalam statement repeat – until akan diulang sehingga kondisiboolean pada until bernilai true.

Sintaks penulisan:

repeatstatement;statement;...statement

until expression

Contoh:

repeat Ch := GetChar until Ch <> ' ';

repeatWrite('Enter value: ');ReadLn(I);

until (I >= 0) and (I <= '9');

Catatan: GetChar pada contoh pertama merupakan statement procedure call.

While – Do StatementStatement while terdiri terdiri dari sebuah ekspresi boolean yang mengontrol eksekusidari sebuah statement.

Sintaks Penulisan:

While expression do statement;Atau While expression do

BeginStatement;Statement;...End.

6

7

Page 40: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

39tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

Contoh:

while Ch = ' ' do Ch := GetChar;

while not Eof(InFile) dobegin

ReadLn(InFile, Line);WriteLn(OutFile, Line);Inc(LineCount);

end;

Catatan:Contoh kedua adalah statement while yang menggunakan compound statement di dalamnya.

Statement WithStatement with digunakan untuk mereferensi field pada sebuah record.

Sintaks Penulisan:

with var, var, ... var do statement

Contoh:

with Date[I] dobegin

month := 1;year := year + 1;

end;

Ekivalen dengan perintah:

Date[I].month := 1;Date[I].year := Date[I].year + 1;

8

Page 41: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

40tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

Contoh-contoh ProgramPascal

I. Perulangan FOR positif

Contoh 1 :Perulangan positif untuk satu statement :

Program FOR_Positif;USES CRT;VAR

i : INTEGER;BEGINCLRSCR;

FOR i := 1 TO 5 DO WRITELN('SMA NEGERI 8 KEDIRI');END.

Apakah hasil Program diatas !

Contoh 2 :Perulangan positif menggunakan blok statement :

PROGRAM FOR_BLOK_STATEMENT;USES CRT;VAR

i : INTEGER;BEGINCLRSCR

FOR i:= 1 TO 10 DOBEGIN

WRITELN('SMA NEGERI 8 KEDIRI'); { blok statement }END;

END.

Apakah Output Program diatas ! Simpulkan !

Contoh 3 :Peggunaan perulangan FOR dalam blok statement untuk membuat tabel

USES CRT;VAR

a,b,c : INTEGER;bagi : REAL;

BEGINWRITELN('----------------------------------------------');WRITELN(' a a*a a*a*a 1/a ');WRITELN('----------------------------------------------');

Page 42: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

41tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

FOR a:= 1 TO 10 DOBEGINb:= a*a;c:=a*a*a;bagi := 1/a;WRITELN(a:4,c:10,d:10,bagi:12:3);END;WRITELN('----------------------------------------------');

END.

Apakah Hasil Program diatas ?

Perulangan FOR negatifContoh 1 :

USES CRT;VAR

i : INTEGER ;BEGIN

FOR i := 10 DOWNTO 1 DO WRITE(i:3);END.

Hasilnya adalah : ........

Perulangan FOR tersarangContoh 2 :

VARa,b : INTEGER;

BEGINFOR a := 1 TO 3 DOBEGIN

FOR b := 1 TO 2 DO WRITE(a :4,b:2);WRITELN;

END;END.

Apakah hasil Program diatas ?

II. Perulangan WHILE-DOContoh :

USES CRT;VAR i : INTEGER;BEGIN

i := 0;WHILE i < 5 doBEGIN

WRITE(i:3);INC(i); { sama dengan i:=i+1 }

END;END.

Page 43: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

42tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

Apakah Output Program diatas ?

Perulangan WHILE-DO tersarangContoh :

USES CRT;VAR

a, b : INTEGER;BEGIN

CLRSCR;a:=1;b:=1;WHILE a < 4 DO { loop selama a masih lebih kecil dari 4 }BEGIN

a := a+1;WHILE b < 3 DO { loop selama b masih lebih kecil dari 3 }BEGIN

WRITE(a:3,b:2);b:=b+1;

END;END;READLN;

END.

III. Perulangan REPEAT-UNTIL.Contoh :

VARi : INTEGER;

BEGINi:=0;REPEAT

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

UNTIL i=5;END.

Apakah Hasil Program diatas ?

REPEAT-UNTIL tersarangContoh :

VARa,b,c : REAL;

BEGINWRITELN('========================================');WRITELN(' sisi A sisi B Sisi C ');WRITELN(' =======================================');a:= 1;

Page 44: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

43tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

REPEAT { perulangan luar }b := 0;REPEAT { perulangan dalam }c:=SQRT(a*a+b*b);WRITELN(a:6:2, b:9:2, c:9:2);b:=b+5;UNTIL b>25; { berhenti jika b lebih besar dari 5 untuk

perulangan dalam }a:=a+1;

UNTIL a>3; { berhenti jika a lebih besar dari 3 untukperulangan luar }

WRITELN(' =======================================');END.

BENTUK-BENTUK PERCABANGAN / PENYELEKSIAN KONDISI

1. IF-THEN

Contoh Program :

USES CRT;VAR

Nilai : REAL;BEGIN

WRITE('Jumlah Nilai :');READLN(nilai); { Pemasukan data }IF nilai >60 THEN { seleksi kondisi variabel nilai }WRITELN('Lulus') { Dilaksanakan jika nilai lebih besar dari 60 }ELSEWRITELN('Tidak lulus'); { Dilaksanakan jika variabel nilai lebih kecil dari 60 }

END.

Jika kita Memasukan 40 pada varibel nilai, Maka program diatas akan mencetak Hasil : ..........

2. CASE-OF

Contoh program :

PROGRAM nilai;VAR

nil : CHAR;BEGIN

WRITE('Nilai Numerik yang didapat :');READLN(nil);CASE nil OF'A': WRITELN('SANGAT BAIK');'B': WRITELN('BAIK');'C': WRITELN('CUKUP');

Page 45: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

44tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc

'D': WRITELN('KURANG');'E': WRITELN('SANGAT KURANG ');

END;END.

Jika Nilai Numerik yang didapat : C apakah Hasilnya ...... ?

SOAL - SOAL :

Buatlah program untuk soal dibawah ini dengan tampilan sebagus mungkin

1. Untuk menampilkan tulisan Saya Suka Pascal 20 kali

2. Untuk menghitung nilai rata-rata dari sejumlah nilai

3. Untuk menampilkan bilangan dari 15 ke 1

4. Untuk menyeleksi nilai ujian yang di dapat jika > 75 lulus , atau remidi

5. Untuk membuat tabel derajat Celcius, Reamur, Fahrenheit

6. Untuk menghitung Isi silinder jika pada pertanyaan “Akan menghitung lagi (Y/T) ? “ diisi

huruf T

7. Untuk menentukan segitiga ( lancip, siku-siku, tumpul )

8. Untuk menampilkan bintang ( * )

9. Untuk menghitung jarak dua titik ( Titik A dan B )

10. Untuk mengurutkan bilangan

Page 46: KHUSUS DIPAKAI DALAM LINGKUNGAN SENDIRI))) · PDF fileMasing-masing bahasa pemrograman mempunyai ciri ... (yang disebut sebagai applet) yang dapat berjalan pada web ... Free Pascal

Susiantoro Panduan Praktikum Pemrograman Dasar Pascal Panduan Praktikum Pemrograman Pascal2012

45tiksman8kediri ----------------------------------------------------------------------------------------- susmix24.co.cc