Download - diktat PASCAL 7.0_2
-
7/25/2019 diktat PASCAL 7.0_2
1/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
BAB I
PENDAHULUAN
Pemrograman Pascal merupakan salah satu dari beberapa bahasa tingkat tinggi ( High Level
Language ) pemrograman yang ada saat ini, dan berjalan di bawah kendali sistim operasi DO dan!indows" #gar program ini bisa dimengerti oleh komputer, maka diperlukan suatu programpenterjemah yang akan merubah program yang dibuat menjadi basaha mesin"#da dua jenis program penterjemah bahasa pemrograman tingkat tinggi ke dalam bahasa mesin,yaitu INTERPRETERdan COMPILER.Pada $nterpreter, instruksi % instruksi dalam program sumber ( program yang ditulis ) dibaca, laluditerjemahkan ( diinterprestasikan ) dan langsunh dilasaksanakan satu per satu" &adi setiap kali kitaakan menjalankan program, maka kita akan selalu menggunakan program sumber'sehinggainterpereter juga selalu dibutuhkan"Pada ompiler, program sumber dibaca secara keseluruhan dan menterjemahkannya menjadi setlengkap instruksi dalam bahasa mesin sebelum instruksi'instruksi itu dilaksanakan"Hasil
penterjemahan program sumber ke bahasa mesin ini disebut dengan program objek ( ojectprogram )"etiap kali akan menjalankan program, kita dapat menggunakan program objek dalambahasa mesin tadi ( hasil penterjemahan ), dan tidak perlu menggunakan program sumberlagi"Dengan demikian, tidak perlu diterjemahkan lagi, sehingga proses pelaksanaan program menjadilebih cepat"Hal di atasdapat digambarkan seperi bagan di bawah ini
*emory +tama
Proses Interpreter
Pusat Laboratorium omputer +niversitas -atamHalaman . dari /0
Programsumber
$nterpreter
ProgramObjekData
Hasil
Hasil
-
7/25/2019 diktat PASCAL 7.0_2
2/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
*emory +tama
1ahapanompilasi
*emory +tama
1ahapan PelaksanaanProgram
Proses Kompilasi
Tahapan tahapan dalam Pemrograman
Langkah % langkah yang harus dilakukan dalam menyelesaikan masalah dengan komputer ( dalampemrograman ) adalah 2
." De3enisikan masalah' #pa masalahnya' *asukan ( input) apa saja yang diperlukan' Hasil yang dinginkan ( output ) seperti apa
4" -uat bagan dan struktur cara penyelesaian 2' -agan penyelesaian secara global
' Deskripsi berbagai tugas dan subtugas masing'masing bagian tersebut5" Pilih metode penyelesaian2
' truktur data dan algoritma6" Pengkodean ( oding )2
' *emilih bahasa pemrograman yang sesuai' *enterjemahkan algoritma ke dalam bahasa pemrograman tersebut"
/" *encari kesalahan ( debugging )' ompilasi synta7
Pusat Laboratorium omputer +niversitas -atamHalaman 4 dari /0
Programumber
compiler
8ile
ProgramObjekData Hasil
8ile
ProgramObjek
-
7/25/2019 diktat PASCAL 7.0_2
3/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
' Pelaksanaan semantic, logika, ketelitian0" +ji dan veri3ikasi
*enjamin bahwa sampai tingkat kepuasan tertentu, program berjalan benar dan untuk semuakemungkinan akan memberikan hasil yang benar"
9" Dokumentasi tertulis bagi
' Pemakai, berupa petunjuk bagi pemakai program' Programer, yang akan menggunakan : mengubah program tersebut di kemudian hari"
;" Pemeliharaan program' Perbaiki kekurangan yang ditemukan kemudian' *odi3ikasi atas dasar perubahan dalam spesi3ikasi masalah"
ALGORITMA
#lgoritma merupakan metoda : langkah % langkah penyelesaian masalah secara lengkap, yangselanjutnya akan diterjemahkan ke dalam bahasa pemrograman dalam bentuk instruksi'instruksi"
#da dua cara penulisan algoritma2
." Dengan menggunakan 8low hart : -agan #lir( menggunakan simbol'simbol : bagantertentu )
4" Dengan menggunakan kata'kata atau kalimat % kalimat : pseudocode
Perbedaannya dapat dilihat pada gambar di bawah ini2
Diagram alir alimat
$3 < kondisi =>a 1idak 1hen"""
? #. ?"@lse ?" #4@nd
DIAGRAM ALIR !LO" CHART #
#da dua jenis diagram alir, yaitu2
Pusat Laboratorium omputer +niversitas -atamHalaman 5 dari /0
ondisidipenuhi
#. #4
-
7/25/2019 diktat PASCAL 7.0_2
4/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
." Diagram alir system, yaitu bagan dengan symbol % symbol tertentu yang menggambarkanurutan prosedure dan proses suatu 3ile dalam suatu media menjadi 3ile di dalam media lain,dalam system pengolahan data"
4" Diagram alir program, yaitu bagan dengan symbol'simbol tertentu yang menggambarkanurutan proses dan hubungan antar proses secara mendetail di dalam suatu program"
imbol % symbol untuk 3low chart ( diagram alir ) system 2
artu ( ard ) Punched paper tape Pita magnetic
ertas pencetak Disket magnetic A1 monitor
Disket ey punch eyboard
imbol % symbol untuk 3low chart (diagram alir) program2
+ntuk menanyakan apakah suatu kondisi terpenuhi atau tidak
+ntuk memberi harga awal, penambahan : pengurangan sertaHarga akhir bagi variable yg digunakan sebagai pencacah dlmuatu loop
+ntuk mneyatakan awal atau akhir suatu proses
+ntuk menyatakan operasi masukan( input ) dan keluaran ( hail cetakan )
+ntuk menyatakan sekumpulan langkah ( proses ) yang ditulisebagai suatu prosedur ( subprogram : subrutin )
Proses : pengolahan ( mis2 perhitungan , perubahan harga )
Penghubung dalam satu halaman
Penghubung antar halaman
+ntuk menunjuk arah aliran proses
P$EUDOCODE
Pusat Laboratorium omputer +niversitas -atamHalaman 6 dari /0
-
7/25/2019 diktat PASCAL 7.0_2
5/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
Pseudo berarti urutan", code berarti menunjukan code : perintah bahasa pemrograman"Denganpseudocode memungkinkan programaer ber3ikir terhadap permasalahan tanpa harus memikirkansynta7 pemrograman karena tidak ada aturan penulisan dalam psesudocode"
truktur Psesudocode2
." truktur urut ( eBuential tructure )#dalah suatu struktur program yang akan memproses suatu instruksi yang didalamnya tidakada instruksi yang mengandung suatu keputusan ( decision ) atau pengulangan( loop)"truktur ini disebut juga struktur sederhana"ontoh2-aca jam kerja, upahHitung gaji C jamkerja upahetak gaji8lowchartnya2
4" truktur eputusan ( Decision tructure)*emungkan suatu instruksi harus memilih alternati3 tertentu,Decision ini terbagi atas 5 yaitu2
a" $8 ?1H@E @L@-aca jam kerja , upah&ika jam kerja F ;G
' >esO1 C ( jamkerja % ; ) /GGG
' Eo Ot C G
Hitung gajietak hasil perhitungan
$3 jamkerja F ; then
O1 C ( jamkerja % ;) /GG@lse
O1 C G@nd i3
Pusat Laboratorium omputer +niversitas -atamHalaman / dari /0
start
-aca jam kerja
Hitung gajiCjamkerjaupah
etak gaji
stop
start
-
7/25/2019 diktat PASCAL 7.0_2
6/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
b" #@>aitu struktur yang memprose sebuah blok statemen pada sebuah kasus yangmempunyai kondisi yang harus diseleksi"-entuk +mum2elect ase
ase ondisi .Do 1indakan.
ase ondisi 4Do 1indakan4
ase ondisi 5Do 1indakan5
@ndcase
ontoh2elect ase
ase ol C .apok C .GG
ase ol C 4apok C 4/G
ase ol C 5
apok C /GGOtherwise
apok C 9/G@ndcase
5" truktur $terasi1erbagi 5 bentuk2
Pusat Laboratorium omputer +niversitas -atamHalaman 0 dari /0
-acajamkerja,upah
&amkerja F;
O1C(jk';)/GGO1C G
aji C upah I ot
etak gaji
stop
-
7/25/2019 diktat PASCAL 7.0_2
7/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
!or %Ne&t
8ungsi 2 +ntuk mengulang statemen selama kondisi terpenuhi2ontoh2
8or $ C . to /Print J#lgoritmaK
Ee7t $
Do "h'le
8ungsi2 pengulangan blok statemen selama kodisi benarontoh2
Di while "1"1unj C .G gapok
@nddo
Repeat %Unt'l
8ungsi2 +ntuk pengulangan blok statemen sampai kondisi yang diseeksi tidak
terpenuhi"Contoh(
Aepeat$2C JalgoritmaK
!riteln $+ntil $ C /
$t)d* +a,),(
." ebuah jasa 3otocopy akan mengkomputerisasi sistimnya untuk memberikan diskon kepadapelanggannya, denganketentuan2
Harga 3otocopy :lembar C ./G&ika jumlah 3otocopy FC5G, discount C / dari total&ika jumlah 3otocopy M5G, discount C 4 dari total1ampilkan nama pelanggan, jumlah 3otocopy, discount,total bayar"-uatlah 3lowchartnyaN
&awab2Data masukan2 Eama pelanggan, C nmplg
¨ah 3otocopy C jml
Data Proses2 1otal C ./G jml&ika jumlah 3otocopy FC 5G , disc C / total&ika jumlah 3otocopy M 5G , disc C 4 total-ayar C total % disc
Data output2 nmplg,jml,total,disc,bayar8lowchartnya2
Pusat Laboratorium omputer +niversitas -atamHalaman 9 dari /0
start
-
7/25/2019 diktat PASCAL 7.0_2
8/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
>
4" -uat 3lowchart untuk menetukan jurusan dan uangkuliah mahasiswa +niversitas -atamdibawah ini2
Data *asukan Eo ujian,nama,kode 3akultasData Proses2 2&ika ode 3akultas C . , maka nama 3akultas C teknik
&ika ode 3akultas C 4 , maka nama 3akultas C hukum&ika ode 3akultas C 5 , maka nama 3akultas C ekonomi&ika ode 3akultas C 6 , maka nama 3akultas C kodokteran
&ika 3akultas C teknik, maka uangkulah C ;GG"GGG&ika 3akultas C hukum, maka uangkulah C 0GG"GGG&ika 3akultas C ekonomi, maka uangkulah C 0/GG"GGG&ika 3akultas C kedokteran, maka uangkulah C ."/GG"GGG
Pusat Laboratorium omputer +niversitas -atamHalaman ; dari /0
Emplg,jml,disc,total,bayar
$nput Emplg,jml
1otal C ./G jml
&mlFC5GDisc C / total
Disc C G
-ayarCtotal ' disc
etaknmplg,jml,disc,bayar
stop
-
7/25/2019 diktat PASCAL 7.0_2
9/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
Data output2 Eo ujian, nama, jurusan, uang kuliah
E E E
> > >
5" ebuah hotel akan mengelola data tamunya dengan data sebagai berikut2
Data masukan2 nomor pengenal,nama,type kamar,lama inapData Proses2&ika type kamar C eko,tari3 C 9/GGG&ika type kamar C std,tari3 C ./GGGG&ika type kamar C vip,tari3 C 4/GGGG-ayar C C lama inap tari33Pajak C .G bayar1otal bayar C bayar I pajakData output 2 cetak semua data input dan proses
8low cahart2
Pusat Laboratorium omputer +niversitas -atamHalaman dari /0
start
Eouj,nm,k3,3ak,uk
$nputnouj,nm,k3
3 C.
3C4
8akCK1eknik
3C5
8akCKhokumK 8akCKekon 8akCKdokK
Printnouj,nm,3ak,uk
stop
start
Ep,nm,tk,inp,byr,tr3,pjk,tot
$nput np,nm,tk,inp
-
7/25/2019 diktat PASCAL 7.0_2
10/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
N N
- -
6" ebuah rumah sakit akan mengelola data pasiennya dengan data sebagai berikut2Data masukan 2 kode pasien,nama,kode penyakit,kode rawat,biaya obatData Proses2&ika kode penyakit C P*, jenis penyakit C mata, biaya periksa C 9/GG&ika kode penyakit C PD, jenis penyakit C Dalam, biaya periksa C /GG
&ika kode penyakit C P, jenis penyakit C ulit, biaya periksa C .GGGG&ika kode penyakit C P#, jenis penyakit C #nak, biaya periksa C ;/GG
&ika kode rawat C A$ , status C Aawat $nap, biaya admC /GGG&ika kode rawat C A& , status C Aawat &alan, biaya admC 6GGG&ika kode rawat C A1 , status C Aawat 1untas, biaya admC 0GGG
1otal biaya C biaya obat I biaya periksa I biaya adm
Output 2 kode pasien,nama,jenis penyakit,status rawat,biaya obat,biaya periksa,biaya adm,totalbiaya"
8low cahrt2
Pusat Laboratorium omputer +niversitas -atamHalaman .G dari /0
1k CekoQ
1kCQstdQ
1r3C9/GGG 1r3C./GGG 1r3C4/GGGG
-yrCinaptr3
PjkC.Gbyr
1otCbyrIpjk
etak np,nm,tk,inap,byr,pjk,tot
stop
start
dp,nm,kp,kr,byo,jp,sr,ba,tot
$nputkp,nm,kp,kr,byo
-
7/25/2019 diktat PASCAL 7.0_2
11/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
E E E
E
PEMROGRAMAN TER$TRU+TUR
ebuah program yang baik adalah dapat meliputi beberapa criteria di bawah ini2
." -ekerja sesuai dengan tujuan dan memenuhi spesi3ikasi yang telah ditentukan4" 8lksibel5" 1idak mengandung kesalahan6" Didokumentasikan dengan baik/" epat dalam waktu pelaksanaannya"
Pusat Laboratorium omputer +niversitas -atamHalaman .. dari /0
pCQp
m
pCQp
dQ
pCQp
kQ
&pCQmataQ-pC9/GG
&pCQdalamQ-pC/GG
&pCQkulitQ-pC.GGGG
&pCQanakQ-pC;/GG
rCQA$Q
rCQA&Q
rCQrawat inapQ-aC/GGG
rCQrawatjalanQ-aC6GGG
rCQrawat tuntas-aC0GGG
.
.
1otCbyoIbpIba
etak kp,nm,jk,sr,byo,bp,ba,tot
stop
-
7/25/2019 diktat PASCAL 7.0_2
12/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
0" @33isien dalam penggunaan memory komputer
BAB II
DA$AR DA$AR PEMROGRAMAN PA$CAL ./
Pascal merupakan bahasa tingkat tinggi yang orientasinya pada segala tujuan"Dirancang olehPro3"Eiklaus !irth dari technical +niversity o3 Rurich,wiss pada tahun .9. % .94" tandarPascal adalah bahasa Pascal yang dide3iniskan oleh "&ensen dan Eiklaus !irth" Eama Pascaldiambil sebagai penghargaan terhadap -laise Pascal -ekerja dengan Program Pascal 9"G berarti andamenyelesaikan suatu masalah dengan langka'langkah yang berdasarkan aturan yang berlaku diPascal 9"G" #gar masalah yang akan anda selesaikan dengan Pascal 9"G dapat diselesaikan denganbaik ,e33ekti3 dan e33isien, maka sebelum memulai menulis program anda terlebih dahulu diharapkanmembuat perencanaan"Pertama perhatikan dan amati dengan baik apa masalahnya dan apa yangdiinginkan untuk diselesaikan "Dengan cara ini, pembuat program harus mengkonsentrasikan diri
pada logika program secara umum dan tidak memikirkan tntang synta7 program secaradetail"elanjutnya, logika yang sangat umum ini dijabarkan secara rinci, dengan menambahkanbagian % bagian yang lebih detail"Lakukan penjabaran ini beberapa kali sampai didapat strukturlogika program yang cukup detail untuk mulai diimplementasikan dalam program yangsebenarnya"&ika programnya panjang : kompleks , bagan alir : 3low chart dapat digunakan untukmempermudah"Pendekatan ini seperti ini disebut dengan 1op Down Programming"Hasil akhir dari langkah % langkah di atas adalah program J setengah jadiK, yaitu suatu program yangmerupakan campuran dari kata ' kata cadangan ( Aeserved word ) dengan kata % kata dalam bahasa
Pusat Laboratorium omputer +niversitas -atamHalaman .4 dari /0
-
7/25/2019 diktat PASCAL 7.0_2
13/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
$ndonesia : inggris sehari % hari"-agian program yang seperti ini disebut dengan JPseudo odeK"&ikaPseudo code sudah dibuat dengan baik, maka implementasi selanjutnya dalam program Pascal 9"Gyang sebenarnya tidak lagi menjadi sulit"Pemrogramman Pascal 9"G bisa berjalan di bawah kendali DO dan !indows"Pada diktat ini,permasalahan yang akan kita bahas menggunakan Pascal 9"G under !indows"+ntuk bisa
menghasilkan program yang dinginkan, maka program program yang dibuat dengan bahasa Pascal9"G harus diterjemahkan ke bahasa mesin dengan menggunakan O*P$L@A P##L"
Mem)la' Pa,0al ./
*emulai program Pascal 9"G under !indows, sama simplenya dengan menjalankan program underwindows lainnya" Langkah % langkah adalah sbb2
." Dari desktop langsung diklik icon Pascal4" elanjutnya akan tampil jendela kerja , dimana program pascal diketik"5" 1ampilannya adalah seperti di bawah ini2
Pada layar di atas terdapat beberapa menu yang bisa digunakan selama bekerja dengan Pascal9"G"Diantara menu itu antara lain2
." *enu +tama ( main menu ) terdiri dari 8ile, @dit, earch, Aun,ompile, Debug,1ools,Option,!indows dan Help"
a" 8ile
*enu yang digunakan untuk melakukan hal % hal yang berhubungan dengan 3ile"Pada menuini, terdapat beberapa submenu
Open Jmembuka 3ile yang disimpanK
Eew J*embuat program : 3ile baruK ave J*enyimpan program : 3ile J
ave #s J*enyimpan 3ile dengan nama : lokasi yang berbedaK
hange Dir J*erubah directory : 3olderK
DO hell "K *enjalankan ommand DOK
Print J*encetak program : 3ile ke printerK
@7it Jeluar dari sistim Pascal 9"GK
b" @dit
-erisi perintah % perintah untuk menggunakan jendela edit yang dapat digunakan untuk
membuat atau mengedit program
c" Aun
Digunakan untuk menjalankan program
d" ompile
Pusat Laboratorium omputer +niversitas -atamHalaman .5 dari /0
-
7/25/2019 diktat PASCAL 7.0_2
14/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
Digunakan untuk mengkompilasi program (mengubah program ke bahasa mesin )"Hasilkompilasi bisa disimpan di media penyimpanan"
e" Option
Digunakan untuk mengatur kembali bagaimana lingkungan kerja
3" Debug dan -reak : !atch
Digunanakan untuk melacak kesalahan % kesalahan pada program
g" earch
Digunakan untuik mencari (8ind) atau mengganti te7t ( Aeplace ) yang dikehendaki"
h" 1ools
Digunakan untuk menampilkan pesan ( messages )
i" !indows
Digunakan untukmengatur tampilan layar
j" Help
+ntuk melihat hal % hal yang berhubungan dengan Pascal 9"G
4" &endela @dit ( @dit window) digunakan untuk menulis atau mengedit suatu program
5" &endela Output ( Output !indwo) merupakan jendela yang akan berisi hasil dari prosesprogram yang dijalankan
6" -aris -awah ( -ottom Line ) menunjukan in3ormasi tombol % tombol apa saja yang dapatditekan untuk keperluan tertentu"
Disamping bisa menggunakan menu, perintah yang digunakan untuk memproses program juga dapatmenggunakan Hotkey ( 1ombol keyboard), yang pada dasarnya sama 3ungsinya yang ada dimenu"8ungsi dari tombol hotkey itu dapat dilihat pada table di bawah ini2
1ombol 8ungsi
8. *enampilkan in3ormasi tentang posisi saat itu ( help )
84 *enyimpan program yang ada di jendela edit
85 *engambil ( load ) program : 3ile
8/ Room dan +nSoom jendela yang sedang akti3
80 witch ke windows yang akti3
#lt I 8. *enampilkan layar yang berisi help terakhir kali tampil
Pusat Laboratorium omputer +niversitas -atamHalaman .6 dari /0
-
7/25/2019 diktat PASCAL 7.0_2
15/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
#lt I 85 *engambil ( pick ) program, : 3ile
#lt I 8/ e posis layar yang direkam : melihat hasil Aun
#lt I 8 *engkompilasi program
#lt I 8.G *enampilkan versi 1urbo Pascal
#lt I - *emilih break : watch menu
#lt I *emilih menu compile di menu utama#lt I D *emilih menu debug
#lt I @ *emilih menu edit di menu utama
#lt I 8 *emilih menu 3ile di menu utama
#lt I O *emilih Option di menu utama
#lt I A *emilih Aun di menu utama
#lt I T eluar dari sistim Pascal 9"G
#lt I 80 &endela berikutnya
trl I 8 *enjalankan program : run
+e,alahan Pada Pa,0al ./
ewaktu anda membuat suatu program aplikasi dengan Pascal 9"G, ada beberapa kemungkinankesalahan yang akan terajdi, yaitu2
." esalahan synta7
esalahan ini akan muncul, jika program yang ditulis tidak memenuhi aturan yang telahditentukan oleh kompiler Pascal 9"G , misalnya kurang tanda semicolon () di akhir perintah,variable yang digunakan belum dideklarasikan, dll" &ika terjadi kesalahan seperti ini, komputerakan memberikan petunjuk tentang posisi dan jenis kesalahan" Hasil program tidak akan keluar,sebelum semua kesalahan synta7 diperbaiki"&ika terjadi kesalahan synta7, Pascal 9"G akan
memberi tahu tentang lokasi terjadinya kesalahan serta jenis kasalahan yang dibuat waktudikompilasi"Lakukan perbaikan , sampai tidak ada lagi kesalahan setelah dikompilasi lagi"
4" esalahan Logika
esalahan logika terjadi akibat program yang dibuat salah dalam menuliskan lgika program"Hasil program tetap akan keluar, hanya saja hasilnya tidak sesuai dengan yang diharapkan atauketentuan dari permasalahan tersebut"+ntuk memperbaikinya, programmer harus menelitikembali logika : ketentuan yang dinginkan"*enu debug dapat membantunya" +ntukmenjalankan program tekan trl I 8"+ntuk melihat Hasil program tekan tombol #lt I 8
$tr)1t)r dan +etent)an Pen)l',an Pa,0al ./
-ahasa Pascal 9"G memiliki struktur yang sudah disusun sedemikian rupa, sehingga programmerharus bisa mengikuti ketentuan tersebut"#dapun strukrut penulisan program Pascal 9"G adalah sbb2
PAOA#* Eama programL#-@L Da3tar labelOE1 *endeklarasikan konstanta
Pusat Laboratorium omputer +niversitas -atamHalaman ./ dari /0
-
7/25/2019 diktat PASCAL 7.0_2
16/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
1>P@ *endeklarasikan typeU#A *endeklarasikan var PAO@D+A@ dan 8+E1$OE *endeklarasikan procedure dan 3unction-@$E'''''
'''''' 1ubuh program@ED"
Dalam sebuah program , tidak semua bagian deklarasi, procedure, 3unction di atas harus ada,tergantung kompleksitas program dan kebutuhan"1etapi kalau ada, kemungkian urutan % urutanseperti di atas haruslah diikuti dan kemunculannya haruslah sekali"
-eberapa aturan yang berlaku dalam penulisan program Pascal 9"G adalah sebagai berikut2
." Di akhir program Pascal harus diakhir dengan tanda titik ( " ) setelah kata @ED yang terkahir4" Dua buah perintah yang berurutan dipisahkan oleh sebuah tanda titik koma ( )"Perintah %
perintah tersebut boleh ditulis dalam baris yang sama : berbeda"5" etiap perintah dapat dituliskan di sebarang kolom, tetapi agar supaya program lebih mudah
terbaca dan terstruktur, sebaiknya penulisan awal baris di atur , agar kita dapat melakukanpengecekan kesalahan dengan mudah"
6" #turan khusus berlaku untuk kata cadangan -@$E dan @ED"edua kata tersebutsebenarnya berlaku sebagai tanda kurung yang menyatakan awal dan akhir kelompok danperintah tertentu" +ntuk itulah , maka kata -@$E tidak perlu diikuti titik koma dan kata@ED tidak perlu didahului oleh titik koma"
&udul Program
Dalam Pascal 9"G , judul program si3atnya optional dan tidak signi3ikan"&udul program dapatdigunakan untuk memberi nama program dan da3tar parameter tentang komunikasi program denganlingkungannya"&ika ditulis, judul harus terletak di awal program dandiakhiri dengan titik koma"&uudlprogram si3atnya hanya sebagai dokumentasi atau keterangan tentang program itu"ontoh 2 PAOA#* ontoh(layar)
De1lara,'
-agian deklarasi digunakan jika di dalam program digunakan identi3ier ( pengenal )" emuaidenti3ier dalam program ( baik berupa label, konstanta, variable, dll ) harus dideklarasikan dibagian deklarasi ini"
#da / jenis deklarasi yang dikenal dalam Pascal 9"G2
." Deklarasi LabelDeklarasi ini digunakan jika di dalam program anda memuat perintah O1O"Dengan perintahgoto , aliran procedure meloncat ke suatu bagian tertentu dalam program yang mempunyai labeltertentu"Label itulah yangharus dideklarasikan pada bagian deklarasi label"ontoh2
Pusat Laboratorium omputer +niversitas -atamHalaman .0 dari /0
-
7/25/2019 diktat PASCAL 7.0_2
17/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
*isalnya suatu program memuat perintah goto , dimana aliran program akan melompat keperintah dengan label .GG dan selesai"*aka bagian deklarasi label dapat ditulis sbb2
Program ontohVlabel
+ses !incrtLabel
.GG, selesai identi3ier label-egin
!riteln(bahasaQ) oto .GG
!riteln(pascalQ)!riteln(cobolQ)
.GG2 label yang dituju!riteln(pascalQ)
oto selesai
!riteln(3ortranQ)elesai2 label yang ditujuAeadln@nd"
Hasil program2Baha,a
Pa,0al
4" Deklarasi onstanta
Pada bagian ini, kita dapat mendeklarasikan konstanta beserta harganya yang digunakan dalampogram"ontoh2*isalnya suatu program mempunyai 5 buah konstanta , masing % masing discount C G"4 , gaji C4/GGGG dan nama C Jpt" +nggulK"*aka pada bagian program hal ini dapat ditulis sbb2Program ontohVkonstanta+ses wincrtonst Potongan C G"4 aji C 4/GGGG Eama C Pt" +nggulQ
-egin !riteln(Potongan CQ,potongan2524) !riteln(aji CQ,aji) !riteln(Eama Perusahaan CQ,nama) Aeadln@nd"
Pusat Laboratorium omputer +niversitas -atamHalaman .9 dari /0
-
7/25/2019 diktat PASCAL 7.0_2
18/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
1urbo Pascal 9"G mempunyai beberapa konstanta yang tidak perlu dide3insikan , dapatdipergunakan langsung, yaitu2P$ C C 5".6/408#L@ C -oolean C salah1A+@ C -oolean C benar
*#T$E1 C $nteger C 54909
5" Deklarasi 1ype Data
1ype data suatu variable dapat langsung dide3inisikan langsung pada bagian deklarasi variable,ataupun pada deklarasi type data"Pada deklarasi type data, biasanya digunakan untukmende3inisikan type data yang kompleks ( misalnya type data pointer, record,dll)
6" Deklarasi Uaribel
ama seperti konstanta, semua variable yang digunakan dalam program beserta type datanya
harus dide3iniskan dengan deklarasi variabl"1idak seperti deklarasi konstanta dan type data yangmenggunakan pemisah sama dengan ( C ), deklarasi variable menggunakan pemisah titik dua( 2 ) sebagai pemisah antara identi3iernya dengan type datanya"ontoh2Program ontohVUariable+ses wincrtUar 1otal,gaji,tujangan 2 real *enikah 2 -oolean jmlanak 2 integer keterangan 2 string
-
7/25/2019 diktat PASCAL 7.0_2
19/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
1ype variable dalam deklarasi variable bisa merupakan type data ataupun merupakan type data yangtelah dide3inisikan di deklarasi 1>P@"-andingkan ontoh program di atas dengan contoh programdi bawah ini ( #pakah hasil sama atau berbedaW)
Program ontohV1ypeVUariable
+ses wincrt1ype
Pecahan C real Logika C -oolean#ngka C integerHuru3 C string
-
7/25/2019 diktat PASCAL 7.0_2
20/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
+ses wincrtPAO@D+A@ 1ambah ( 7,y2integerhasil2integer)-egin Hasil 2C 7 I y@nd
Xprogram utamaYUar R 2 integer-egin 1ambah(4,5,S)!riteln(4I5 CQ,S)Aeadln@nd
-ila program dijalankan24 I5 C /
0" Deklarasi 8unction
8unction merupakan bagian program yang mirip dengan procedure,tetapi tetap ada perbedaannya"8unction yang akan dideklarasikan dalam program juga harus dideklarasikan terlebih dahulu"ata cadangan 8+E1$OE mengawali bagian deklarasi 3ungsi dan diikuti oleh identi3ier yangmerupakan nama dari 3ungsinya dan secara optimal dapat diikuti oleh kumpulan parameter, typedari 3ungsinya dan diakhiri dengan titik koma"
Program ontohV3ungsi+ses wincrt
8+E1$OE 1ambah ( 7,y2integer)2integer)-egin 1ambah 2C 7 I y@ndXprogram utamaYUar R 2 integer-egin !riteln(4I5 CQ,tambah(4,5))Aeadln@nd
-andingkan dengan program di atas tadiN
Pusat Laboratorium omputer +niversitas -atamHalaman 4G dari /0
-
7/25/2019 diktat PASCAL 7.0_2
21/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
BAB III
ELEMEN PROGRAM PA$CAL ./
+ntuk dapat mempelajari suatu bahasa pemrograman dalam menyelesaikan suatu masalah denganbaik dan benar,pertama kita harus memahami struktur dari bahasa pemrograman tersebut, sepertipada bab . tadi" >ang kedua, kita harus mengetahui terlebih dahulu elemen'elemen yangmembentukprogram tersebut"
Pada Pascal 9"G terdapat elemen % elemen sebagai berikut2
." imbol % symbol dasar (-asic ymbol )
Penulisan program Pascal dapat dibentuk dari symbol'simbol yang terdiri dari huru3'huru3 a' S,angka G' , symbol'symbol khusus seperti I, ', :, C, Z, , M, F, (),
-
7/25/2019 diktat PASCAL 7.0_2
22/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
4" ata % kata adangan ( Aeserved !ords)
ata % kata cadangan ( reserved words ) adalah kata % kata yang sudah dide3insikan dalamPascal"ompiler Pascal sudah mengerti arti kata % kata tersebtu secara otomatis ketika kita
menuliskannya"ata % kata cadangan antara lain2#bsolut 8ile O3 +ntil#nd 8or Or +ses#rray 8orward Packed Uar -egin 8unction Procedure !hilease oto Program !ithonst $3 Aecord $nlineDiv $n Aepeat tringDo Label etDownto *od 1hen@lse Eil 1o
@nd Eot 1ype
5" Pengenal tandard ( tandard $denti3ier )
1urbo Pascal 9"G telah mende3inisikan sejumlah pengenal ( identi3ier ) stndard untuk type,konstanta, variable,procedure dan 3unction"Pengenal %pengenal standar ini dapat dide3inisikanulang oleh pemakai, tetapi akan berakibat hilangnya 3asilitas yang diberikan, akan tergantidengan maksud baru yang dide3inisikan"-erikut adalah pengenal standard tersebut2
#dd Delay Length Aelase#rc tan Delete Ln Aename
#ssign @o3 Lo Aeset#u7 @o3ln Low video Aewrite#u7 in ptr @rase Lst Aound#u7 out ptr @7ecute Lst out ptr eek -lock rad @7it *ark in-lok write @7p *a7 int iSe O3 -oolean 8alse *em eek @o3 -u3len 8ile Pos *em avail eek eoln-yte 8ile iSe *ov Br hain 8ill har Eew Bethar 8lush Eorm video tr
hr 8rac Odd ucclose et mem Ord waplreol oto T> Output 1e7tlr scr Halt Pi 1rmon Heap ptr Port 1rueoninptr Hi Pos 1runconoutptr $oresult Pred +p caseopy $nput Ptr +sr
Pusat Laboratorium omputer +niversitas -atamHalaman 44 dari /0
-
7/25/2019 diktat PASCAL 7.0_2
23/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
os $ns line Aandom +srinptr rte7it $nsert AandomsiSe +sroutprtDelline $nt Aead Ual
$nteger Aeadln !riteey Pressed !riteln
6" Pengenal ( identi3ier ) yang dide3iisikan oleh Pemakai ( +ser Di3ined $denti3ier )
Pemakai dapat mende3iniskan sendiri identi3er untuk pengenal label, type,konstanta,variable,procedure dan 3unction"+ntuk membuat sebuah identi3ier untuk komponen di atas, perludiketahui aturannya, yaitu2
a" 1erdiri dari huru3 dan angka, dimanan karakter pertama harus berupa huru3"b" 1idak boleh mengandung blankc" 1idak boleh mengandung symbol'simbol khusus, kecuali garis bawahd" Panjang maksimum .49 karakter, tapi buatlah sesimple mungkin dan mudah untuk
diingat dan dimengerti"
/" onstanta ( onstant )
uatu besaran yang nilainya tetap" Dalam pascal konstanta nilai dapat berupa numeric integer,real dan konstanta bernilai string"onstanta akan disimpan di pengenal konstanta dan nilai tidakakan berubah di dalam program"
+on,tanta N)mer'1 Integer
*erupakan nilai bilangan bulat baik dalam bentuk desimal maupun he7adesimal"*emory yang
digunakan untuk menyimpan konstanta ini adalah 4 byte"Eilai integer desimal mempunyaijangkauan antara %5490; s:d 54909 dan nilai integer he7adesimal diawali dengan tanda [ ,mempunyai jangkauan [GGGG s:d [8888"ontoh2onst
Eilai. C 496.Eilai4 C [#-/
-egin!riteln (Eilai . CQ,nilai.)!riteln (Eilai 4 C ,nilai4)
Aeadln
@nd"
Hasilnya2Eilai . C 496.Eilai 4 C 496.
+on,tanta N)mer'1 Real
Pusat Laboratorium omputer +niversitas -atamHalaman 45 dari /0
-
7/25/2019 diktat PASCAL 7.0_2
24/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
Eilanya berkisar antara .@'5; s:d .@I5; dengan mantissa yang signi3ikan sampai dengan ..digit"@ menunjukan nilai .G pangkat"Eilai konstanta numeric real ini menempati memorysebesar 0 byte"ontoh2
onstEilai. C .45"6/Eilai4 C .45"G
-egin!riteln (Eilai . CQ,nilai.)!riteln (Eilai 4 C ,nilai4)
Aeadln@nd"
Hasilnya2
Eilai . C ."456/GGGGGG@IG4Eilai 4 C ."45GGGGGGGG@IG4
+on,tanta $tr'ng
1erdiri dari urutan % urutan dari karakter yang terletak diantara tanda petik tunggal"-ila tandapetik merupakan bagian dari konstanta string, maka dapat ditulis dengan menggunakan dua buahtanda petik tunggal berurutan"Eilai konstanta string akan menempati memory sebesar banyaknyakarakter stringnya"
ontoh
onst1anggal CQ44 Oktober 4GG9QHari C &umQatQPasaran CQLegiQ&arak C QosongCQQ
-egin!riteln(1anggal,jarak,hari,kosong,pasaran)
Aeadln@nd"
Hasil244 Oktober 4GG9 jumQat Legi
0" arakter ontrol ( ontrol haracter )
Pusat Laboratorium omputer +niversitas -atamHalaman 46 dari /0
-
7/25/2019 diktat PASCAL 7.0_2
25/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
*erupakan karakter yang menyatakan suatu symbol atau lambing tertentu, biasanya diletakandalam suatu string" #da dua notasi digunakan untuk karakter kontrol, yaitu2." imbol \ yang diikuti oleh suatu nilai integer diantara G s: d 4//, baik berupa nilai desimal
maupun he7a desimal untuk menunjukan suatu karakter yang dihubungkan dengan kode#$$
ontoh2\9 C kode #$$ \9 C bunyi bel\0/ C karakter #\.5 C arriege return
-egin!riteln((\;5\0/\;\0/\54\;G\0/\;5\09\0/\90)
@nd"
Hasilnya2
aya P##L
4" imbol Z diikuti oleh suatu karakter, menunjukan hubungannya dengan karakter kontrol
Z C bel C \9Z* C arriage return C \.5Z < C @scape
ontoh2-egin
!riteln(#pakah anda mendengan bunyi bel 4 kali WQ,Zg\9)
Aeadln@nd"
Hasil2#pakah anda mendengan bunyi bel 4 kali W
. Tanda Opera,' operator # dan Ung1apan E&pre,,'on #
Operator dalam Pascal dapat dibagi atas / kategori2
." +nary *inus
#dalah operator yang berupa tanda minus yang hanya digunakan pada sebuah numericoperand saja untuk menunjukan hasil negati3, baik integer maupun real" ontoh2 '4, './GG,'4"/
4" Operator Eot
Digunakan untuk membalik nilai logika dari operand -oolean"
Pusat Laboratorium omputer +niversitas -atamHalaman 4/ dari /0
-
7/25/2019 diktat PASCAL 7.0_2
26/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
ontoh2Eot 1ue C 8alseEot 8alse C 1rue
5" Operator Pengali ( multiplying operators )
>ang termasuk di dalamnya aalah 2 perkalian, pembagian, modulus,#ED, pergeseran bit"
1abel Operator Pengali
Operator Operasi 1ype Operand 1ype Hasil
PerkaianPerkalian
Aeal$nteger
Aeal$nteger
Perkalian Aeal integer Aeal
::
:
PembagianPembagian
Pembagian
Aeal$nteger
Aeal integer
AealAeal
AealD$U*OD#ED#EDhlhr
Pembagian bulat*odulus#rithmatic #EDLogical E#Dhi3t le3thi3t right
$nteger$nteger$nteger-oolean$nteger$nteger
$nteger$nteger$nteger-oolean$nteger$nteger
ontoh2
-egin
!riteln(.//)!riteln(4G:52524)!riteln(4G div 5)!riteln(4G mod 5)!riteln(true and 3alse)Aeadln
@nd"
Hasil29/0"09
043alse
Operator D$U digunakan untuk pembagian dengan hasil yang dibulatkan ke bawah ataudengan kata lain semua pecahan dibuang"Operator *OD, digunakan untukmenghasilkan sisapembagian"
Pusat Laboratorium omputer +niversitas -atamHalaman 40 dari /0
-
7/25/2019 diktat PASCAL 7.0_2
27/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
6" Operator Penambah
>ang termasuk ke dalam operator penambah adalah pertambahan, penguarangan, operatorTOA dan OA
Operator Operasi 1ype operasi 1ype Hasil
I Penambahan Aeal Aeal
I Penambahan $nteger $nteger
I Penambahan Aeal integer Aeal
' Pengurangan Aeal integer Aeal
' Pengurangan Aeal integer Aeal
' Pengurangan $nteger $nteger
Or #rithmatic Or $nteger $nteger
Or Logical Or -oolean -oolean
Tor #rithmatic Or $nteger $nteger
Tor Logical Tor -oolean -oolean
ontoh2Uar
Eama., nama4,nama52string
-
7/25/2019 diktat PASCAL 7.0_2
28/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
+omentar Program Comment #
Perintah % perintah yang ada di uatu bahasa pemrograman tidak gampang untuk baca oleh manusiakebanyakan : awam, terutama dalam program yang komplek"Perintah % perintah itu biasanya hanyabisa dimengerti oleh kompiler program tersebut" +ntuk itulah , agar perintah yang dibuat bisa mudah
dimengerti oleh orang yang membaca program , pada suatu bahasa pemrograman, disediakan3asilitas penulisan komentar"Di bagian komentar ini, penulis program dapat menuliskan kkomentarapa saja yang diperlukan untuk memperjelas perintah yang dibuat"Dalam Pascal " komentar ditulis dalam tanda J(K dan J)K atau X dan Y"&ika dikompilasi, makakomputer tidak akan membaca komentar tersebut dan dianggap sebagai hal yang kosong"
Per'ntah +omp'ler Comp'ler d're0t'3e #
*erupakan bentuk khusus dari 1urbo Pascal 9"G yang digunakan untuk menghubungi kompilerPascal secara langsung"Perintah kompiler ditulis seperti komentar program, yaitu diantara pembatasJXJ dan JYK atau J(K dan J)K dan diawali dengan tanda ["
ontoh2
X [$'Y C kesalahan $ : O tidak diseleksi oleh kompiler
Ma,)1an dan +el)aran
Perintah yang dimaksud disini adalah , perintah yang digunakan pada synta7 program untukmemasukan data lewat kartu, keyboard, pita magnetis"
a. Per'ntah Ma,)1an (
Read
-entuk umum nya adalah 2 Aead(identi3ier.,identi3ier4,?")
$denti3ier bisa bertype integer, char, real"Perintah read tidak memperhatikan batas baris"Dataakan selalu dibaca dari kiri ke kanan, tidak peduli apakah data % data tersebut ada di baris yangsama atau tidak"Data yang sesuai untuk satu identi3ier dipisahkan dengan data identi3ier laindengan spasi"
ontoh2?"Uar 7,y,S 2 real?""read (7,y,S)?"
Pusat Laboratorium omputer +niversitas -atamHalaman 4; dari /0
-
7/25/2019 diktat PASCAL 7.0_2
29/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
*isalkan sebelum perintah read (7,y,S), variable'variabel 7,yS belum mempunyai nilai"Perintahraed(7,y,S) akan membaca 5 buah variable ( bertype real )"*isalkan data berturut'turut 4/"/G,6,4/, '5"/ etelah perintah read(7,y,S) dikesekusi, maka variable(7,yS) mempunyai nilai berturut'turut 4/"/G, 6,4/, '5"/
-eberapa hal yang harus diperhatikan dalam perintah read2." Eilai % nilai variable yang dibaca harus sesuai dengan urutan'urutan variable dalam perintah
read4" Eilai %nilai yang dibaca harus berada dalam baris yang sama, tidak boleh disambung ke baris
lain"5" Uariabel yang dibaca dalam satu perintah read, boleh mempunyai type yang berbeda, tetapi
urutan'urutan datanya harus sesuai dengan type variable tersebut"Readln
Perintah readln mempunyai 3ungsi yang sama dengan read, yaitu membaca data "Perbedaannya
ialah bahwa pembacaan dilakukan per baris"&adi setelah data dibaca pada satu baris, kursor akanberpindah ke baris berikutnya"
4. Per'ntah +el)aran
Dari hasil pemrosesan data oleh komputer, kita akan mendapatkan keluaran, hasil tersebut akandicetak dilayar atau ke printer Fperintah yang digunakan untuk menampilkan hasil ke layar dankeprinter itu adalah !A$A@ dan !A$1@LE""RITE
-entuk umum adalah 2 !rite(output data itemQ)
Output data item dapat berupa string, konstanta, nilai variable"ontoh
Dalam suatu program, misalkan variable T C .G9"/, variable a C 4 dan b C 6"#pakah keluarandari perintah'perintah berikut iniW
a" write(QT CQ,7) T C .G9"/
b" write(jumlah C ,aIb) jumlah C 0
ama seperti read, pada waktu akhir perintah write, kursor akan terletak pada baris yang sama
atau dikahir karakter yang dicetak tersebut"&adi,meskipun ada 4 perintah write yang berurutan,hasil keluaran akan tetap akan dicetak di baris yang sama"ontoh2
Uar# 2 real& 2 integerP2 char
Pusat Laboratorium omputer +niversitas -atamHalaman 4 dari /0
-
7/25/2019 diktat PASCAL 7.0_2
30/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
?""?""!rite (aCQ,a,QpCQ,p)!rite (j C ,j)
&ika misalnya aC4, pC6, j C 0, maka outputnya akan seperti 2
#C 4 pC6 j C 0" -ukan seperti di bawah ini2
#C 4 pC6& C 0
"RITELN
Perintah ini mempunyai 3ungsi yang sama dengan write, yaitu menampilkan data ke layar, hanya
saja setelah data ditulis ke layar, maka kursor akan digeser ke baris berikut",ehingga apabila adapencetakan data lagi, maka data tersebut akan diletakan di barid berikutnya"
-entuk +mum2 !rite(Output data itemQ)
Data oouputdata item dapat berupa string,real,integer, nilai variable"ontoh.2
Uar# 2 real& 2 integer
P2 char
?""?""!riteln (aCQ,a,QpCQ,p)!riteln (j C ,j)
&ika misalnya aC4, pC6, j C 0, maka outputnya akan seperti 2
#C 4 pC6& C 0
ontoh42
!rite(baris pertamaQ)!riteln!rite(-aris keduaQ)
Hasilnya adalah2
Pusat Laboratorium omputer +niversitas -atamHalaman 5G dari /0
-
7/25/2019 diktat PASCAL 7.0_2
31/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
Bar', Pertama
Bar', +ed)a
Mengat)r !ormat +el)aran
adang'kadang suatu keluaran ingin ditampilkan dengan jumlah digit desimal tertentu saja"upayamudah dibaca, misalkan keluaran suatu variable ( real ) ingin ditampilkan dalam / digit dengan 4angka desimal, Pascal menyediakan 3asilitas untuk mengaturnya"+ntuk melakukan 3ormat yangdinginkan , maka perintah write ( atau writeln ) dituliskan sbb2
!A$1@( $denti3ier 2 lebar.2lebar4)
Dengan $denti3ier Cnama identi3ier
Lebar. C banyak digit bilangan bulat yang diinginkanLebar4 C -anyak angka desimal yang diinginkan"&ika lebar. dan lebar 4 tidak ditulis, maka Pascal akan menulis bilangan real dalam bentukeksponensial ( dengan @ )"
ontoh2Program mencari luas persegi empat
8lowchartnya2
Programnya2PAOA#* egiVempat X program ini untuk menghitung luas segi empatYU#A
Panjang,lebar,luas2real
-@$E
Pusat Laboratorium omputer +niversitas -atamHalaman 5. dari /0
star
*asukanpanjang,lebar
LuasCpanjanglebar
etakcetakluas luas
end
-
7/25/2019 diktat PASCAL 7.0_2
32/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
!riteln (*@EH$1+E L+# @$ @*P#1Q)!rite (*asukan panjang CQ) readln(panjang)!rite (*asukanlebar CQ)readln(lebar)Luas 2C panjang lebar!riteln ( Luas Persegi empat C , luas2524)
@ED"
GOTO 5-
oto T> adalah 3ugsi dalam Pascal untuk menempatkan kursor di posisi tertentu dilayar yangdinyatakan dengan a dan b ( oto7y (#,-))" # C posisi pada sumbu T dan - C sumbu >, dimanasemua dihitung dari ujuang kiri atas layar"Layar komputer memuat 4/ baris dan ;G kolom"&adi goto7y(.G,4), bertati kursor berada pada kolom ke.G dan baris ke 4 dihitung dari kiri atas layat"+ntukdapat menggunakan 3ungsi ini, sebelumnya harus digunakan perintah +ses rt , yaitu unit yangmenyatakan bahwa kita menggunakan media keluaran monitor" Perintah ini ditulis setelah judulprogram"
LAA
Perintah ini digunakan untuk membersihkan layar sebelum hasil keluaran ditampilkan di layar,perintah ini ditulis di awal program dan sebelumnya harus deklarasikan perintah +ses rt"
etelah program selesai dieksekusi oleh kompiler, layar biasanya tertutup dan kembali lagi layareditor"+ntuk mencegah hal tersebut, perintah A@#DLE dapat ditambahkan di akahir program ( tepatsebelum perintah end), sehingga cukup dengan menekan @E1@A , barulah layar akan menutup dankembali ke layar editor"Hal yang sama juga bisa dilakuan untuk jika keluaran program cukuppanjang, sehingga tidak termuat dalam satu layar"
Mengat)r 6 men,et 7arna te1,
+ntuk memberi e33ek warna pada tampilan teks dan latarbelakang pada hasil program , kita dapatmenggunakan perintah $ETCOLOR.Pada pascal terdapat beberapa konstanta warna yang sudahdisediakan secara de3ault,dintaranya2
!arna elap !arna 1erang-lack 2 G Darkgray 2 ;-lue 2 . Lightblue 2reen 2 4 Lightgreen 2 .Gyan 2 5 Lightcyan 2 ..
Aed 2 6 Lightred 2 .4*agenta2 / Lightmagenta 2 .5-rown 2 0 >ellow 2 .6Lightray 2 9 !hite 2 ./
+ntuk berkedip C I.4;
Pusat Laboratorium omputer +niversitas -atamHalaman 54 dari /0
-
7/25/2019 diktat PASCAL 7.0_2
33/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
BAB I8
T-PE DATA
*acam % macam 1ype Data
1erdapat enam kelompok type data dalam Pascal 9"G, yaitu2
." 1ype sederhana"1ype sederhana dibagi lagi menjadi dua, yaitu2
a" 1ype Ordinal1ype ordinal sendiri masih dibagi lagi menjadi beberapa type, yaitu2
1ype bilangan bulat"
esuai dengan namanya, maka type data ini menyatakan bilangan bulat"Pada table dibawah ini ditunjukan lagi pembagian dari type data bilangan bulat ini yang dimilikiPascal2
Pusat Laboratorium omputer +niversitas -atamHalaman 55 dari /0
-
7/25/2019 diktat PASCAL 7.0_2
34/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
1ype &angkauan +kuran
hortint '.4;?.49 ; bit
integer '5490;?54909 .0 bit
Longint '4.696;506;"" 4.696;5069 54 bit
-yte G""4// ; bit
!ord G?0//5/ .0 bit
1ype -oolean
1ype data -oolean adalah type data untuk data yang bernilai benar dan salah ( true or3alse )"Pascal 9"G menyediakan type data -oolean seperti pada table di bawah ini2
1ype Data +kuran
-oolean . byte
-ytebool . byte
!ordbool 4 byte ( . word )
Longbool 6 byte ( 4 word )
Dari 6 type di atas, yang paling sering digunakan adalah type -oolean
1ype arakter
alau type data bilangan bulat digunakan untuk menyimpan data numeris, maka typekarakter digunakan untuk menyimpan data al3anumeris, seperti aQ, SQ,Q]Q,Q5Q dsb"1ypekarakter ini dideklarsikan dengan kata kunci H#A"
ontoh2
Uararakter har
+ntuk memberikan nilai variable yang bernilai karakter ini , anda dapat melakukannyadengan beberapa cara2
*enuliskan karakter dalam tanda petik tunggal
*enuliskan tanda \ yang diikuti nomor #$$ dari karakter yang ingin anda
tuliskan"ontoh 2 h2C \0/ CF huru3 #
*engkon3ersikan nomor #$$ ke karakter menggunakan 3ungsi HA"ontoh2h2CHA(0/) sama artinya dengan ch2CQ#Q" ebalikan dari 3ungsi HA
adalah OAD, yang digunakan untuk mengembalikan nomor #$$ dari suatukarakter"ontoh2 T2C OAD(#Q) Cmaka 7 akan bernilai 0/
1ype ubjangkauan ( ub range)
Pusat Laboratorium omputer +niversitas -atamHalaman 56 dari /0
-
7/25/2019 diktat PASCAL 7.0_2
35/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
Pada type ini memungkinkan anda untuk mendeklarasikan type data yang berada padajangkauan tertentu"Pada dasarnya, type data ini hampir sama dengan type data bilanganbulat, bedanya anda bebas menetukan jangkauan dari type ini , misalnya dari."".GG"Pendeklarasian type jangkauan ini, dilakukan dengan menuliskan batas bawah danbatas atas dari jangkauannya"ontoh2
1ype-ulan C ."".4
1ype 1erbilang
Pada type ini , memungkinkan anda memberi nama pada beberapa nilai tertentu"ontoh2
1ype1ypehari C (*inggu, enin,elasa, Aabu, amis, &umQat,abtu)
*aka jika anda punya sebuah variable dengan H#A$,maka pada pendeklarasian programdapat anda tulis sbb2
1ype1ypehari C (*inggu, enin,elasa, Aabu, amis, &umQat,abtu)
UarH#A$ 2 1ypehari
b" 1ype Aeal
esuai dengan namanya , maka type data digunakan untuk menyimpan data bilangan real ,yaitu bilangan berbentuk pecahandesimal"1ype ini pun dapat lagi dibagi atas beberapacategory
1ype Data &angkauan Digit penting +kuran
Aeal 4".G'5""""."9.G5; .. ' .4 0 byte
ingle ."/.G'6/""""5"6.G5; 9 ' ; 6 byte
Double 4".G'546
""""."9.G5G;
./ % .0 ; byte@7tended 4".G'654""""."..G654 . ' 4G .G byte
omp '405 I .?"405% . . ' 4G ; byte
Pemberian nilai data dengan type real ini dapat dilakukan dengan 4 cara2
." *enuliskan nilai dengan tanda titik tanpa eksponen"ontoh2
Pusat Laboratorium omputer +niversitas -atamHalaman 5/ dari /0
-
7/25/2019 diktat PASCAL 7.0_2
36/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
T 2C .45"6/
4" *enuliskan nilai dengan eksponen"ontoh2
T 2C ."456/@I4
9. T*pe $tr'ng
1ype data ini merupakan rangkaian dari karakter % karakter,contoh2 pascalQ, algoritmaQ dan lain'lain"+ntuk pendeklarasiannya pada program digunakan kata 1A$E"ontoh2
UarEama 2 string
-
7/25/2019 diktat PASCAL 7.0_2
37/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
Dengan pendeklarasian ini , seolah % olah kita mempunyai delapan variable , yaitua
-
7/25/2019 diktat PASCAL 7.0_2
38/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
lrscroto7y(./,5)2write(Eobp2Q)readln(bp
-
7/25/2019 diktat PASCAL 7.0_2
39/56
Diktat Algoritma & Pemrograman II Created By: Harmen,S,Kom
Eama 2 string#lamat2 stringaji 2 longint
@nd
Uararyawan 21karyawan
c" 1ype et ( Himpunan )
1ype ini digunakan untuk menyimpan kumpulan nilai ( anggota himpunan ) yang bertypesama"ata kunci adalah @1 O8 1ype data
ontoh21ype
Himpunankarakter C et O3 har
UarUocal 2 HimpunankarakterHuru3 2 Himpunankarakter
Pemberian nilai pada type set ini dilakukan dengan menuliskan anggota dalam kurung siku :