diktat pascal 7.0_2

Upload: ahmad-dani

Post on 26-Feb-2018

224 views

Category:

Documents


0 download

TRANSCRIPT

  • 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

    &umlah 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 :