MAKALAH PEMOGRAMAN
MAKALAH PEMOGRAMAN
PASCAL
PASCAL
Disusun Oleh :
Disusun Oleh :
Nama
Nama
:
: Ahmad
Ahmad Musorip
Musorip
N
NIIM
M
:
: 2
20
00
08
82
22
20
06
64
4
J
Jur
urus
usan
an
: T
: Tek
ekni
nik
k In
Info
form
rma
ati
tika
ka
INSTITUT SAINS DAN TEKNOLOGI AL-KAMAL
INSTITUT SAINS DAN TEKNOLOGI AL-KAMAL
JAKARTA
JAKARTA
2009
2009
BAB I BAB I
PENGETAHUAN PASCAL PENGETAHUAN PASCAL
1.1 STRUKTUR PROGRAM PASCAL 1.1 STRUKTUR PROGRAM PASCAL
Struktur dari suatu program pascal terdiri dari sebuah judul program Struktur dari suatu program pascal terdiri dari sebuah judul program ( program heading ) dan suatu blok program (program blok ) atau badan ( program heading ) dan suatu blok program (program blok ) atau badan program ( body program ). Struktur program pascal dapat terdiri dari :
program ( body program ). Struktur program pascal dapat terdiri dari : 1.
1. JuJududul l prprogograramm 2
2.. BlBlook prk proogrgraamm
a. Bagian deklarasi a. Bagian deklarasi - deklarasi label - deklarasi label - defenisi konstanta - defenisi konstanta - definisi tipe - definisi tipe - deklarasi variabel - deklarasi variabel - deklarasi prosedur - deklarasi prosedur - deklarasi fungsi - deklarasi fungsi b. Bagian pernyataan b. Bagian pernyataan
1.2 PENULISAN PROGRAM PASCAL 1.2 PENULISAN PROGRAM PASCAL
Progaram pascal tidak mengenal aturan penulisan dikolom tertentu, Progaram pascal tidak mengenal aturan penulisan dikolom tertentu, jadi boleh ditulis mulai kolom berapapun. Penulsan statement – statement jadi boleh ditulis mulai kolom berapapun. Penulsan statement – statement
pa
pada da cocontntoh oh prproogrgraam m yayang ng memenjnjoororok k mmasasuk uk bebebeberarapa pa kokololom m ttididakak mempunyai pengaruh diproses, hanya dimaksudkan supaya mempermudah mempunyai pengaruh diproses, hanya dimaksudkan supaya mempermudah pembacaan perogram, sehingga akan lebih terlihat bagian – bagiannya.
pembacaan perogram, sehingga akan lebih terlihat bagian – bagiannya. Contoh penulisan program pascal yang bebas :
Contoh penulisan program pascal yang bebas : Begin Begin Writeln(’belajar pascal’); Writeln(’belajar pascal’); Wrirteln(’...’) Wrirteln(’...’) End. End.
Contoh penulisan pascal yang tidak dianjurkan : Contoh penulisan pascal yang tidak dianjurkan :
Begin
Begin writeln(’belajar writeln(’belajar pscal’); pscal’); writeln(’...’); writeln(’...’); end;end;
Contoh penulisan pascal yang dianjurkan : Contoh penulisan pascal yang dianjurkan :
Begin Begin Writeln(’belajar pascal’); Writeln(’belajar pascal’); Writeln(’...’); Writeln(’...’); End; End; 1.3 JUDUL PROGRAM 1.3 JUDUL PROGRAM
Judul program bila ditulis, harus terletak pada awal dari program dan Judul program bila ditulis, harus terletak pada awal dari program dan diakhiri dengan titik koma.
diakhiri dengan titik koma. Example : Example : Program contoh; Program contoh; Begin Begin Wirte(’...’); Wirte(’...’);
End; End;
1.4 BAGIAN DEKLARASI 1.4 BAGIAN DEKLARASI
Ba
Bagiagian n dedeklaklararasi si didigungunakakan an bilbila a diddidalalam am proprogragram m memenggnggunaunakakann pen
pengengenal al (i(indndententififierier). ). IndIndententififier ier dadapapat t berberupa upa lalabebel, l, kokonsnstatantanta, , titipe,pe, variabe
variabel, l, prosedprosedur ur dan fungsi. dan fungsi. Kalau suatu program Kalau suatu program menggunamenggunakan identifier,kan identifier, pas
pascal cal menmenuntuuntut t supasupaya ya indeindentifntifier ier tertersebusebut t dikedikenalnalkan kan terterlebilebih h dahudahululu sebelum digunakan, yaitu dideklarasikan terlebih dahulu pada agian ini.
sebelum digunakan, yaitu dideklarasikan terlebih dahulu pada agian ini.
1.4.1 Deklarasi Konstanta 1.4.1 Deklarasi Konstanta
De
Deklklararasasi i yayang ng memengnggugunanakakan n inindedentntififieier r yayang ng beberirisi si ninilalai-i-ninilalaii kons
konstantanta. ta. DefDefinisinisi i konskonstantanta ta diadiawali wali dendengan gan katkata a cacadangdangan an ConConst st diikdiikutiuti dengan kumpulan indentifier yang diberi suatu nilai konstanta.
dengan kumpulan indentifier yang diberi suatu nilai konstanta. Example : progarm contoh_konstanta;
Example : progarm contoh_konstanta; Const Const Panang = 10; Panang = 10; Lebar = 5; Lebar = 5; Begin Begin ... ... End. End. 1.4.2 Deklarasi variabel 1.4.2 Deklarasi variabel
Deklarasi yang mendefinisikan indentifier yang berisi data yag dapat Deklarasi yang mendefinisikan indentifier yang berisi data yag dapat beru
berubahbah-uba-ubah h nilanilainya inya didadidalam lam proprogragram. m. KatKata a cadcadangaangan n Var Var digudigunaknakanan sebagai judul didalam bagian deklarasi variabel dan diikuti oleh satu atau sebagai judul didalam bagian deklarasi variabel dan diikuti oleh satu atau lebih indentifier yang dipisahkan koma, diikuti dengan titik dua dan tipr dari lebih indentifier yang dipisahkan koma, diikuti dengan titik dua dan tipr dari datanya serta diakhiri dengan titik koma.
datanya serta diakhiri dengan titik koma. Example : Progaram contoh_variabel; Example : Progaram contoh_variabel;
Var
Var Toatal, Toatal, gaji,tunjangan gaji,tunjangan : : real;real; Menikah : boolean; Menikah : boolean; Keterangan : string[36]; Keterangan : string[36]; Begin Begin ... ... End. End. 1.4.3 Deklarasi tipe 1.4.3 Deklarasi tipe De
Deklklararasasi i yayang ng memendndenenififisisikikan an titipr pr dadata ta dadari ri inindedentntififieier r yayangng digunakan dalam progarm. Tipe data dalam pascal terdiri dari :
digunakan dalam progarm. Tipe data dalam pascal terdiri dari : 1. Tipe data sederhana, terdiri dari :
1. Tipe data sederhana, terdiri dari : a. Tipe data standar :
a. Tipe data standar : -
- iinntteeggeer r - - rreeaall -
- cchhaar r - - ssttrriinng g - - bboooolleeaann b. Tipe data didefinisikan pemakai :
b. Tipe data didefinisikan pemakai : - enumerated atau scalartype
- enumerated atau scalartype - subrange type
- subrange type
2. Tipe data terstruktur, terdiri dari : 2. Tipe data terstruktur, terdiri dari :
a. Array a. Array b. Reccod b. Reccod c. File c. File d. Set d. Set
3. Tipe data penunjuk ( pointer type data ) 3. Tipe data penunjuk ( pointer type data ) E Exxaammpplle e :: TTyyppee Pecahan = real; Pecahan = real; logika = boolean; logika = boolean; bulat = integer; bulat = integer; huruf = string [25] huruf = string [25] begin begin ... ... End. End. 1.4.4 Deklarasi label 1.4.4 Deklarasi label
Deklarasi yang menggunakan statemet Goto untuk meloncat ke suatu Deklarasi yang menggunakan statemet Goto untuk meloncat ke suatu statement yang tertentu, maka dibutuhkan suatu label pada statement yang statement yang tertentu, maka dibutuhkan suatu label pada statement yang dituju. Mendeklarasikan label diaali dengan kata cadangan label diikuti oleh dituju. Mendeklarasikan label diaali dengan kata cadangan label diikuti oleh kumpulan indentifier label dengan dipisahkan oleh koma dan diakhiri dengan kumpulan indentifier label dengan dipisahkan oleh koma dan diakhiri dengan titik koma.
titik koma.
Examle: progarm contoh_label; Examle: progarm contoh_label;
Labe 100,selesai; Labe 100,selesai; Begin Begin ... ... Goto 100 Goto 100 ... ... 100: 100: ... ... Goto Selesai Goto Selesai ... ... Selesai : Selesai : End. End.
1.5 CARA MENGOPRASIKAN TURBO PASCAL 1.5 CARA MENGOPRASIKAN TURBO PASCAL
Pro
Progargarm m TURTURBO BO PASCPASCAL AL verversi si 5.0 5.0 hanyhanya a dapadapat t diodioperaperasikasikan n padapada format sistem operasi DOS, maka apabila kita menggunakan sitem operasi format sistem operasi DOS, maka apabila kita menggunakan sitem operasi WINDOWS, baik Windows 59,98,NT,ataupun Windows 2000 maka kita harus WINDOWS, baik Windows 59,98,NT,ataupun Windows 2000 maka kita harus ke
kelualuar r dudulu lu dadari ri sissistetem m opopererasasi i WinWindodows ws tetersrsebuebut t dadan n mamasuk suk ke ke sissistetemm operasi DOS dengan cara :
- Klik icon Star pada menu Windows - Klik icon Star pada menu Windows - Pilih Shutdown
- Pilih Shutdown
- Pilih Restart to MS DOS Promt - Pilih Restart to MS DOS Promt Se
Setetelah lah mamauk uk ke ke DODOS S mamaka ka untuntuk uk memengongoperperasasikaikan n TuTurbrbo o PaPascscalal caranya adalah sebagai berikut :
caranya adalah sebagai berikut :
- A : > Ketik Turbo lalu tekan tombol enter - A : > Ketik Turbo lalu tekan tombol enter
- Bila program pascal ada dihardisk maka A prompt diganti menjadi C - Bila program pascal ada dihardisk maka A prompt diganti menjadi C prompt, atau drive
prompt, atau drive
Lainnya bila drive hardisk
Lainnya bila drive hardisknya lebih dari satu ( nya lebih dari satu ( misalkmisalkan D, E an D, E dst ).dst ). Lalu ketikkan Turbo
Lalu ketikkan Turbo
Pada direktori dimana program pascal tersebut berada. Misalkan ada Pada direktori dimana program pascal tersebut berada. Misalkan ada dalam direktori
dalam direktori
Pascal, maka kita harus ketikkan perintah sebagai berikut : C : > Pascal, maka kita harus ketikkan perintah sebagai berikut : C : > Pascal\Turbo lalu tekan
Pascal\Turbo lalu tekan Tombol enter. Tombol enter.
- Setelah tampil menu Turbo Pascal tekan tombol Esc. - Setelah tampil menu Turbo Pascal tekan tombol Esc. Terlihat tampilan menu yang terdiri dari :
Terlihat tampilan menu yang terdiri dari : -
- FIFILE LE : : untuntuk uk memengangambmbil il proprogragram m (L(Loaoad)d), , memembmbuauat t babaru ru (N(Newew),), menyimpan (Save),
menyimpan (Save), Me
Mererekakam m prprogograram m ke ke FiFile le (W(Wririte te toto), ), memenanampmpililkakan n didirerektktororii (Directory), merubah
(Directory), merubah
Direktori (Change Dir), menjalankan command DOS (OS Shell) atau Direktori (Change Dir), menjalankan command DOS (OS Shell) atau mengakhiri/keluar
mengakhiri/keluar
Dari program (Quit). Dari program (Quit).
- EDIT : untuk membuat atau mengetik program - EDIT : untuk membuat atau mengetik program - RUN ( Ctrl F9) : untuk menjalankan program - RUN ( Ctrl F9) : untuk menjalankan program
- COMPILE ( Alt F9 ) : untuk mengkompilasi program pascal menjadi - COMPILE ( Alt F9 ) : untuk mengkompilasi program pascal menjadi program yang
program yang ber-Extention EXE. Extention EXE. -
- OPOPTITION ON : : untuntuk uk memengangatutur r atatau au memenenentntukaukan n kekembambali li babagagaimaimanana integrated environment
integrated environment Bekerja.
Bekerja.
- DEBUG dan BREAK / WATCH : untuk melacak program. - DEBUG dan BREAK / WATCH : untuk melacak program.
Berikut ini adalah berbagai macam tombol beserta fungsinya yang digunakan Berikut ini adalah berbagai macam tombol beserta fungsinya yang digunakan pascal :
pascal :
T
TOOMMBBOOLL KKEEGGUUNNAAAANN
F
F11 MMeennaammppiillkkaan n iinnffoorrmmaassi i tteennaattaanng g ppoossiissi i ssaaaat t iittu u ((hheellpp)) F
F22 MMeennyyiimmppaan n pprrooggrraam m yyaanng g aadda a ddi i jjeennddeella a uunniitt F
F33 MMeennggaammbbiil l pprrooggrraam m ddaarri i ddiisskk F
F55 ZZoooom m ddaan n UUnnzzoooom m jjeennddeella a jjeennddeella a yyaanng g sseeddaanng g aakkttiif f F
F
F99 MMeellaakkuukkaan n ffuunnggssi i ‘‘mmaakkee’’ F
F1100 KKe e kkeeaaddaaaan n mmeennu u uuttaammaa A
Allt t FF11 MMeennaammppiillkkaan n llaayyeer r yyaanng g bbeerriissi i hheellp p tteerrkkhhiir r kkaallii ditampilkan
ditampilkan A
Allt t FF33 MMeennggaammbbiil l pprrooggrraam m ddaarri i ddiisskk A
Allt t FF55 KKe e ppoossiissi i llaayyeer r yyaanng g ddiirreekkaamm A
Allt t FF66 JJeennddeella a bbeerriikkuuttnnyyaa A
Allt t FF99 MMeennggkkoommppiillaassi i pprrooggrraamm A
Allt t FF1100 MMeennaammppiillkkaan n vveerrssi i ddaarri i TTuurrbbo o PPaassccaall A
Allt t BB MMeemmiilliih h bbrreeaak k / / WWaattcch h mmeennuu A
Allt t CC MMeemmiilliih h ccoommpplle e mmeennuu A
Allt t DD MMeemmiilliih h DDeebbuug g mmeennuu A
Allt t EE MMeemmiilliih h EEddiit t mmeennuu A
Allt t FF MMeemmiilliih h FFiille e mmeennuu A
Allt t OO MMeemmiilliih h OOppttiioon n mmeennuu A
Allt t RR MMeemmiilliih h RRuun n mmeennuu A
Allt t XX MMeennggaakkhhiirri i pprrooggrraam m ddaak k kkeemmbbaalli i kke e pprroommppt t DDOOSS C
Cttrrl l FF99 MMeennjjaallaannkkaan n pprrooggrraam m ( ( uunnttuuk k VVeerrssi i 55..0 0 ))
BAB II BAB II
ELEMEN – ELEMENT PROGRAM PASCAL ELEMEN – ELEMENT PROGRAM PASCAL
Suatu program pascal dapat mempunyai element – element sebagai Suatu program pascal dapat mempunyai element – element sebagai berikut :
berikut :
1. Simbol – symbol dasar 1. Simbol – symbol dasar 2. Kata – kata cadangan 2. Kata – kata cadangan
3. Pengenalan didefinisikan oleh pemakai 3. Pengenalan didefinisikan oleh pemakai 4. Data
4. Data
5. Karakter control 5. Karakter control
6. Tanda operasi 6. Tanda operasi 7. Komentar program 7. Komentar program 8. Statement 8. Statement 9. Prossedur 9. Prossedur 10. Fungsi 10. Fungsi
2.1 KATA – KATA CADANGAN 2.1 KATA – KATA CADANGAN
Kata – kata cadangan ( reserved word ) adalah kata – kata yang sudah Kata – kata cadangan ( reserved word ) adalah kata – kata yang sudah dide
didefinfinisikisikan an oleoleh h PasPascacal l yanyang g memmempunypunyai ai makmaksud sud tertertententu. tu. KatKata- a- katkataa cadangan tidak boleh didefinisikan ulang oleh pemaki, sehingga tidak dapat cadangan tidak boleh didefinisikan ulang oleh pemaki, sehingga tidak dapat dipergunakan sebagai pengenal ( identifier ). Berikut ini adalah kata-kata dipergunakan sebagai pengenal ( identifier ). Berikut ini adalah kata-kata cadangan dalam pascal :
cadangan dalam pascal :
Absolute
Absolute FFiillee MMoodd Shr Shr
A
Anndd FFoorr NNiill StirngStirng
A
Arrrraayy FFoorrwwaarrdd NNoott TThheenn B
Beeggiinn FFuunnccttiioonn OffO TToo C
Caassee GGoottoo OOrr TTyyppee C
Coonnsstt IIff PPaacckkeedd Unit Unit
Div
Div ImplementationImplementation PPrroocceedduurree UUnnttiill D
Doo IInn PPrrooggrraamm UsesUses
Downto
Downto InlineInline RReeccoorrdd VVaarr Else
Else InterfaceInterface RReeppeeaatt WWhhiillee End
End Interrupt Interrupt SSeett WWiitthh
External
External LabelLabel SShhll XXoorr Keterangan
Keterangan
Ka
Kata ta – – kakata ta cacadadangangan n yayang ng ditdituliulis s mimirinring g memeruprupakakan an kakata ta – – kakatata cadangan yang tidak ada pada standar pascal
cadangan yang tidak ada pada standar pascal
2.2 PENGENAL ( INDENTIFIER ) 2.2 PENGENAL ( INDENTIFIER )
Nama yang dipergunakan di dalam program pascal disebut dengan Nama yang dipergunakan di dalam program pascal disebut dengan pang
pangenaenal l (ind(indententifieifier). r). PemPemakaakai i dapdapat at menmendefdefinisinisikaikan n sendsendiri iri suasuatu tu namnamaa sebagai pengenal yang didefinisikan apakah untuk mengenal tipe, konstanta, sebagai pengenal yang didefinisikan apakah untuk mengenal tipe, konstanta, varibel, prosedur
varibel, prosedur, , fungsi atau fungsi atau pengenapengenal l lainnyalainnya. . PengenPengenal al yang didefinisikayang didefinisikann ini bebas, tetapi dengan ketentuan-ketentuan sebagai berikut :
ini bebas, tetapi dengan ketentuan-ketentuan sebagai berikut :
1. Terdiri dari gabungan huruf dan angka dengan karakter pertama harus 1. Terdiri dari gabungan huruf dan angka dengan karakter pertama harus berupa huruf, dimana
berupa huruf, dimana
Huruf besar dan huruf kecil dianggap sama. Huruf besar dan huruf kecil dianggap sama. 2. Tidak boleh mengandung blank.
2. Tidak boleh mengandung blank.
3. Tidak boleh mengandung simbol-simbol khusus. 3. Tidak boleh mengandung simbol-simbol khusus. 4.
4. PanPanjangjangnya nya bebabebas, s, tettetapi api hanhanya ya 63 63 karkaraktakter er pertpertama ama yanyang g diandianggaggapp signifikan.
signifikan.
2.3 TIPE DATA 2.3 TIPE DATA
Tipe data menunjukan suatu nilai yang dapat digunakan oleh variabel Tipe data menunjukan suatu nilai yang dapat digunakan oleh variabel yang bersangkutan. Jenis tipe data yang ada pada pascal antara lain :
yang bersangkutan. Jenis tipe data yang ada pada pascal antara lain : 1. Tipe data numerik integer
1. Tipe data numerik integer
Data numerik integer merupakan nilai bilangan bulat baik dalam bentuk Data numerik integer merupakan nilai bilangan bulat baik dalam bentuk desimal maupun
Hexadesimal. Nilai integer hexadesimal diawali dengan tanda dollar ($). Hexadesimal. Nilai integer hexadesimal diawali dengan tanda dollar ($). Turbo pascal
Turbo pascal
Menyediakan 5 macam tipe data integer, yaitu : Menyediakan 5 macam tipe data integer, yaitu :
T
TYYPPEE UUKKUURRAAN N MMEEMMOORRYY JJAANNGGKKUUAAN N NNIILLAAII
B
Byyttee 11 bbyyttee 00 ... 225555 S
Shhoorrttiinntt 1 1 bbyyttee --11228 8 ……112277
IInntteeggeerr 2 2 bbyyttee --332277668 8 … … 3322776677 W Woorrdd 22 bbyyttee --00 …… 6655553355 L Loonnggiinntt 4 4 bbyyttee --2211447744883366448 8 …… 2147483647 2147483647
2. Tipe data numeric real 2. Tipe data numeric real
Nilai konstanta numeric real berkisar dari 1E-38 sampai dengan 1E+38 Nilai konstanta numeric real berkisar dari 1E-38 sampai dengan 1E+38 dengan mantissa yang
dengan mantissa yang
Signifikan sampai dengan 11 digit. E menunjukan nilai 10 pangkat. Nilai Signifikan sampai dengan 11 digit. E menunjukan nilai 10 pangkat. Nilai konstanta numeric
konstanta numeric
Real menempati memory sebesar 6 byte. Real menempati memory sebesar 6 byte.
B Beennaarr SSaallaahh 1 12233..4455 --1122..3344 1122334455.. 1 122EE55 11..2233EE--22 ..11223344 1 122EE++55 00..11223344
3. Tipe data karakter 3. Tipe data karakter
Nilai data karakter berupa subuah karakter yang ditulis diantara tanda Nilai data karakter berupa subuah karakter yang ditulis diantara tanda petik tunggal, seperti
petik tunggal, seperti
Misalya ’A’,’b’,’!’,’%’,’9’ dan sebagainya. Misalya ’A’,’b’,’!’,’%’,’9’ dan sebagainya. 4. Tipe data string
4. Tipe data string
Nilai data dari string merupakan urut-urutan dari karakter yang terletak Nilai data dari string merupakan urut-urutan dari karakter yang terletak diantara tanda petik
diantara tanda petik
Tunggal. Nilai data string akan menempati memory sebesar banyaknya Tunggal. Nilai data string akan menempati memory sebesar banyaknya karakter stringnya Ditambah dengan 1 byte. Bila panang dari suatu string karakter stringnya Ditambah dengan 1 byte. Bila panang dari suatu string didalam deklarasi variabel tidak
didalam deklarasi variabel tidak
Disebutkan, maka dianggap panjangnya adalah 255 karakter. Disebutkan, maka dianggap panjangnya adalah 255 karakter. Contoh
Contoh : : Hari Hari : : string[8]; string[8]; disebutkan disebutkan panjangnyapanjangnya Bulan :
Bulan : string; string; tidak tidak disebutkan disebutkan panjangnyapanjangnya 5. Tipe data boolean
5. Tipe data boolean
Tipe data boolean mempunyai dua buah nilai, yaitu TRUE dan FALSE Tipe data boolean mempunyai dua buah nilai, yaitu TRUE dan FALSE
2.4 TANDA OPERASI ( OPERATOR ) 2.4 TANDA OPERASI ( OPERATOR )
T
Tananda da opopererasasi i ( ( opopereratator or ) ) yayang ng digdigunaunakakan n papada da prprogograram m papascscalal antara lain adalah sebagai berikut :
antara lain adalah sebagai berikut :
O
OPPEERRAATTOORR FFUUNNGGSSII KKEETTEERRAANNGGAANN
:
: == SSaamma a ddeennggaann AAssssiiggnnmmeennt t ooppeerraattoorr ** PPeerrkkaalliiaann BiinBnaarry y ooppeerraattoorr
D
DIIVV PPeemmbbaaggiiaan n bbuullaatt // PPeemmbbaaggiiaan n rreeaall
M MOODD MMoodduulluus s ( ( ssiissaa pembagian ) pembagian ) + + PPeennjjuummllaahhaann -- PPeenngguurraannggaann N NOOTT LLooggiikka a NNoott Bitwise operator Bitwise operator A ANNDD LLooggiikka a AAnndd O ORR LLooggiikkaa OOrr X XOORR LLooggiikka a XXoorr S
SHHLL GGeesseer r kke e kkiirri i ( ( sshhiifft t lleefft t ))
Bitwise operator Bitwise operator S SHHRR GGeesseer r kke e kkaannaan n ( ( sshhiifftt fight ) fight ) = = SaSammaa ddeennggaann Relational operator Relational operator < <>> TTiiddaak k ssaamma a ddeennggaann >
> LLeebbiih h bbeessaar r ddaarrii <
< LLeebbiih h kkeecciil l ddaarrii >
>== LLeebbiih bh beessaar sr saammaa dengan dari
dengan dari <
<== LLeebbiih h kkeecciil l ssaammaa dengan dari
dengan dari
2.5 KOMENTAR PROGRAM 2.5 KOMENTAR PROGRAM
Unt
Untuk uk kepkeperluerluan an dokdokumeumentantasi si proprogragram, m, sehisehingga ngga proprogragram m mudmudahah dib
dibacaca a dadan n dipdipahahamami i dadapapat t ditditamambabahkhkan an kokomementntarar-ko-komementantar r di di dadalalamm prog
program ram yanyang g tidatidak k akaakan n memmempengpengaruharuhi i proproses ses dardari i proprogragram. m. KomKomentaentarr program dapat diletakkan di manapun didalam program. Suatu komentar program dapat diletakkan di manapun didalam program. Suatu komentar program ditulis dengan pembatas { dan } atau pembatas ( * dan * ).misal : program ditulis dengan pembatas { dan } atau pembatas ( * dan * ).misal :
{
{ iinni i aaddaallaah h kkoommeennttaar r pprrooggrraamm Untuk
Untuk keterangan keterangan dokumentasi dokumentasi program program }} Begin Begin ... ... End. End.
BAB III BAB III
INPUT DAN OUTPUT INPUT DAN OUTPUT
3.1 MEMASUKAN DATA 3.1 MEMASUKAN DATA
Tu
Turbo rbo paspascal cal menmenyedyediakaiakan n proprosedusedur r untuntuk uk mammamasuasukan kan datdata a yaiyaitutu prosedur standar :
prosedur standar : READ
READ → → Untuk Untuk memasukan memasukan data data dalam dalam 1 1 baris.baris. READ
READLN LN → Untuk mem→ Untuk memasuasukan datkan data perbaa perbaris ( pada baris yanris ( pada baris yang berbedg berbeda ),a ), artinya menekan
artinya menekan
Tombo
Tombol l enter maka akan ganti baris, sedangkan pada READenter maka akan ganti baris, sedangkan pada READ tidak.
tidak.
3.2 MENAMPILKAN HASIL 3.2 MENAMPILKAN HASIL
Untuk menampilkan hasil dengan bahasa pascal digunakan prosedur Untuk menampilkan hasil dengan bahasa pascal digunakan prosedur standar :
standar : WRITE
WRITE → → Untuk Untuk menapilkan menapilkan hasil hasil tanpa tanpa baris,dimana baris,dimana tampilan tampilan berikutnyaberikutnya akan disambung
akan disambung
Pada baris yang sama. Pada baris yang sama.
WRITELN → Untuk menapilkan hasil dengan ganti baris, dimana tampilan WRITELN → Untuk menapilkan hasil dengan ganti baris, dimana tampilan berikutnya berada
berikutnya berada
Pada baris yang berikutnya pula. Pada baris yang berikutnya pula.
Example program : Example program :
1. Begin 1. Begin
Writeln (’saya belajar pascal’); Writeln (’saya belajar pascal’); Writeln ( ’...’) ; Writeln ( ’...’) ; Readln; Readln; End. End. 2. program input ; 2. program input ; Uses crt; Uses crt;
Var A,B,C : Byte; Var A,B,C : Byte; Begin
Begin
Clrscr ; Clrscr ;
Write (‘masukan nilai A=’); Write (‘masukan nilai A=’); Readln (A);
Readln (A);
Write (‘masukan nilai B=’); Write (‘masukan nilai B=’); Readln (B); Readln (B); C:=A+B; C:=A+B; Writeln (‘A+B=’,C); Writeln (‘A+B=’,C); Writeln (A,’+’,B,’=’,C); Writeln (A,’+’,B,’=’,C); Readln ; Readln ; End. End. 3. Program Output1; 3. Program Output1; Var Nama : String [15]; Var Nama : String [15]; Begin Begin Nama :=’vidi’; Nama :=’vidi’; Write(’Nama :’); Write(’Nama :’); Write(Nama); Write(Nama); Readln; Readln; End. End. 4.Progaram Output2; 4.Progaram Output2; Var huruf1,huruf2 : char; Var huruf1,huruf2 : char; Begin Begin Huruf :=’A’; Huruf :=’A’; Huruf :=’B’; Huruf :=’B’; Writeln(huruf1,huruf2); Writeln(huruf1,huruf2); Readln; Readln; End. End. 5. Progarm output3; 5. Progarm output3;
Var string1,string2 : string[10]; Var string1,string2 : string[10]; Begin Begin String1 :=’bahasa’; String1 :=’bahasa’; String2 :=’pascal”; String2 :=’pascal”; Writeln(string1,string2); Writeln(string1,string2); Readln; Readln; End. End. Ketrangan : Ketrangan :
Us
Uses es crcrt t digdigunaunakakan n untuntuk uk mememamanipnipulaulasi si laylayar ar teteks ks (w(windindowowinging,, pele
peletaktakan an curcursor sor diladilayaryar, , cocolor lor untuntuk uk tekteks, s, kodkode e extextendended ed keykeyboaboard, rd, dll)dll).. Keun
Keuntuntungan gan dardari i penpenggunggunaan aan unitunit Crt Crt adaadalah lah tamtambahbahan an keckecepaepatan tan dandan fleksibilitas dari operasi output di layer.
fleksibilitas dari operasi output di layer.
Clrscr
Clrscr adaadalah lah funfungsi gsi untuntuk uk memmemberbersihksihkan an laylayer er laylayer er monmonitoitor r dardarii tampilan-tampilan sebelumnya dan meletakan kursor di posisi ujung kiri atas tampilan-tampilan sebelumnya dan meletakan kursor di posisi ujung kiri atas dari layer. Prosedur standar ini bila digunakan harus menyebutkan terlebih dari layer. Prosedur standar ini bila digunakan harus menyebutkan terlebih dahulu unit standar crt.
dahulu unit standar crt.
Readln
Readln sebelumsebelum end end titititik k untuk membaca garis agar tampilan bisauntuk membaca garis agar tampilan bisa rerl
rerlihaihat t sebsebelum elum balbalik ik kemkembali bali kemkemenu enu proprogragram m (un(untuk tuk berberhenthenti i sejsejenaenak)k) sebab setelah di run biasanya pascal langsung kembali ke menu progarm sebab setelah di run biasanya pascal langsung kembali ke menu progarm utama. Pada perintah readln setelah berhenti sejenak, maka untuk kembali utama. Pada perintah readln setelah berhenti sejenak, maka untuk kembali ke program uatama tekan tombol enter.
ke program uatama tekan tombol enter.
6. Progarm input_kedua; 6. Progarm input_kedua; Uses crt; Uses crt; Var C : Char; Var C : Char; B : Boolean; B : Boolean; Begin Begin Clrscr; Clrscr;
Write (‘Benar atau Salah (B / S)?’); Write (‘Benar atau Salah (B / S)?’); Readln(C);
Readln(C); B :=(C =’B’); B :=(C =’B’);
Writeln(‘yang anda maksyt adalah :’,B); Writeln(‘yang anda maksyt adalah :’,B); Readln; Readln; End. End. 3.3 TAMPILAN TERFORMAT 3.3 TAMPILAN TERFORMAT Wal
Walaupuaupun n benbentuk tuk defdefault ault diadiangganggap p cukcukupunupuntk tk menamenapilkpilkan an bentbentukuk pada
pada proprogragram m yanyang g sedesederharhana, na, tettetapi api untuuntuk k proprogragram m aplaplikasikasi i dibudibutuhktuhkanan bentuk format tertentu yang harus diatur kemali. Untuk mengatur format bentuk format tertentu yang harus diatur kemali. Untuk mengatur format tampilan tersebut dipergunakan parameter-parameter berikut ini.
tampilan tersebut dipergunakan parameter-parameter berikut ini.
1. Parameter CH:N 1. Parameter CH:N
Digunakan untuk membentuk format tampilan char slebar n karakter Digunakan untuk membentuk format tampilan char slebar n karakter dengan blan dimuka sebanyak n-1.
dengan blan dimuka sebanyak n-1. 2. Parameter S:N
2. Parameter S:N
Parameter ini digunakan untuk membentuk format tampilan string dengsan Parameter ini digunakan untuk membentuk format tampilan string dengsan lebar n karakter.
lebar n karakter. 3. Parameter I:N 3. Parameter I:N
Parameter ini digunakan untuk membentuk format tampilan integer dengan Parameter ini digunakan untuk membentuk format tampilan integer dengan lebar n digit.
lebar n digit. 4. Parameter R:N 4. Parameter R:N
Para
Parameter ini digunakameter ini digunakan untuk membentun untuk membentuk format k format tampilatampilan nilai numerikn nilai numerik real dengan lebar n digit rata sebelah kanan.
real dengan lebar n digit rata sebelah kanan. 5. Parameter R:N:M
5. Parameter R:N:M
Parameter ini digunakan untuk membentuk format tampilan nilai numerik Parameter ini digunakan untuk membentuk format tampilan nilai numerik re
real al dedengngan an lelebabar r n n didigigit t rarata sebta sebelelah kanah kana. a. DeDengngan an m m didigigit t anangagakk dibelakang koma tidak dalam bentukeksponsial.
6. Parameter B:N 6. Parameter B:N
Par
Parameametr tr ini ini digidiginaknakan an untuntuk uk memmembentbentuk uk forformat mat panpanggilsggilsn n nilanilaiibooleanboolean true
true atauatau falsefalsedengan lebar n karakter rata sebelah kanan.dengan lebar n karakter rata sebelah kanan. Un
Untutuk k memengngatatur ur foformrmat at tatampmpililan an dedengngan an prprososededur ur ststanandadarr writewrite
atau
atauwritelnwriteln dipergunakan parameter-parameter.dipergunakan parameter-parameter. Exemple: Exemple: 1.Progaram Otput_terformat1; 1.Progaram Otput_terformat1; Var huruf1,huruf2:Char; Var huruf1,huruf2:Char; Begin Begin Huruf1:=’A’; Huruf1:=’A’; Huruf2:=’B’; Huruf2:=’B’; Writeln(huruf1:5,huruf2:4); Writeln(huruf1:5,huruf2:4); Readln; Readln; End. End. 2. Progaram Tampilan_terformat2; 2. Progaram Tampilan_terformat2; Var string1,string2:string[10]; Var string1,string2:string[10]; Begin Begin String1:=’pascal’; String1:=’pascal’; Writeln(’bahasa’,string1:12); Writeln(’bahasa’,string1:12); Readln; Readln; End. End. 3.Progarm tampilan_terformat3; 3.Progarm tampilan_terformat3; Uses Crt; Uses Crt; Var Ket1:char; Var Ket1:char; Ket2:string[6]; Ket2:string[6]; Ket3:integer; Ket3:integer; Ket4:real; Ket4:real; Ket5:Boolean; Ket5:Boolean; Begin Begin Clrscr; Clrscr; Ket1:=’A’; Ket1:=’A’; Writeln(ket:5); Writeln(ket:5); Ket2:=’pascal’; Ket2:=’pascal’; Writen(‘bahasa:’,ket2:10); Writen(‘bahasa:’,ket2:10); Ket3:=24200; Ket3:=24200; Writeln(‘jumlah data:’,ket3:9); Writeln(‘jumlah data:’,ket3:9); Ket4:=222006; Ket4:=222006; Writeln(‘nilai real:’,ket4:12); Writeln(‘nilai real:’,ket4:12);
Writeln(‘nilai real kedua:’,ket4:12:3); Writeln(‘nilai real kedua:’,ket4:12:3); Ket5:=true; Ket5:=true; Writeln(‘nilai Boolean:’,ket5:7); Writeln(‘nilai Boolean:’,ket5:7); Readln; Readln; End. End.
3.4 Pengaturan Letak Dilayar dengan prosedur GOTOXY 3.4 Pengaturan Letak Dilayar dengan prosedur GOTOXY
prosedur standar ini digunakan untuk meletakan cursor di posisi layer prosedur standar ini digunakan untuk meletakan cursor di posisi layer yang ditunjukan oleh nilai XPOS dan
yang ditunjukan oleh nilai XPOS dan YPOS.YPOS.XPOS menunjukaXPOS menunjukan posisi sumbu n posisi sumbu XX (posisi horizon
(posisi horizontal atau posisi tal atau posisi kkolokkolom diantara kolom 1 m diantara kolom 1 sampasampai i dengan kolomdengan kolom 80).nilai YPOS menunjukan posisi sumbu Y(posisi vertical atau posisi baris, 80).nilai YPOS menunjukan posisi sumbu Y(posisi vertical atau posisi baris, diantara baris 1 sampai dengan baris 25).prosedur standar ini bila digunakan diantara baris 1 sampai dengan baris 25).prosedur standar ini bila digunakan harus melibatkan unit standar crt.
harus melibatkan unit standar crt.
Exemple: Exemple: 1.progaram tampilan_gotoxy; 1.progaram tampilan_gotoxy; Uses crt; Uses crt; Begin Begin Clrscr; Clrscr; Gotoxy(10,15); Gotoxy(10,15); Writeln(‘bahasa pascal’); Writeln(‘bahasa pascal’); Readln; Readln; End. End.
3.5 Pengaturan letak dilayar dengan prosedur delay 3.5 Pengaturan letak dilayar dengan prosedur delay
Prosedur standar ini digunakan untuk menghentikan sejenak proses Prosedur standar ini digunakan untuk menghentikan sejenak proses pro
progrgram am seselalama ma nilnilai ai dadari ri arargumgument ent tetempmpo, o, yayaitu itu dadalalam m ukukururan an wawaktktuu mill
millisecisecond ond (1/(1/1001000 0 detdetik), nilai ik), nilai argargumeumen n temtempo po ini ini harharus us daladalam m bentbentukuk numerik integer, prosedur standar ini bila digunakan harus melibatkan unit numerik integer, prosedur standar ini bila digunakan harus melibatkan unit standar crt. standar crt. Exemple ; Exemple ; 1.Program tampil_delay 1.Program tampil_delay Uses crt; Uses crt; Begin Begin Clrscr; Clrscr;
Writeln(‘halo teguh, kamu lagi belajar apa?’); Writeln(‘halo teguh, kamu lagi belajar apa?’); Delay(5000);
Delay(5000); Writeln;
Writeln;
Writeln(’saya lagi belajar praktek pascal’); Writeln(’saya lagi belajar praktek pascal’); Readln;
Readln; End.
BAB IV BAB IV PERULANGAN PERULANGAN
Dalam bahasa pascal, dikenal tigs macam perulangan, yaitu dengan Dalam bahasa pascal, dikenal tigs macam perulangan, yaitu dengan menggunakan,
menggunakan, For, While – DoFor, While – Do dandan Repeat ... Until.Repeat ... Until.
4.1 PERULANGAN FOR 4.1 PERULANGAN FOR
Perulangan dengan statemen For digunakan mengulang statemen atau Perulangan dengan statemen For digunakan mengulang statemen atau sat
satu u bloblok k stastatemtemen en beruberulang lang kakali li sejsejumlaumlah h yanyang g ditditententukaukan. n. PerPerulanulangangan den
dengagan n ststatatememen en FoFor r dadapapat t berberbebentntukuk peru perulanglangan an posipositif, tif, peruperulangalangann negatif, dan perulangan
negatif, dan perulangan tersarang.tersarang.
4.1.1 Perulangan For Positif 4.1.1 Perulangan For Positif
Perulangan Positif
Perulangan Positif adaadalah lah perperulaulangan ngan dengdengan an pengpenghituhitung ng (co(counteunter)r) dari kecil ke besar atau dengan kata lain pertambahannya positif. Perulangan dari kecil ke besar atau dengan kata lain pertambahannya positif. Perulangan positif dapat dibentuk dengan menggunakan statemen
positif dapat dibentuk dengan menggunakan statemen For-To-Do.For-To-Do.
Bentuk umum pengulangan For-Do adalah : Bentuk umum pengulangan For-Do adalah :
For
For < variable pengontrol>:=<ekspresi1>< variable pengontrol>:=<ekspresi1>toto<ekspresi2><ekspresi2>DoDo<pernyataan><pernyataan> Var
Variabeiabel l concontrotrol, l, ekseksprespresi1, i1, ekseksprepresi2 si2 harharus us memmempunypunyai ai tipe tipe yanyang g samsama,a, yaitu bertipe integer. Pada awal pengulangan harus terdapat keadaan berikut yaitu bertipe integer. Pada awal pengulangan harus terdapat keadaan berikut : ekspresi1<=ekspresi2. : ekspresi1<=ekspresi2. Contoh : Contoh : 1. Var I: integer; 1. Var I: integer; Begin Begin For I:=1 to 5 Do For I:=1 to 5 Do Writeln(‘pascal’); Writeln(‘pascal’); Readln; Readln; End. End.
2. Var I: integer; 2. Var I: integer; Begin Begin For I:=1 to 5 Do For I:=1 to 5 Do Begin Begin Writeln(‘pascal’); Writeln(‘pascal’); End; End; Readln; Readln; End. End. 3. Var I: integer; 3. Var I: integer; Begin Begin For I:=1 to 5 Do For I:=1 to 5 Do Begin Begin Write(I); Write(I); Writeln(‘belajar’); Writeln(‘belajar’); End; End; Readln; Readln; End. End. 4. Var I: integer; 4. Var I: integer; Begin Begin For I: integer; For I: integer; Write(I); Write(I); Writeln(‘belajar’); Writeln(‘belajar’); Readln; Readln; End. End. 5. Uses crt; 5. Uses crt; Var I: Byte; Var I: Byte; Begin Begin Clrscr; Clrscr; For I:= 1 to 5 Do For I:= 1 to 5 Do Writeln(I); Writeln(I); Writeln(’selesai’); Writeln(’selesai’); Readln; Readln; End. End.
6. Program penjumlahan bilangan; 6. Program penjumlahan bilangan;
Uses crt; Uses crt;
Var I, awal, akhir, jumlah : word; Var I, awal, akhir, jumlah : word; Begin
Begin Clrscr; Clrscr;
Write(’masukan batas awal :’);readln(awal); Write(’masukan batas awal :’);readln(awal); Write(‘masukan batas akhir :’);readln(akhir); Write(‘masukan batas akhir :’);readln(akhir); Jumlah :=0;
Jumlah :=0;
For I:=awal to akhir do For I:=awal to akhir do Jumlah :=jumlah+1; Jumlah :=jumlah+1;
Writeln(‘jumlah bilangan – bilangan tersebut adalah : ‘ jumlah); Writeln(‘jumlah bilangan – bilangan tersebut adalah : ‘ jumlah); Readln;
End. End.
7. Program pengulangan For_to_do; 7. Program pengulangan For_to_do;
Uses crt; Uses crt; Var X : integer; Var X : integer; C,F : real; C,F : real; Begin Begin Clrscr; Clrscr; Writeln(’---’); Writeln(’---’); Writeln(’
Writeln(’ celcius celcius fahrenheit fahrenheit ’);’); Writeln(’---’); Writeln(’---’); C : = 0; C : = 0; For X : = 1 to 10 do For X : = 1 to 10 do Begin Begin F:=1.8*C+32; F:=1.8*C+32; Writeln(C:8:2,F:14:2); Writeln(C:8:2,F:14:2); C:=C+0.5; C:=C+0.5; End; End; Writeln(’---’); Writeln(’---’); Readln; Readln; End. End. Keterangan : Keterangan :
Dibawah perulangan For X : = 1 to 10 Do terdapat blok program baru Dibawah perulangan For X : = 1 to 10 Do terdapat blok program baru yang diawali dengan Begin dan diakhiri dengan End; Hal ini dikarenakan yang diawali dengan Begin dan diakhiri dengan End; Hal ini dikarenakan peru
perulanglangan an For For hanhanya ya menmengulagulang ng 1 1 barbaris is stastatemtemen en dibadibawahwahnyanya. . KarKarenaena perhitungan konversi suhu lebih dari satu baris maka dinuat blok program perhitungan konversi suhu lebih dari satu baris maka dinuat blok program baru yang nantinya akan dianggap sebagai satu statemen dari keseluruhan baru yang nantinya akan dianggap sebagai satu statemen dari keseluruhan baris progaram yang terdapat dalam blok program tersebut.
baris progaram yang terdapat dalam blok program tersebut.
Sub program diawali dengan Begin dan diakhiri dengan End; ( titik Sub program diawali dengan Begin dan diakhiri dengan End; ( titik koma) sedangka
koma) sedangkan n prograprogram m utama diawali dengan Begin utama diawali dengan Begin dan diakhiri dengandan diakhiri dengan En
End. d. ( ( ttttik ik ). ). DaDalalam m prprogograram m ututamama a bibisa sa teterdrdapapat at lelebibih h dadari ri sasatu tu susubb proghram.
proghram.
5.1.2 Pengulangan For Negatif 5.1.2 Pengulangan For Negatif
Perulangan negatif
Perulangan negatif adalah perulangan dengan adalah perulangan dengan penghitupenghitung ng (cou(counter)nter) da
dari ri bebesasar r ke ke kekecicil l atatau au dedengngan an kakata ta lalain in pepertrtamambabahahannnnya ya nenegagatitif.f. Per
Perulanulangan gan neganegatif tif dapadapat t dibedibentuntuk k dendengan gan menmenggunggunakaakan n stastatemtemen en For For--DownTo-Do, dengan bentuk umum :
DownTo-Do, dengan bentuk umum : Fo
For r <v<varariaiabebel l pepengngonontrtrolol> > := := <e<eksksprpresesi> i> DoDownwnTo To <e<eksksprpresesi2i2> > DoDo <pernyataan>
<pernyataan>
Pada setiap pengulangan, variabel pengulangan dikurangi 1. pengulangan Pada setiap pengulangan, variabel pengulangan dikurangi 1. pengulangan akan berhenti jika harga variabel pengontrol sudah lebih kecil dari ekspresi2. akan berhenti jika harga variabel pengontrol sudah lebih kecil dari ekspresi2. pada awal pengulangan, harus terdapat keadaan berikut:
pada awal pengulangan, harus terdapat keadaan berikut: ekspresi1 >= ekspresi2 ekspresi1 >= ekspresi2 contoh : contoh : 1. Program For_Down; 1. Program For_Down; uses crt; uses crt;
var I : Byte; var I : Byte; begin begin clrscr; clrscr;
for I:=5 downto 1 do for I:=5 downto 1 do writeln(I); writeln(I); writeln(’selesai’); writeln(’selesai’); readln; readln; end. end. 2. Program Perulangan_for_down; 2. Program Perulangan_for_down; Uses crt; Uses crt; Var B : integer; Var B : integer; Begin Begin Clrscr; Clrscr; Writeln(‘---‘); Writeln(‘---‘); Writeln(‘ Writeln(‘ B B B*B B*B B*B*B B*B*B 1/B 1/B ‘);‘); Writeln(‘---‘); Writeln(‘---‘); For B:=10 Downto 1 Do For B:=10 Downto 1 Do Writeln(B:3,B*B:8,B*B:8,1/B:12:2); Writeln(B:3,B*B:8,B*B:8,1/B:12:2); Writeln(‘---‘); Writeln(‘---‘); Readln; Readln; End. End.
3.1.3 Perulangan For Tersarang 3.1.3 Perulangan For Tersarang
Pengulangan tersarang (nested loop)
Pengulangan tersarang (nested loop) adalah perulangan yang beradaadalah perulangan yang berada di
di dadalam lam perperulaulangangan n yayang ng lalainninnyaya. . PePerulrulanangagan n yayang ng lelebih bih dadalalam m akakanan diproses terlebih dahulu sampai habis,
diproses terlebih dahulu sampai habis, kemudiakemudian n perulanperulangan yang gan yang lebih luarlebih luar baru akan bertambah, mengerjakan perulangan yang lebih dalam lagi mulai baru akan bertambah, mengerjakan perulangan yang lebih dalam lagi mulai dari nilai awalnya dan seterusnya.
dari nilai awalnya dan seterusnya.
Contohnya : Contohnya : 1. Program pengulangan_tersarang1: 1. Program pengulangan_tersarang1: Uses crt; Uses crt;
Var I,J : integer; Var I,J : integer; Begin Begin Clrscr; Clrscr; For I:=1 to 5 do For I:=1 to 5 do Begin Begin For J:=1 to 4 do For J:=1 to 4 do Write(I:8,J:5); Write(I:8,J:5); Writeln; Writeln; End; End; Readln; Readln; End. End. 2. Program Pengulangan_tersarang2: 2. Program Pengulangan_tersarang2: Uses crt; Uses crt; Var I, J, K : integer; Var I, J, K : integer;
Begin Begin Clrscr; Clrscr; For I:=1 to 5 do For I:=1 to 5 do Begin Begin For J:=1 to 4 do For J:=1 to 4 do Begin Begin For K:1 to 3 do For K:1 to 3 do Write(I:8,J:5,K:4); Write(I:8,J:5,K:4); Writeln; Writeln; End; End; End; End; Readln; Readln; End. End. 3. Program Tersarang_bintang1; 3. Program Tersarang_bintang1; Uses crt; Uses crt; Var I, J : integer; Var I, J : integer; Begin Begin Clrscr; Clrscr; For I:=1 to 3 do For I:=1 to 3 do Begin Begin For J:=1 to 5 do For J:=1 to 5 do Write(‘*’); Write(‘*’); Writeln; Writeln; End; End; Readln; Readln; End. End. 4. Program Tersarang_bintang2: 4. Program Tersarang_bintang2: Uses crt; Uses crt; Var I, J, K : integer; Var I, J, K : integer; Begin Begin
Write(’masukan jumlah bintang:’);readln(I); Write(’masukan jumlah bintang:’);readln(I); For J:=1 to I do For J:=1 to I do Begin Begin For K :=1 to J do For K :=1 to J do Write(’*’); Write(’*’); Writeln; Writeln; End; End; Readln; Readln; End. End. 4.2
4.2 PENGULANGAN PENGULANGAN WHILE WHILE DODO
Struktur pengulangan While Do menggunakan ekspresi logika untuk Struktur pengulangan While Do menggunakan ekspresi logika untuk me
mengnghehentntikikaan n pepengngululanangagan. n. StStruruktktur ur WWhihile le Do Do memenynyaatatakakan n babahwhwaa peng
pengulaulangan ngan akaakan n diladilakukkukan an terterus us selaselama ma syasyarat rat terterpenpenuhi. uhi. JaJadi di syasyaratrat didalam While Do menyatakan syarat dilakukan pengulangan.
didalam While Do menyatakan syarat dilakukan pengulangan. Bentuk umum struktur While Do :
Bentuk umum struktur While Do :
While <ekspresi logika>Do<pernyataan> While <ekspresi logika>Do<pernyataan>
Contohnya : Contohnya : 1. Var I: integer; 1. Var I: integer; begin begin I:=0; I:=0; While I<5 Do While I<5 Do Begin Begin Writeln(I); Writeln(I); I:=I+1; I:=I+1; end; end; readln; readln; end. end. 2. Perogram Pengulangan_While_Do; 2. Perogram Pengulangan_While_Do; uses crt; uses crt;
var Ni, R, T :real; var Ni, R, T :real; I, N, J : integer; I, N, J : integer; Begin Begin Clrscr; Clrscr;
Write(’jumlah data ?’);readln(N); Write(’jumlah data ?’);readln(N); Writeln; Writeln; I:=0; I:=0; T:=0; T:=0; While I<N do While I<N do Begin Begin I : =I+1; I : =I+1;
Write(‘nilai data ke’,I,’?’); Write(‘nilai data ke’,I,’?’); readln(Ni); readln(Ni); T:=T+Ni; T:=T+Ni; end; end; R:=T/N; R:=T/N; writeln; writeln; writeln(‘total nilai =’,T:8:2); writeln(‘total nilai =’,T:8:2); writeln(‘jumlah data=’,N:3); writeln(‘jumlah data=’,N:3); writeln(.rata-rata nilai =’,R:8:2); writeln(.rata-rata nilai =’,R:8:2); readln; readln; end. end.
3.2.1 Perulangan While – Do Tersarang 3.2.1 Perulangan While – Do Tersarang
Perulangan While – Do tersarang ( nested While – Do ) merupakan Perulangan While – Do tersarang ( nested While – Do ) merupakan perulangan While – Do yang satu di dalam perulangan While – Do yang perulangan While – Do yang satu di dalam perulangan While – Do yang lainnya. lainnya. Conhnya : Conhnya : Program perulangan_While-Do-Tersarang; Program perulangan_While-Do-Tersarang; Uses crt; Uses crt;
Var Ni, R, T : real; Var Ni, R, T : real;
N, I : integer; N, I : integer;
Lagi : char; Lagi : char; Begin Begin Lagi := ’Y’; Lagi := ’Y’;
While lagi =’Y’ Do While lagi =’Y’ Do Begin Begin Clrscr; Clrscr; Write(’jumlah data ?’); Write(’jumlah data ?’); Readln (N); Readln (N); Writeln; Writeln; I :=0; I :=0; T :=0; T :=0; While I< N Do While I< N Do Begin Begin I:=I+1; I:=I+1;
Write(’nilai data ke :’,I,’?’); Write(’nilai data ke :’,I,’?’); Readln(Ni); Readln(Ni); T:=T+Ni; T:=T+Ni; End; End; Writeln; Writeln; Writeln(’total
Writeln(’total nilai nilai =’,T:8:2);=’,T:8:2); Writeln(‘jumlah
Writeln(‘jumlah data data =’,N:3);=’,N:3); Writeln(‘rata-rata nilai =’,R:8:2); Writeln(‘rata-rata nilai =’,R:8:2); Writeln;
Writeln;
Write(‘akan menghitung lagi (Y/T)?’); Write(‘akan menghitung lagi (Y/T)?’); Readln(lagi); Readln(lagi); End; End; End. End.
4.3 PERULANGAN REPEAT UNTIL 4.3 PERULANGAN REPEAT UNTIL
St
Strukruktutur r pepengngulaulangangan n ReRepepeat at UntUntil il memenggnggunaunakakan n ekeksprspresesi i lologikgikaa untu
untuk k menmenghenghentika tika pengpengulaulanganngan. . StruStruktuktur r RepeRepeat at UntUntil il digudigunaknakan an untuuntukk mengulang ( Repeat ) statemen-statemen atau blok statemen sampai ( Until ) mengulang ( Repeat ) statemen-statemen atau blok statemen sampai ( Until ) kondisi yang diseleksi di Until tidak terpenuhi. Pada struktur Repeat Until kondisi yang diseleksi di Until tidak terpenuhi. Pada struktur Repeat Until tidak diperlukan struktur blok (begin-end). Struktur Repeat Until menyatakan tidak diperlukan struktur blok (begin-end). Struktur Repeat Until menyatakan bahwa pengulangan akan dilakukan sampai syarat tertentu. Syarat didalam bahwa pengulangan akan dilakukan sampai syarat tertentu. Syarat didalam Repeat Until menyatakan syarat berhentinya pengulangan.
Repeat Until menyatakan syarat berhentinya pengulangan. Bentuk umum struktur Repeat Until adalah :
Bentuk umum struktur Repeat Until adalah :
Repeat<pernyataan>Until<ekspresi logika> Repeat<pernyataan>Until<ekspresi logika> Contohnya : Contohnya : 1. Program Pengulangan_Repeat; 1. Program Pengulangan_Repeat; Uses crt; Uses crt; Var I : Byte; Var I : Byte; Begin Begin Clrscr; Clrscr; I := 1; I := 1; Repeat Repeat Writeln(I); Writeln(I); Inc(I); Inc(I);
Until I>5; Until I>5; Readln; Readln; End. End. 2. Program Pengulangan_Repeat1; 2. Program Pengulangan_Repeat1; Uses crt; Uses crt; Var a, b, c, d, y : real; Var a, b, c, d, y : real; Begin Begin
Write(‘berapa rupiah batas awal table =’);readln(a); Write(‘berapa rupiah batas awal table =’);readln(a); Write(‘berapa rupiah batas akhir table =’);readln(b); Write(‘berapa rupiah batas akhir table =’);readln(b); Write(‘berapa rupiah pertambahannya =’);readln(c); Write(‘berapa rupiah pertambahannya =’);readln(c); Writeln; Writeln; Writeln(‘tabel kurs’); Writeln(‘tabel kurs’); Writeln; Writeln; Writeln(‘
Writeln(‘ rupiah rupiah dollar dollar yen yen ‘);‘);
Writeln(‘======================’); Writeln(‘======================’); Repeat Repeat D :=a/1900; D :=a/1900; Y :=a/900; Y :=a/900; Writeln(a:9:2,’’,d:9:2,’’,y:9:2); Writeln(a:9:2,’’,d:9:2,’’,y:9:2); A :=a+C; A :=a+C; Until a>=b; Until a>=b; Writeln(‘======================’); Writeln(‘======================’); Readln; Readln; End. End. 3. Program Pengulangan_Repeat2; 3. Program Pengulangan_Repeat2; Uses crt; Uses crt; Const harga_bensin=700; Const harga_bensin=700; Harga_solar=600; Harga_solar=600;
Var bensin, solar, I : integer; Var bensin, solar, I : integer; Begin
Begin Clrscr; Clrscr;
Writeln(’tabel harga bahan bakar’); Writeln(’tabel harga bahan bakar’);
Writeln(’==================’); Writeln(’==================’); Writeln(’liter
Writeln(’liter bensin bensin solar’);solar’); Writeln(’==================’); Writeln(’==================’); I := 1 ; I := 1 ; Repeat Repeat Bensin :=700*I; Bensin :=700*I; Solar :=600*I; Solar :=600*I; Writeln(I:8,’’,bensin:10,’’,solar:10); Writeln(I:8,’’,bensin:10,’’,solar:10); I :=I+1; I :=I+1; Until I > 20; Until I > 20; Writeln(’===================’); Writeln(’===================’); Readln; Readln; End. End.
3.3.1 Pengulangan Repeat ... Until Tersarang 3.3.1 Pengulangan Repeat ... Until Tersarang
Perulangan Repeat .. Until tersarang adalah suatu perulangan Repeat .. Perulangan Repeat .. Until tersarang adalah suatu perulangan Repeat .. Until yang satu berada di dalam perulangan Repeat ... Until yang lainnya. Until yang satu berada di dalam perulangan Repeat ... Until yang lainnya.
Contohnya : Contohnya : Program perulangan_Repeat-Until_Tersarang; Program perulangan_Repeat-Until_Tersarang; Uses crt; Uses crt; Var A, B, C : real; Var A, B, C : real; Begin Begin Clrscr; Clrscr; Writeln(‘======================’); Writeln(‘======================’); Writeln(‘sisi
Writeln(‘sisi A A sisi sisi B B sisi sisi C’);C’); Writeln(‘---‘); Writeln(‘---‘); A : =1; A : =1; Repeat Repeat B := 0; B := 0; Repeat Repeat C := SQRT(A*A+B*B); C := SQRT(A*A+B*B); Writeln(A:6:2,B:9:2,C:9:2); Writeln(A:6:2,B:9:2,C:9:2); B :=B+5; B :=B+5; Until B > 25; Until B > 25; A:=A+1; A:=A+1; Until A > 3; Until A > 3; Writeln(‘======================’); Writeln(‘======================’); Readln; Readln; End. End.
BAB V BAB V PENYELEKSIAN KONDISI PENYELEKSIAN KONDISI 5.1 PENDAHULUAN 5.1 PENDAHULUAN
Pascal mempunyai dua buah statement kendali untuk pengembalian Pascal mempunyai dua buah statement kendali untuk pengembalian keputusan yaitu statement
keputusan yaitu statement IF ….. THENIF ….. THEN dan statementdan statement CASE ….. OFCASE ….. OF prosesproses pen
pengagambmbilailan n kekeputputususan an berberperperan an pepentnting ing dadalalam m teteknknik ik pepemomogragramamann terstruktur.
terstruktur.
5.2 STATEMENT IF ….. THEN 5.2 STATEMENT IF ….. THEN
Bentuk dari struktur
Bentuk dari struktur IF … THENIF … THEN adalah :adalah :
IF
IF ungkapanungkapan THENTHEN statementstatement
Ungkapan adalah kondisi yang akan diseleksi oleh statement IF. Bila Ungkapan adalah kondisi yang akan diseleksi oleh statement IF. Bila kondisi yang diseleksi terpenuhi, maka statement yang mengikuti THEN akan kondisi yang diseleksi terpenuhi, maka statement yang mengikuti THEN akan diproses. Sebaliknya, bila kondisi tidak terpenuhi, maka yang akan diproses diproses. Sebaliknya, bila kondisi tidak terpenuhi, maka yang akan diproses adalah statement berikutnya.
adalah statement berikutnya.
Exemple : Exemple : 1. Program kondisi 1; 1. Program kondisi 1; Uses crt; Uses crt; Var a : Real; Var a : Real; B : String[11]; B : String[11]; Begin Begin Clrscr; Clrscr; B :=’tidak lulus’; B :=’tidak lulus’;
Write (‘Berapa nilai anda ?’); readln (a); Write (‘Berapa nilai anda ?’); readln (a);
IF a > 55 THEN b :=’lulus’; IF a > 55 THEN b :=’lulus’; Writeln (b);readln; Writeln (b);readln; End. End. 2.Progarm pilihan_then1; 2.Progarm pilihan_then1; Uses crt; Uses crt;
Var pilihan : byte; Var pilihan : byte;
R,L,T, Lulus : real; R,L,T, Lulus : real; Begin Begin Gotoxy (10,2);writeln(’PILIHAN’); Gotoxy (10,2);writeln(’PILIHAN’);
Gotoxy (10,4);writeln(’1. menghitung luas lingkaran’); Gotoxy (10,4);writeln(’1. menghitung luas lingkaran’); Gotoxy (10,6);writeln(’2. menghitung luas segitiga’); Gotoxy (10,6);writeln(’2. menghitung luas segitiga’);
Gotoxy (10,8);writeln(’3. menghitung luas bujursangkar’); Gotoxy (10,8);writeln(’3. menghitung luas bujursangkar’); Gotoxy (10,10);writeln(’0. selesai’);
Gotoxy (10,10);writeln(’0. selesai’); Pilihan :=9; Pilihan :=9; While(pilihan<0)or(pilihan>3)do While(pilihan<0)or(pilihan>3)do Begin Begin
Gotoxy (10,12);write (‘pilih nomor (0-3)?’);Readln(pilihan); Gotoxy (10,12);write (‘pilih nomor (0-3)?’);Readln(pilihan); End;
End; Clrscr; Clrscr;
IF pilihan = 1 THEN IF pilihan = 1 THEN
Begin Begin
Write(‘jari-jari lingkaran =’);readln(R); Write(‘jari-jari lingkaran =’);readln(R); Luas :=3.14*R*R;
Luas :=3.14*R*R;
Writeln(’luas lingkaran =’,luas:9:2); Writeln(’luas lingkaran =’,luas:9:2);
End; End; If pilihan = 2 THEN If pilihan = 2 THEN Begin Begin
Write(’sisi alas =’);readln(L); Write(’sisi alas =’);readln(L); Write(‘sisi tinggi =’);readln(T); Write(‘sisi tinggi =’);readln(T); Luas :=0.5*L*T;
Luas :=0.5*L*T; Writeln;
Writeln;
Writeln (‘luas segitiga =’,luas:9:2); Writeln (‘luas segitiga =’,luas:9:2);
End; End; IF pilihan =3 THEN IF pilihan =3 THEN Begin Begin
Write (’sisi panjang =’);readln(T); Write (’sisi panjang =’);readln(T); Writeln(’sisi lebar =’);readln(L); Writeln(’sisi lebar =’);readln(L); Luas :=T*L;
Luas :=T*L;
Writeln(’luas bujursangkar =’,luas :9:2); Writeln(’luas bujursangkar =’,luas :9:2); End; End; Readln: Readln: End. End. 3. Progarm pilihan_THEN2; 3. Progarm pilihan_THEN2; Uses crt; Uses crt;
Var pilih : integer; Var pilih : integer; Begin
Begin Clrscr; Clrscr;
Writeln (‘daftar table penjualan barang ‘); Writeln (‘daftar table penjualan barang ‘); Writeln
Writeln
(’======================================’); (’======================================’);
Writeln (’jika anda pilih 1 maka terdapat daftar harga sabun’); Writeln (’jika anda pilih 1 maka terdapat daftar harga sabun’); Writeln (’jika anda pilih 2 maka terdapat daftar harga shampo’); Writeln (’jika anda pilih 2 maka terdapat daftar harga shampo’); Writeln (’jika anda pilih 0 maka tidak memilih daftar harga’); Writeln (’jika anda pilih 0 maka tidak memilih daftar harga’); Writeln Writeln (’======================================’); (’======================================’); Writeln; Writeln;
Writeln (’pilihan anda 1,2,atau 0 ....’);readln(pilih); Writeln (’pilihan anda 1,2,atau 0 ....’);readln(pilih);
IF pilih = 1 THEN IF pilih = 1 THEN
Begin Begin
Writeln (’daftar harga – harga sabun’); Writeln (’daftar harga – harga sabun’);
Writeln (’=======================’); Writeln (’=======================’); W
Wrriitteelln n ((’’ssaabbuun n cciittrraa RRp p 880000’’));; Writeln (‘sa
Writeln (‘sabun lifeboy bun lifeboy Rp 4Rp 450’);50’); Writeln
Writeln (‘sabun (‘sabun lux lux Rp Rp 450’);450’); Writeln
Writeln (‘sabun (‘sabun prity prity Rp Rp 300’);300’); End;
End;
IF pilih = 2 THEN IF pilih = 2 THEN
Begin Begin
Writeln (‘======================’); Writeln (‘======================’); Writeln
Writeln (‘shampo (‘shampo sunsilk sunsilk Rp Rp 700’);700’); Writeln
Writeln (‘shampo (‘shampo brisk brisk Rp Rp 1100’);1100’); Writeln
Writeln (‘shampo (‘shampo rejoice rejoice Rp Rp 1000’);1000’); Writeln
Writeln (‘shampo (‘shampo kao kao Rp Rp 600’);600’); End;
End;
IF
IF pilih pilih =0 =0 THENTHEN
Begin Begin
Writeln (‘anda tidak memilih daftar harga’); Writeln (‘anda tidak memilih daftar harga’); End; End; Readln; Readln; End. End.
5.3 STATEMENT IF ... THEN ... ELSE 5.3 STATEMENT IF ... THEN ... ELSE
Struktur
Struktur IF … THEN … ELSEIF … THEN … ELSE merupakan pengembangan dari strukturmerupakan pengembangan dari struktur
IF ...THEN
IF ...THEN dengan struktu :dengan struktu :
IF
IF kondisikondisi THENTHEN statement 1statement 1 ELSEELSE statement 2statement 2
Statement atau dapat berupa blok statement akan diproses bilamana kondisi Statement atau dapat berupa blok statement akan diproses bilamana kondisi yang diseleksi benar ( terpenuhi ) sedang statement 2 atau dapat berupa yang diseleksi benar ( terpenuhi ) sedang statement 2 atau dapat berupa blok statement akan diproses bilamana kondisi bilamana kondisi yang blok statement akan diproses bilamana kondisi bilamana kondisi yang diseleksi tidak terpenuhi.
diseleksi tidak terpenuhi.
Example : Example : 1. Program seleksi_else1; 1. Program seleksi_else1; Uses crt ; Uses crt ;
Var nilai_ujian : real; Var nilai_ujian : real; Begin
Begin
Write (‘nilai yang didapat ?’); Write (‘nilai yang didapat ?’); Readln(nilai_ujian); Readln(nilai_ujian); IF nilai_ujian > 60 THEN IF nilai_ujian > 60 THEN Writeln(‘lulus’) Writeln(‘lulus’) ELSE ELSE Writeln(‘tidak lulus’) Writeln(‘tidak lulus’) Readln; Readln; End. End. 2. Program seleksi_else2; 2. Program seleksi_else2; Uses crt; Uses crt;
Var nilai : integer ; Var nilai : integer ;
Nama,nim : string; Nama,nim : string; Begin Begin Clrscr ; Clrscr ;
Write(‘nama anda ?’);readln(nama); Write(‘nama anda ?’);readln(nama); Write(‘nim anda ?’);readln(nim); Write(‘nim anda ?’);readln(nim);
Write(‘berapa nilai anda?’);readln(nilai); Write(‘berapa nilai anda?’);readln(nilai);
IF (nilai <= 100) and (nilai >=80) THEN IF (nilai <= 100) and (nilai >=80) THEN
Begin Begin
Writeln(‘anda mendapat nilai A’); Writeln(‘anda mendapat nilai A’);
Writeln(’poin yang anda peroleh = 4’); Writeln(’poin yang anda peroleh = 4’); End;
End;
IF (nilai < = 79) and (nilai >=70)THEN IF (nilai < = 79) and (nilai >=70)THEN
Begin Begin
Writeln(’anda mendapat nilai B’); Writeln(’anda mendapat nilai B’);
Writeln(’poin yang anda peroleh = 3’); Writeln(’poin yang anda peroleh = 3’); End;
End;
IF (nilai <= 69) and (nilai >=60)THEN IF (nilai <= 69) and (nilai >=60)THEN
Begin Begin
Writeln(’ ’anda mendapat nilai C’); Writeln(’ ’anda mendapat nilai C’); Writeln(’poin yang anda peroleh = 2’); Writeln(’poin yang anda peroleh = 2’); End;
End;
IF (nilai < = 59) and (nilai >=50)THEN IF (nilai < = 59) and (nilai >=50)THEN
Begin Begin
Writeln(’anda mendapat nilai D’); Writeln(’anda mendapat nilai D’);
Writeln(’poin yang anda peroleh = 1’); Writeln(’poin yang anda peroleh = 1’); End; End; ELSE ELSE IF (nilai < = 49)THEN IF (nilai < = 49)THEN Begin Begin
Writeln(’anda mendapat nilai E’); Writeln(’anda mendapat nilai E’);
Writeln(’poin yang anda peroleh = 0’); Writeln(’poin yang anda peroleh = 0’); End; End; Readln; Readln; End. End. 5.5 STATEMENT CASE ….. OF 5.5 STATEMENT CASE ….. OF
Struktur CASE dipakai untuk memilih dengan kemungkinan lebih dari Struktur CASE dipakai untuk memilih dengan kemungkinan lebih dari 2, bentuk umum struktur CASE adalah :
2, bentuk umum struktur CASE adalah : CASE < 27ariable>of CASE < 27ariable>of <konstanta1>:<pernyataan> <konstanta1>:<pernyataan> <konstanta2>:<pernyataan> <konstanta2>:<pernyataan> <konstanta3>:<pernyataan> <konstanta3>:<pernyataan> .. .. .. .. .. .. ELSE
ELSE <pernyataan><pernyataan> End;
End;
Variabel dan konstanta yang dapat dipakai hanyalah yang mempunyai Variabel dan konstanta yang dapat dipakai hanyalah yang mempunyai ordinal, yaitu tipe integer dan char.
ordinal, yaitu tipe integer dan char.
Example : Example :
3.
3. PrProgograram cam casese_o_of_f_1;1; Uses crt; Uses crt; Var nilai:char; Var nilai:char; Begin Begin
Write(‘nilai huruf yag didapat ?’); Write(‘nilai huruf yag didapat ?’); Readln(nilai)
Readln(nilai)
Case nilai of Case nilai of ‘A’ :
‘A’ : writeln(‘sangat baik’);writeln(‘sangat baik’); ‘‘BB’’ :: writeln(‘baik’);writeln(‘baik’); ‘C’ : ‘C’ : writeln(‘cukup’);writeln(‘cukup’); ‘D’ : ‘D’ : writeln(‘kurang’);writeln(‘kurang’); ‘E’ :
‘E’ : writeln(‘gagal’);writeln(‘gagal’); End; End; Readln; Readln; End. End. 4.
4. PrProgograram cam casese_o_of_f_2;2; Uses crt; Uses crt; Var pembelian,potongan:integer; Var pembelian,potongan:integer; Begin Begin Clrscr; Clrscr; Write(’total pembelian ?’); Write(’total pembelian ?’); Readln(pembelian); Readln(pembelian);
Case pembelian of Case pembelian of
0 .. 1000 : potongan:=100; 0 .. 1000 : potongan:=100; 1001 .. 10000 : potongan:=500; 1001 .. 10000 : potongan:=500; 10001 .. 30000 : potongan:=200; 10001 .. 30000 : potongan:=200; End; End; Writeln(’jumlah
Writeln(’jumlah pembelian pembelian = = Rp’,potongan:7);Rp’,potongan:7); Writeln(’potongan
Writeln(’potongan = = Rp’,potongan:7);Rp’,potongan:7); Writeln(’ ---’); Writeln(’ ---’);
Writeln(’jumlah yang dibayar = Rp’,pembelian – potongan:7); Writeln(’jumlah yang dibayar = Rp’,pembelian – potongan:7); Readln;
Readln; End.
End.
5.
5. PrProgograram cam casese_o_of_f_3;3; Uses crt; Uses crt; Var pilihan:byte; Var pilihan:byte; Kg,beras,ketan,terigu:integer; Kg,beras,ketan,terigu:integer; Begin Begin Clrscr; Clrscr; Gotoxy(10,2);writeln(’pilihan anda:’); Gotoxy(10,2);writeln(’pilihan anda:’);
Gotoxy(10,4);writeln(’1.menghitung harga beras’); Gotoxy(10,4);writeln(’1.menghitung harga beras’); Gotoxy(10,6);writeln(’2.menghitung harga ketan’); Gotoxy(10,6);writeln(’2.menghitung harga ketan’); Gotoxy(10,8);writeln(’3.menghitung harga terigu’); Gotoxy(10,8);writeln(’3.menghitung harga terigu’); Gotoxy(10,10);writeln(’pilih nomor 1-3?’); Gotoxy(10,10);writeln(’pilih nomor 1-3?’); Readln(pilihan); Readln(pilihan); Clrscr; Clrscr;
Case pilihan of Case pilihan of 1: begin
1: begin
Writeln(’menghitung harga beras’); Writeln(’menghitung harga beras’); Writeln(’=================’); Writeln(’=================’); Writeln;
Writeln;
Writeln(’berapa kilogram yang anda beli’); Writeln(’berapa kilogram yang anda beli’);
Readln(kg); Readln(kg); Beras:=kg*900 Beras:=kg*900
Write(’anda hars membayar Rp’,beras:7); Write(’anda hars membayar Rp’,beras:7); End;
End; 2: begin 2: begin
Writeln(’menghitung harga ketan’); Writeln(’menghitung harga ketan’); Writeln(’=================’); Writeln(’=================’); Writeln;
Writeln;
Writeln(’berapa kilogram yang anda beli’); Writeln(’berapa kilogram yang anda beli’); Readln(kg);
Readln(kg); Beras:=kg*1000 Beras:=kg*1000
Write(’anda hars membayar Rp’,ketan:7); Write(’anda hars membayar Rp’,ketan:7); End;
End; 2: begin 2: begin
Writeln(’menghitung harga terigu’); Writeln(’menghitung harga terigu’); Writeln(’=================’); Writeln(’=================’); Writeln;
Writeln;
Writeln(’berapa kilogram yang anda beli’); Writeln(’berapa kilogram yang anda beli’); Readln(kg);
Readln(kg); Beras:=kg*900 Beras:=kg*900
Write(’anda hars membayar Rp’,terigu:7); Write(’anda hars membayar Rp’,terigu:7); End; End; Else; Else; Begin Begin
Write(‘pilihan anda salah’); Write(‘pilihan anda salah’);
Write(‘pilih salah satu dari 1,2 atau 3’); Write(‘pilih salah satu dari 1,2 atau 3’); End; End; End; End; Readln; Readln; End. End.
BAB VI BAB VI
LATIHAN SOAL-SOAL LATIHAN SOAL-SOAL
6.1 LATIHAN INPUT DAN OUTPUT
6.1 LATIHAN INPUT DAN OUTPUT
LATIHAN 1
LATIHAN 1
1.
1. Buat pro
Buat program untuk me
gram untuk menghit
nghitung luas dan ke
ung luas dan kelili
liling kerucut
ng kerucut, input
, input
var
varia
iabe
bel
l π
π un
untu
tuk
k ke
kete
tetap
tapan
an /
/ ko
kost
stan
anta
ta.
. Ou
Outp
tput
utny
nya
a :
: lu
luas
as dan
dan
ke
keli
lili
ling
ng ke
keru
rucu
cut
t de
deng
ngan
an fo
forma
rmat
t 4
4 ang
angka
ka di
dibe
bela
lakan
kang
g kom
koma
a +
+
flowchart
flowchart
2
2.. B
Bu
ua
att
Nim
Nim
Nim
Nim
Nama lengkap
Nama lengkap
--Nim
Nim
-- Jurusan
Jurusan
-- Turbo pascal
Turbo pascal
N
Na
am
ma
a
p
pa
an
ng
gg
giilla
an
n
nama panggilan
nama panggilan
3.
3. Untuk ko
Untuk kolom (5-1
lom (5-10) dan bari
0) dan baris (3-6) di i
s (3-6) di input, se
nput, setelah di
telah diinput ak
input akan
an
tampil kalimat / nama lengkap anda pada posisis yang diinput,
tampil kalimat / nama lengkap anda pada posisis yang diinput,
setelah 7 detik dari kalimat pertama akan tampil nim anda pada
setelah 7 detik dari kalimat pertama akan tampil nim anda pada
beda 3 baris dan 5 kolom, setelah beda 16 detik dari kalimat
beda 3 baris dan 5 kolom, setelah beda 16 detik dari kalimat
pertama akan tampil jurusan pada beda 5 baris dan 9 kolom
pertama akan tampil jurusan pada beda 5 baris dan 9 kolom
pada kalimat pertama setelah 4
pada kalimat pertama setelah 4 detik dari kalimat terakhir yang
detik dari kalimat terakhir yang
tampil akan muncul ”saya belajar pascal”dengan beda 4 baris, 2
tampil akan muncul ”saya belajar pascal”dengan beda 4 baris, 2
kolom pada kalimat y
JAWABAN JAWABAN
1. Uses crt;
1. Uses crt;
Const Phl = 3.14;
Const Phl = 3.14;
Var r.t : integer; s,k,l :Real;
Var r.t : integer; s,k,l :Real;
Begin
Begin
Clrscr;
Clrscr;
Write(’jari-jarinya =’); readln(r);
Write(’jari-jarinya =’); readln(r);
Write(’tinggi kerucut =’); readln(t);
Write(’tinggi kerucut =’); readln(t);
S : = Sqrt(sqr(r)+sqr(t));
S : = Sqrt(sqr(r)+sqr(t));
K : = Phi*2*r+2*s;
K : = Phi*2*r+2*s;
Writeln(‘kelilin
Writeln(‘kelilingnya
gnya ?’,k:10:4);
?’,k:10:4);
L : = Phi*Sqr®+Phi*r*s;
L : = Phi*Sqr®+Phi*r*s;
Writeln(‘luasnya =’,l:14;4);
Writeln(‘luasnya =’,l:14;4);
Readln;
Readln;
End.
End.
Outputnya Outputnya Jari-jarinya =14 Jari-jarinya =14 Tinggi kerucut =14 Tinggi kerucut =14 Kelilingnya Kelilingnya = = 127.5180127.5180 Luasnya= 1485.8036 Luasnya= 1485.8036Mulai
Mulai
r.t
r.t
S:=√r2t2
S:=√r2t2
K
K::=
=2
2**π
π**rr+
+2
2**ss
L
L::=
=π
π**rr**rr+
+π
π**rr**ss
cetak
cetak
Tinggi
Tinggi
kerucut=
kerucut=
seles
seles
2. Uses crt;
2. Uses crt;
Begin
Begin
Clrscr;
Clrscr;
Gotoxy(0,8);writeln(200822064);gotoxy(73,1);writeln(200822064);
Gotoxy(0,8);writeln(200822064);gotoxy(73,1);writeln(200822064);
Gotoxy(33,8);writeln(Ahmad Musorip); writeln; writeln;
Gotoxy(33,8);writeln(Ahmad Musorip); writeln; writeln;
Gotoxy(36,11);writeln(200822064); writeln; writeln;
Gotoxy(36,11);writeln(200822064); writeln; writeln;
Gotoxy(29,14);writeln(teknik informatika); writeln; writeln;
Gotoxy(29,14);writeln(teknik informatika); writeln; writeln;
Gotoxy(35,17);writeln(turbo pascal);
Gotoxy(35,17);writeln(turbo pascal);
Gotoxy(1,25);writeln(asep);gotoxy(77,25);writeln(asep);
Gotoxy(1,25);writeln(asep);gotoxy(77,25);writeln(asep);
Readln;
Readln;
End.
End.
Output Output 200822064 200822064 200822064 200822064 Ahmad Musorip Ahmad Musorip 200822064 200822064 Teknik informatika Teknik informatikaTurbo pascal Turbo pascal asep asep asep asep
3. Uses crt;
3. Uses crt;
Begin
Begin
Clrscr;
Clrscr;
Gotoxy(5,3);readln;gotoxy(5,3);writeln(’Ahmad Musorip’);
Gotoxy(5,3);readln;gotoxy(5,3);writeln(’Ahmad Musorip’);
Delay(7000);gotoxy(10,6);writeln(’200822064’);
Delay(7000);gotoxy(10,6);writeln(’200822064’);
Delay(9000);gotoxy(19,11);writeln(’Teknik Informatika’);
Delay(9000);gotoxy(19,11);writeln(’Teknik Informatika’);
Delay(4000);gotoxy(21,15);writeln(’saya belajar komputer’);
Delay(4000);gotoxy(21,15);writeln(’saya belajar komputer’);
Readln;
Readln;
End.
End.
Output OutputMulai
Mulai
200822064
200822064
Ahmad Musorip
Ahmad Musorip
200822064
200822064
Teknik Informatika
Teknik Informatika
Turbo pascal
Turbo pascal
asep
asep
cetak
cetak
Tinggi
Tinggi
kerucut=
kerucut=
Seles
Seles
ai
ai
Ahmad Musorip Ahmad Musorip 200822064 200822064 Managemen informatika Managemen informatika
Saya belajar komputer Saya belajar komputer