JENIS BAHASA PEMROGRAMAN
Berdasarkan jenisnya, bahasa pe mrograman dapat dibedakan menjadi
beberapa jenis sebagai berikut :
1. Bahasa tingkat rendah (low level language)
Bahasa pemrograman yang berorientasi pada bahasa mesin
Contoh : Assembler
2. Bahasa tingkat menengah (middle level language)
Bahasa pemrograman yang beorientasi pada aturan gramatikal
Contoh : C
3. Bahasa tingk at tinggi (high level language)
Bahasa pemrograman yang berorientasi pada bahasa manusia
Contoh : BASIC, PASCAL
4. Bahasa berorientasi objek (object oriented language)
Bahasa pemrograman yang berorientasi pada objek
Contoh : Delphi, VB, SQL
SEJARAH PERKEMBANGAN PROGRAM PASCAL
Pascal adalah bahasa pemrograman yang yang dirancang oleh Profesor
Niclaus Wirth dari Technical Univerciti Zurich, Swizerland. Nama pascal sendiri
adalah sebagai suatu bentuk penghargaan kepada Blaise Pascal, yaitu seorang ahli
matematika dan Filsafat yang terkenal pada abad 17 yang berasal dari Prancis.
Profesor Niclaus Wirt memperkenalkan Compiler Bahasa pascal ini Pertama
kali untuk komputer CDC 6000 (Control Data Comporation) yang dipublikasikan
pada tahun 1971 dengan tujuan untuk membantu mengajarkan program komputer
secara sistematis, khususnya untuk mengajarkan program yang terstruktur
(stuktured programing). Jadi pascal adalah bahasa yang ditujukan untuk membuat
program yang terstruktur.
6
Dalam waktu yang singkat pascal telah menjadi bahasa yang sangat populer
dikalangan para pelajar universitas dan merupakan bahasa yang diajarkan di
banyak perguruan tinggi. Banyak propesional komputer yang beralih ke bahasa
pascal. Kenyataannya, pascal merupakan bahasa yang paling cepat populer
dibandingkan bahasa-bahasa pemerograman tingkat tinggi lainnya. Bahasa
pemrograman Pascal Mempunyai beberapa Kelebihan seperti:
1. Tipe Data Standar, tipe-tipe data standar yang telah tersedia pada kebanyakan
bahasa pemrograman. Pascal memiliki tipe data standar: boolean, integer, real,
char, string,
2. User defined Data Types, programmer dapat membuat tipe data lain yang
diturunkan dari tipe data standar.
3. Strongly-typed, programmer harus menentukan tipe data dari suatu variabel,
dan variabel tersebut tidak dapat dipergunakan untuk menyimpan tipe data
selain dari format yang ditentukan.
4. Terstruktur, memiliki sintaks yang memungkinkan penulisan program dipecah
menjadi fungsi-fungsi kecil (procedure dan function) yang dapat dipergunakan
berulang-ulang.
5. Sederhana dan Ekspresif, memiliki struktur yang sederhana dan sangat
mendekati bahasa manusia (bahasa Inggris) sehingga mudah dipelajari dan
dipahami.
Standart pascal adalah bahasa pascal yang didefinisikan oleh K. Jensen dan
Niclaus Wirth. penerapan dari standart pascal banyak yang berbeda seperti apa
yang telah didefinisikan oleh K. Jensen dan Niclaus Wirth. Pascal di Eropa
didefinisikan oleh ISO (Internasional Standart Orgazation) dan di Amerika oleh
kerjasama antara ANSI (America Nasional Standart Institute) dan IEEE (Institute
of Electrical and Electronic Engineers).
Bahasa PASCAL juga merupakan bahasa yang digunakan sebagai standar
bahasa pemrograman bagi tim nasional Olimpiade Komputer Indonesia (TOKI).
Selain itu, Bahasa PASCAL masih digunakan dalam IOI (International Olympiad
in Informatics).
Terdapat beberapa versi dari pascal yang telah berada di pasaran dan sampai
saat ini untuk komputer-komputer micro personal Turbo Pascal merupakan yang
paling populer dan banyak digunakan. Turbo Pascal banyak di gemari karena
bersifat interaktif. Selain itu Turbo Pascal mengikuti definisi dari standar pascal
7
yang didefinisikan oleh K. Jansen dan Niclaus Wirht di Pascal User Manual and
Report. Turbo Pascal adalah copiright dari BORLAND Inc.
STRUKTUR PROGRAM PASCAL.
Struktur dari suatu program Pascal terdiri dari sebuah judul program dan suatu
blok program atau badan program. Blok program dibagi lagi menjadi dua bagian,
yaitu bagian deklarasi dan bagian pernyataan (statement).
Judul Program
Judul program sifatnya adalah optional, dan bila ditulis, harus terletak pada
awal dari program dan diakhiri dengan titik koma.
Blok Program: PROGRAM Nama-program
Bagian Deklarasi
Bagian deklarasi digunakan bila di dalam program digunakan pengenal
( identifier). Identifier dapat berupa label, konstanta, tipe, variabel, prosedur dan
fungsi. Kalau suatu program menggunakan identifier, Pascal menuntut supaya
identifier tersebut diperkenalkan terlebih dahulu sebelum digunakan, yaitu
dideklarasikan terlebih dahulu pada bagian ini.
- deklarasi label LABEL nama-label;
- deklarasi konstanta CONST…………..;
- deklarasi tipe TYPE …………….;
- deklarasi variabel VAR ……………...;
- deklarasi prosedur PROCEDURE nama-prosedur;
……………………………….;
- deklarasi fungsi FUNCTION nama-fungsi;
………………………….;
Bagian Pernyataan
Adalah instruksi atau gabungan instruksi, yang menyebabkan komputer
melakukan aksi.
Blok Pernyataan: Begin
(statement)
…………;
…………;
end.
8
BEBERAPA ATURAN DALAM PROGRAM PASCAL
Nil1 : real; {nilai ujian}
ELEMEN-ELELMEN PROGRAM PASCAL
Unruk membuat sebuah Program dengan Turbo Pascal diperlukan elemenelemen
yang akan membangun program tersebut. Adapun elemen-elemen yang
dimaksud terdiri dari:
1. Simbol-simbol dasar (basic symbols)
Program pascal dapat dibentuk dari dapat dibentuk dari simbol-simbol yang
terdiri dari huruf, angka dan simbol-simbol khusus.
· huruf
Huruf yang digunakan mulai dari asampai dengan z, dan A sampai dengan Z
serta garis bawah ( _ ) huruf besar atau kecil dianggap sama, sehingga AbC sama
dengan aBc.
· angka
Angka yang dapat digunakan adalah angka 0 1 2 3 4 5 6 7 8 9.
· simbol-simbol khusus
simbol-simbol yang dapat digunakan adalah simbol seperti (. , ; :) selain tu
juga dapat digunakan simbol untuk operasi aritmatik ( + - * / ), perbandingan ( <
> = <= >= <> ), dan simbol-simbol khusus lainnya ( ! @ # $ % ^ ” ” ~ ` ( ) [ ]
{ } )
2. Kata-kata cadangan (reserved words)
Dalam bahasa pemrograman pascal terdapat pernyataan- pernyataan baku
berupa kata-kata cadangan atau reserved word, yaitu kata-kata baku yang
9
digunakan dalam program dan sudah terintergrated dalam pascal dan juga
mempunyai bentuk serta kegunaan tertentu yang telah didefinisikan oleh Pascal.
Reserved word tidak boleh didefinisikan kembali oleh pemakai, sehingga
tidak dapat digunakan sebagai pengenal (Identifier). Dalam bahasa pemrograman
Pascal, beberapa reserved word dalam Pascal anatra lain:
AND, DOWNTO, IN, OF, STRING, ASM, ELSE, INHERITED, OR, THEN,
ARRAY, END, INLINE, PACKED, TO, BEGIN, EXPORTS, INTERFACE,
PROCEDURE, TYPE, CASE, FILE, LABEL, PROGRAM, UNIT, CONST, FOR,
LIBRARY, RECORD, UNTIL, CONSTRUCTOR, FUNCTION, MOD, REPEAT,
USES, DESTRUCTOR, GOTO, NIL, SET, VAR, DIV, IF, NOT, SHL, WHILE,
DO, IMPLEMENTATION, OBJECT, SHR, WITH
3. Pengenal yang didefinisikan oleh pemakai (used defined identifier)
Nama yang digunakan dalam program pascal disebut dengan pengenal
(identifier). Pemakai dapat mendefinisikan sendiri suatu nama sebagai pengenal
untuk tipe, konstanta, variabel, prosedur, fungsi, unit, dan program, program yang
di definisikan sendiri ini bebas tapi dengan ketentuan-ketentuan sebagai berikut:
1. Terdiri dari gabungan huruf dan angka dengan karakter pertama harus
berupa huruf.
2. Tidak boleh mengandung karakter blank
3. Tidak boleh mengandung simbol-simbol khusus kecuali garis bawah
4. Panjangnya bebas tetapi hanya 63 karakter pertama yang dianggap
signifikan.
4 Tipe Data
Tipe data dipergunakan untuk mendeklarasikan nilai suatu variabel. Terdapat
beberapa tipe data yang digunakan dalam program pascal terdapat 2 jenis yaitu
tipe dasar dan tipe bentukan, tetapi dalam makalah ini hanya akan dibahas tipe
dasar saja. Adapun jenis-jenis tipe-tipe dasar tersebut diantaranya adalah:
· Tipe data boolean
Data boolean disebut juga data bilangan lojik. Tipe data boolean hanya
mengenal dua buah nilai yaitu benar (true) dan salah (false).
· Tipe data integrer
Data integrer merupakan nilai bilangan bulat dalam bentuk desimal misalnya 1, 2,
34, 765, 0, -89, -70. tipe data integrer mempunyai ranah nilai yang tidak terbatas.
Dalam Turbo Pascal terdapat lima macam tipe data integrer, yaitu: byte, shorint,
word, integer dan longint.
10
· Tipe data real
Data real adalah data yang mengandung data desimal misalkan 3.65, 9.0876,
2.00, dan lain-lain. Bilangan real juga dapat dituliskan dengan notasi E, yang
artinya perpangkatan sepuluh. Misalnya 230.40E32 artinya 230.40 x10³².
· Tipe data Karakter (char)
Data karakter ditulis dengan menggunakan tanda petik ( “ “ ) misalkan
“A” ,”@”, “z”, “#”, “1”, “-234”, “+”, “<” dan lain-lain. Tapi perlu diperhatikan
“9” adalah karakter tetapi jika di tulis 9 maka tipenya menjadi integer. Maka sarat
mutlak menulisan karakter harus menggunakan tanda baca petik ( “ “ ).
· Tipe data string
Data string adalah untaian karakter-karakter dengan panjang tertentu yang
terletak diantara tanda petik tunggal. nilai data string akan menepati memori
sebesar banyaknya karakter stringnya ditambah dengan 1 byte. Contoh dari data
sring adalah seperti ‘teknik’, ‘informatika’, ‘9876151’ dan sebagainya.
· Tipe data pointer
Pointer adalah suatu variabel yang berisi alamat yang akan disimpan pada
memori.
· Tipe data ordinal
Tipe data ordinal adalah tipe data yang merupakan subset dari tipe data
sederhana (tipe data standart dan tipe data yang di definisikan sendiri oleh
pemakai). Yang dimaksud dengan tipe data sederhana adalah semua tipe data
kecuali tipe data riel. Jadi yang termasuk tipe data ordinal adalah tipe data stendart
(integer, shortint, longit, byte, word, boolean, dan chart), dan tipe data yang
didefinisikan sendiri oleh pemakai.
5. Karakter kontrol (control character)
Turbo Pascal memungkinkan karakter-karakter kontrol untuk diletakan dalam
suatu string. Terdapat dua buah notasi yang digunakan untuk karakter kontrol
yaitu: Simbol # yang diikuti dengan dengan bilangan desimal untuk menunjukan
suatu karakter yang berhubungan dengan kode ASCII. Simbol ^ di ikuti oleh suatu
karakter menunjukan hubungan dengan karakter kontrol.
6. Tanda operasi (operator)
Tanda operasi dalam bahasa pascal dikelompokan dalam sembilan kategori,
yaitu:
· Asigment operator
Asigment operator dusebut juga operator pengerjaan, menggunakan simbol (:=)
11
· Binary operator
Binary operator digunakan untuk mengoprasikan dua buah operand
Operand dapat berbentuk konstanta, variabel, operator ini digunakan untuk
operasi aritmatika yang berhubungan dengan tipe data integrer dan real.
· Unary operator
Urany operator hanya bisa menggunakan satu operand saja. Operan berupa urani
plus untuk menunjukan tanda positif, dan urany minus untuk menunjukan tanda
negatif.
· Bitwise operator
Bitwise operator digunakan untuk bit per bit pada nilai integrer bekerja
berdasarkan bilangan biner, walaupun input dan output dapat berupa bilangan
bulat maupun riel. Terdiri operator NOT,AND,OR,XOR,shr, sht.
· Relational operator
Relational operator digunakan untuk membandingkan hubungan dua buah
operand yang akan menghasilkan boolean (TRUE atau FALSE).
· Logical operator
Logical operator sama dengan bitwise operator terdiri dari NOT,AND, OR,XOR.
hanya saja bekerja dengan nilai-nilai logika, yaitu TRUE-FALSE.
· Addres operator
Pascal memberikan dua buah operator khusus yang berhubungan denga alamat
(address) di memori yaitu @ yang akan menghasilkan alamat dari suatu nilai
variabel, dan ^ akan memberikan nilai di alamayt yang ditunjukan.
· Set operator
Set operator digunakan untuk operasi himpunan
· String operator
String operator digunakan untuk operasi string saja, yaitu operator + yang
digunakan untuk menggabung nilai dua buah string.
7. Komentar program (comment)
Untuk keperluan dokumentasi program, sehingga program mudah dibaca dan
dipahami dapat ditambah komentar. Komentar dapat ditambahkan dimanapun
dalam program yang tidak akan mempengaruhi proses dari program.ditulis dengan
pembatas { dan } atau pembatas (* dan *)
8. Prosedur (Procedure)
12
Prosedur dalam bahasa pascal dapat dibentuk dalam prosedur yang
didefinisikan atau yang dibuat sendiri oleh penguna, atau prosedur yang yang
disediakan oleh Turbo Pascal. Adapun prosedur standart dapat dikelompokan
menjadi beberapa kelompok diantaranya:
· I/O procedure
Prosedur standart ini dapat digunakan memasukan data dari alat input dan
menampilkan data dari alat output.
· String procedure
Prosedur ini untuk operasi suatu string
· Exit and halt procedure
Prosedur standartini digunakan untuk keluar dan mengakhiri proses program.
· Original procedure
Prosedur standart ini untuk menentukan urutan dari suatu nilai ordinal (nilai yang
mempunyai urutan tertentu)
· Dynamik alocation procedure
Prosedur standart ini digunakan untuk mengatur heap yaitu suatu memori yang
masih tersisa pada waktu program dijalankan
· Miscellaneous procedure
Prosedur lain-lain
9. Fungsi (fungsion)
Fungsi dalam bahasa pascal dapat berbentuk dalam prosedur yang
didefinisikan atau yang dibuat sendiri oleh penguna, tetapi fungsi didefinisikan
sendiri oleh penguna, harus dideklarasikan terlebih dahulu. Terdapat pula fungsi
yang sudah disediakan oleh pascal yang disebut fungsi standart, diantanya adalah:
· I/O Funcsion
Prosedur standart ini dapat digunakan memasukan data dari input dan
menampilkan data dari alat output.
· String Funcsion
Fungsi standart ini dapat dipergunakan untuk operasi suatu string
· Aritmetic Funcsion
Fungsi standar tini digunakan aritmatika
· Transfer Funcsion
Fungsi standart ini digunakan untuk mengubah mengubah nilai dari satu tipe ke
tipe yang lain.
13
· pointer and adress fungsion
Fungsi standart ini digunakan untuk operasi langsung di alamat memori dan
pointer.
· Original fungsion
Fungsi standart ini untuk menentukan urutan dari suatu nilai ordinal
1. Dynamik alocation fungsion
Fungsi standart ini digunakan untuk mengatur heap
2. Miscellaneous fungsion
Fungsi standart lain-lain
10. Statemen (statement)
Statemen adalah intruksi pengerjaan perintah pada program pascal. Statemen
terdapa pada bagian deklarasi yang diawali oleh reserved word BEGIN dan
diakhiri dengan END. setiap statemen diakhiri dengan tanda [;]. Statemenstatemen
dalam bahasa Pascal terdiri dari pernyataan yang berupa fungsi dan
prosedur sebagai perintah standar Pascal. Berikut adalah beberapa jenis stetmen
dalam bahasa paskal :
1. Statemen-statemen yang digunakan untuk Input dan Output (standar
I/O).
Read / Readln [prosedur].
Dalam bahasa Pascal untuk keperluan input (membaca input) digunakan identifier
standar READ atau READLN.
Identifier standar ReadLn sedikit berbeda dengan Read. ReadLn digunakan untuk
memasukkan data perbaris, artinya setelah tombol Enter ditekan, maka akan ganti
baris, sedangkan Read tidak ganti baris, masih dalam baris yang sama.
Write / Writeln [prosedur].
Sedangkan untuk keperluan output (mencetak output) digunakan identifier standar
WRITE atau WRITELN
Perbedaan Write dengan WriteLn adalah bahwa Write menampilkan hasil tanpa
ganti baris dan tampilan berikutnya akan disambung dalam baris yang sama.
Sedang WriteLn digunakan untuk menampilkan tampilan perbaris, akan ganti
baris untuk tampilan berikutnya.
2. Statemen-statemen yang digunakan untuk pengaturan letak layar.
14
ClrScr [prosedur].
Perintah ini digunakan untuk membersihkan layar.
GotoXY[prosedur].
Untuk menempatkan posisi kursor pada layar.
DelLine [prosedur].
Untuk menghapus sebuah baris pada posisi kursor dan menaikkan baris-baris
dibawahnya.
InsLine [prosedur].
Untuk menyisipkan sebuah baris pada posisi kursor dan menggeser kebawah
tampilan-tampilan baris dibawahnya.
Delay [prosedur].
Untuk menghentikan sejenak proses program.
3. Statemen yang digunakan untuk memanipulasi string.
ConCat[fungsi].
Untuk menggabungkan 2 atau beberapa variabel string.
Copy [fungsi].
Mengambil satu atau beberapa karakter dari sebuah string.
Delete [prosedur]. .
Menghapus sebagian karakter dari sebuah string.
Insert [prosedur].
Menyisipkan satu atau beberapa karakter ke dalam sebuah string.
Length [fungsi].
Memberikan nilai panjang dari suatu string (jumlah karakter dalam string).
Pos [fungsi].
Mencari posisi sebuah bagian string (substring) didalam sebuah string.
Str [prosedur].
Merubah nilai numerik ke dalam nilai string.
Val [prosedur].
Merubah nilai string ke dalam nilai numerik.
UpCase [fungsi].
Memberikan huruf kapital dari argumen.
Abs [fungsi].
Memberikan nilai mutlak dari suatu argumen.
ArcTan[fungsi].
15
Memberikan nilai dari fungsi arctangent dari perhitungan goniometri.
Cos [fungsi].
Memberikan nilai dari fungsi Cosinus.
Exp [fungsi].
Menghitung nilai pangkat dari bilangan e (bilangan alam), yaitu sebesar x.
Frac [fungsi].
Untuk mendapatkan nilai pecahan dari suatu bilangan.
Int [fungsi].
Memberikan nilai integer (bilangan bulat) dari suatu variabel dengan membuang
bilangan di belakang koma.
Ln [fungsi].
Digunakan untuk menghitung nilai logaritma alam (natural logarithm) dari nilai x.
Sin [fungsi].
Memberikan nilai dari fungsi Sinus.
Sqr [fungsi].
Digunakan untuk menghitung nilai pangkat kuadrat dari suatu bilangan.
Tipe dari x bisa berupa real maupun integer. Dan hasilnya akan sama dengan tipe
dari x.
Sqrt (fungsi).
Digunakan untuk menghitung nilai akar dari suatu bilangan.
RUNTUNAN, PEMILIHAN DAN PENGULANGAN
1. Runtunan
Runtunan atau sequence merupakan satu atau lebih intruksi yang berarti
bahwa tiap intruksi dikerjakan satu-persatu, tiap intruksi hanya dilaksanakan
sekali atau tidak ada intruksi yang di ulang, urutan intruksi dilaksanakan dan
diproses sama dengan urutan intruksi yang ditulis dalam teks algoritmanya. Akhir
dari intruksi sekaligus juga akhir dari sebuah program.
Dalam runtunan hanya digunakan stetmen untuk input dan output seperti
write, writeln
Contoh:
Program input;
Uses Crt;
Var
Nm, npm : String;
16
Begin
Writeln (' masukkan nama dan NPM ');
Writeln ('------------------------------');
Write (' Nama anda : '); Readln (nm);
Writeln (' NPM anda : '); Readln (npm);
End.
Bila program diatas di jalankan maka hasilnya adalah
masukkan nama dan NPM
------------------------------
Nama anda : ( di input,)
NPM anda : ( di input,)
2. Pemilihan
Struktur runtunan hanya terdapat pada program sederhana. Pada umumnya
masalah yang akan diselesaikan memiliki beberapa alternatif pelaksanaan aksi.
Suatu aksi hanya dilakukan bila persyaratan atau kondisi tertentu dipenuhi. Kita
misalkan bahwa masalah tersebut memiliki beberapa kasus. Jadi dalam
memecahkan masalah, kita harus menganalisis kasus-kasus apa saja yang
mungkin ada, lalu aksi apa yang dilakukan bila suatu kasus dimasuki. Adanya
pemilihan kasus-kasus menyebabkan terjadinya pemilihan intruksi (atau
percabanyan) di dalam algoritmanya, bergantung pada kasus yang memenuhi.
Dalam struktur pemilihan terdapat dua stetmen yaitu “if – then – else”, dan
“case – of “. Stetmen “if – then – else” digunakan untuk satu kasus atau lebih
yang memerlukan pemilihan yang tidak terlalu banyak, sebenarnya dalam bentuk
pernyataan :
if kondisi then pernyataan 2
else pernyataan 2 ;
Sedangkan “case – of “ di gunakan untuk menyederhanakan kontruksi “if – then
– else”, jika dua kasus atau lebih, dalam bentuk pernyataan ;
case ekspresi of
Nilai 1 : pernyataan 2 ;
Nilai 2 : pernyataan 1 ;
-
-
17
Nilai n : pernyataan n ;
else pernyataan x ;
end ;
Contoh if – then – else :
program if_then_else;
{menentukan total biaya yang harus dibayar}
uses Crt;
{deklarasi}
var
n : longint; {total biaya}
b : real; {jumlah yang harus dibayar, setelah dikurangi discon}
{algoritma}
begin
write ('Total biaya : '); read (n);
b:= (n-(n*(20/100))); {rumus penghitungan jumlah yang harus di bayar}
if n >= 25000 then
writeln ('Discon 20%, total biaya Rp.',round(b))
else
writeln (' discon 0%, Total Biaya Rp.',n);
{endif}
end.
Bila program diatas dijalankan maka akan mendapatkan hasil
Total biaya : (di input, misalnya 25000)
Discon 20%, total biaya Rp. 20000
atau
Total biaya : (di input, misalkan 20000)
Discon 0 %, total biaya Rp. 20000
Contoh case – of :
Program case_of;
{contoh case of menentukan kedudukan nilai A,B,C,D dan E}
uses crt;
{deklarasi}
18
Var n: char ;
{algoritma}
Begin
Write ('Nilai anda (A,B,C,D, atau E): '); readln (n);
Case (n) Of
'A': Writeln('Nilai anda Sangat Baik');
'B': Writeln('Nilai anda Baik');
'C': Writeln('Nilai anda Cukup');
'D': Writeln('Nilai anda Kurang');
'E': Writeln('Nilai anda Sangat Kurang');
else
writeln('Nilai yang anda masukan salah,');
{kondisi jika nilai yang dimasukan bukan karakter A,B,C,D,
atau E}
End;
End.
Bila program diatas dijalan maka akan didapatkan hasil
Nilai anda (A,B,C,D, atau E): (di input, misalkan “B”)
Nilai anda baik
3. Pengulangan
Struktur pengulangan bertujuan untuk mengulang statement atau blok
statement berulang kali sesuai sejumlah yang ditentukan, sampai kondisi
terpenuhi dan pengulangan berhenti dalam bahasa pemrograman pascal terdapat
beberapa kontruksi yaitu pernyataan for, while – do,.dan repeat – until.
Kontruksi for digunakan untuk sejumlah kali yang tentukan. Stetmen for
terbagi dalam tiga macam yaitu for positif, dan for negatif. Berikut strukturstruktur
stetmen for :
· For Positif
for pencacah := a to b do
pernyataan ;
· For Negatif
for pencacah := a to b do
19
pernyataan ;
Kontruksi while – do digunakan untuk melakukan pengulangan pada rentang
kondisi yang ditetntukan, dalam bentuk pernyataan :
while kondisi do pernyataan ;
Sedangkan kontruksi repeat – until digunakan untuk mengulang sampai kondisi
bernilai benar, dengan bentik pernyataan :
while pernyataan until kondisi;
contoh for positif :
program for_positif;
{contoh programfor positif mengulang kalimat sampai n kali}
uses crt;
{deklarasai}
var
n: integer; {jumlah pengulangan}
i: integer;
o: string ; {kalimat yang akan diulang}
{algoritma}
begin
write('Kalimat yang akan diulang : '); readln (o);
write('Banyaknya pengulangan : '); readln (n);
write('');
for i :=1 to N do
writeln(o);
end.
Bila program diatas di jalankan maka akan mendapatkan hasil
Kalimat yang akan di ulang : (di input, misalkan “saya memang ganteng”)
Banyak perulangan : (di input , misalkan 4)
Saya memang ganteng
Saya memang ganteng
Saya memang ganteng
Saya memang ganteng
Contoh for negative :
program for_negatif;
20
{contoh for negatif mengurutkan angka sampa nilainya 1}
Uses Crt;
{deklarasi}
Var i : Integer;
{algoritma}
Begin
write('Angka yang akan diurutkan mulai dari: '); readln(i);
For i := (i-1) DownTo 1 Do Write (i);
End.
Bila program tersebut dijalankan maka akan mendapatkan
Angka yang akan diurutkan mulai dari: (di input misalkan 10)
10 9 8 7 6 5 4 3 2 1
Contoh while – do :
program while_do;
{contoh while do mengurutkan angka sebanyak n kali}
Uses Crt;
{deklarasi}
Var i,n : integer;
{algoritma}
Begin
write ('mulai urutkan dari angka : '); read (i);
write ('diurutkan sampai dengan angka : '); readln (n);
While i <> (n+1) {jika nilai sama program akan berakhir}
do
Begin
Writeln (i);
Inc (i); { sama dengan i:=i+1 }
End;
End.
Bila preogram diatas dijalankan maka akan mendapatkan hasil
mulai urutkan dari angka : ( di input, misalkan 2)
diurutkan sampai angka : ( di input, misalkan 5)
2
3
21
4
5
Contoh repeat – until
program repeat_until;
{ contoh repeat until mengulang pengurutan sampai i=n,}
uses crt ;
{deklarasi}
Var
I,n : integer;
{dekskripsi}
Begin
write ('mulai mengurutkan setelah angka : '); readln (i);
write ('berhenti sampai angka : '); readln (n);
Repeat
i:= i+1;
Writeln (i); {memulai mengurutkan dari i}
Until i=(n); {program akan sebelm n}
End.
Bila program diatas dijalankankan maka akan mendapat hasil
mulai mengurutkan setelah angka : (di iput misalkan 4)
berhenti sampai angka : (di iput misalkan 10)
5
6
7
8
9
Berdasarkan jenisnya, bahasa pe mrograman dapat dibedakan menjadi
beberapa jenis sebagai berikut :
1. Bahasa tingkat rendah (low level language)
Bahasa pemrograman yang berorientasi pada bahasa mesin
Contoh : Assembler
2. Bahasa tingkat menengah (middle level language)
Bahasa pemrograman yang beorientasi pada aturan gramatikal
Contoh : C
3. Bahasa tingk at tinggi (high level language)
Bahasa pemrograman yang berorientasi pada bahasa manusia
Contoh : BASIC, PASCAL
4. Bahasa berorientasi objek (object oriented language)
Bahasa pemrograman yang berorientasi pada objek
Contoh : Delphi, VB, SQL
SEJARAH PERKEMBANGAN PROGRAM PASCAL
Pascal adalah bahasa pemrograman yang yang dirancang oleh Profesor
Niclaus Wirth dari Technical Univerciti Zurich, Swizerland. Nama pascal sendiri
adalah sebagai suatu bentuk penghargaan kepada Blaise Pascal, yaitu seorang ahli
matematika dan Filsafat yang terkenal pada abad 17 yang berasal dari Prancis.
Profesor Niclaus Wirt memperkenalkan Compiler Bahasa pascal ini Pertama
kali untuk komputer CDC 6000 (Control Data Comporation) yang dipublikasikan
pada tahun 1971 dengan tujuan untuk membantu mengajarkan program komputer
secara sistematis, khususnya untuk mengajarkan program yang terstruktur
(stuktured programing). Jadi pascal adalah bahasa yang ditujukan untuk membuat
program yang terstruktur.
6
Dalam waktu yang singkat pascal telah menjadi bahasa yang sangat populer
dikalangan para pelajar universitas dan merupakan bahasa yang diajarkan di
banyak perguruan tinggi. Banyak propesional komputer yang beralih ke bahasa
pascal. Kenyataannya, pascal merupakan bahasa yang paling cepat populer
dibandingkan bahasa-bahasa pemerograman tingkat tinggi lainnya. Bahasa
pemrograman Pascal Mempunyai beberapa Kelebihan seperti:
1. Tipe Data Standar, tipe-tipe data standar yang telah tersedia pada kebanyakan
bahasa pemrograman. Pascal memiliki tipe data standar: boolean, integer, real,
char, string,
2. User defined Data Types, programmer dapat membuat tipe data lain yang
diturunkan dari tipe data standar.
3. Strongly-typed, programmer harus menentukan tipe data dari suatu variabel,
dan variabel tersebut tidak dapat dipergunakan untuk menyimpan tipe data
selain dari format yang ditentukan.
4. Terstruktur, memiliki sintaks yang memungkinkan penulisan program dipecah
menjadi fungsi-fungsi kecil (procedure dan function) yang dapat dipergunakan
berulang-ulang.
5. Sederhana dan Ekspresif, memiliki struktur yang sederhana dan sangat
mendekati bahasa manusia (bahasa Inggris) sehingga mudah dipelajari dan
dipahami.
Standart pascal adalah bahasa pascal yang didefinisikan oleh K. Jensen dan
Niclaus Wirth. penerapan dari standart pascal banyak yang berbeda seperti apa
yang telah didefinisikan oleh K. Jensen dan Niclaus Wirth. Pascal di Eropa
didefinisikan oleh ISO (Internasional Standart Orgazation) dan di Amerika oleh
kerjasama antara ANSI (America Nasional Standart Institute) dan IEEE (Institute
of Electrical and Electronic Engineers).
Bahasa PASCAL juga merupakan bahasa yang digunakan sebagai standar
bahasa pemrograman bagi tim nasional Olimpiade Komputer Indonesia (TOKI).
Selain itu, Bahasa PASCAL masih digunakan dalam IOI (International Olympiad
in Informatics).
Terdapat beberapa versi dari pascal yang telah berada di pasaran dan sampai
saat ini untuk komputer-komputer micro personal Turbo Pascal merupakan yang
paling populer dan banyak digunakan. Turbo Pascal banyak di gemari karena
bersifat interaktif. Selain itu Turbo Pascal mengikuti definisi dari standar pascal
7
yang didefinisikan oleh K. Jansen dan Niclaus Wirht di Pascal User Manual and
Report. Turbo Pascal adalah copiright dari BORLAND Inc.
STRUKTUR PROGRAM PASCAL.
Struktur dari suatu program Pascal terdiri dari sebuah judul program dan suatu
blok program atau badan program. Blok program dibagi lagi menjadi dua bagian,
yaitu bagian deklarasi dan bagian pernyataan (statement).
Judul Program
Judul program sifatnya adalah optional, dan bila ditulis, harus terletak pada
awal dari program dan diakhiri dengan titik koma.
Blok Program: PROGRAM Nama-program
Bagian Deklarasi
Bagian deklarasi digunakan bila di dalam program digunakan pengenal
( identifier). Identifier dapat berupa label, konstanta, tipe, variabel, prosedur dan
fungsi. Kalau suatu program menggunakan identifier, Pascal menuntut supaya
identifier tersebut diperkenalkan terlebih dahulu sebelum digunakan, yaitu
dideklarasikan terlebih dahulu pada bagian ini.
- deklarasi label LABEL nama-label;
- deklarasi konstanta CONST…………..;
- deklarasi tipe TYPE …………….;
- deklarasi variabel VAR ……………...;
- deklarasi prosedur PROCEDURE nama-prosedur;
……………………………….;
- deklarasi fungsi FUNCTION nama-fungsi;
………………………….;
Bagian Pernyataan
Adalah instruksi atau gabungan instruksi, yang menyebabkan komputer
melakukan aksi.
Blok Pernyataan: Begin
(statement)
…………;
…………;
end.
8
BEBERAPA ATURAN DALAM PROGRAM PASCAL
- Akhir sebuah program Pascal ditandai dengan tanda baca titik (.) setelah END yang paling akhir.
- Tanda titik koma (;) merupakan pemisah antar instruksi satu dengan lainnya.
- Beberapa statement boleh ditulis menjadi satu baris dipisahkan dengan tanda baca titk koma (;) Contoh : simpan := akhir; akhir := simpan + awal;
- Baris komentar diletakkan diantara tanda (* dan *) atau diantara tanda{ dan }
Nil1 : real; {nilai ujian}
ELEMEN-ELELMEN PROGRAM PASCAL
Unruk membuat sebuah Program dengan Turbo Pascal diperlukan elemenelemen
yang akan membangun program tersebut. Adapun elemen-elemen yang
dimaksud terdiri dari:
1. Simbol-simbol dasar (basic symbols)
Program pascal dapat dibentuk dari dapat dibentuk dari simbol-simbol yang
terdiri dari huruf, angka dan simbol-simbol khusus.
· huruf
Huruf yang digunakan mulai dari asampai dengan z, dan A sampai dengan Z
serta garis bawah ( _ ) huruf besar atau kecil dianggap sama, sehingga AbC sama
dengan aBc.
· angka
Angka yang dapat digunakan adalah angka 0 1 2 3 4 5 6 7 8 9.
· simbol-simbol khusus
simbol-simbol yang dapat digunakan adalah simbol seperti (. , ; :) selain tu
juga dapat digunakan simbol untuk operasi aritmatik ( + - * / ), perbandingan ( <
> = <= >= <> ), dan simbol-simbol khusus lainnya ( ! @ # $ % ^ ” ” ~ ` ( ) [ ]
{ } )
2. Kata-kata cadangan (reserved words)
Dalam bahasa pemrograman pascal terdapat pernyataan- pernyataan baku
berupa kata-kata cadangan atau reserved word, yaitu kata-kata baku yang
9
digunakan dalam program dan sudah terintergrated dalam pascal dan juga
mempunyai bentuk serta kegunaan tertentu yang telah didefinisikan oleh Pascal.
Reserved word tidak boleh didefinisikan kembali oleh pemakai, sehingga
tidak dapat digunakan sebagai pengenal (Identifier). Dalam bahasa pemrograman
Pascal, beberapa reserved word dalam Pascal anatra lain:
AND, DOWNTO, IN, OF, STRING, ASM, ELSE, INHERITED, OR, THEN,
ARRAY, END, INLINE, PACKED, TO, BEGIN, EXPORTS, INTERFACE,
PROCEDURE, TYPE, CASE, FILE, LABEL, PROGRAM, UNIT, CONST, FOR,
LIBRARY, RECORD, UNTIL, CONSTRUCTOR, FUNCTION, MOD, REPEAT,
USES, DESTRUCTOR, GOTO, NIL, SET, VAR, DIV, IF, NOT, SHL, WHILE,
DO, IMPLEMENTATION, OBJECT, SHR, WITH
3. Pengenal yang didefinisikan oleh pemakai (used defined identifier)
Nama yang digunakan dalam program pascal disebut dengan pengenal
(identifier). Pemakai dapat mendefinisikan sendiri suatu nama sebagai pengenal
untuk tipe, konstanta, variabel, prosedur, fungsi, unit, dan program, program yang
di definisikan sendiri ini bebas tapi dengan ketentuan-ketentuan sebagai berikut:
1. Terdiri dari gabungan huruf dan angka dengan karakter pertama harus
berupa huruf.
2. Tidak boleh mengandung karakter blank
3. Tidak boleh mengandung simbol-simbol khusus kecuali garis bawah
4. Panjangnya bebas tetapi hanya 63 karakter pertama yang dianggap
signifikan.
4 Tipe Data
Tipe data dipergunakan untuk mendeklarasikan nilai suatu variabel. Terdapat
beberapa tipe data yang digunakan dalam program pascal terdapat 2 jenis yaitu
tipe dasar dan tipe bentukan, tetapi dalam makalah ini hanya akan dibahas tipe
dasar saja. Adapun jenis-jenis tipe-tipe dasar tersebut diantaranya adalah:
· Tipe data boolean
Data boolean disebut juga data bilangan lojik. Tipe data boolean hanya
mengenal dua buah nilai yaitu benar (true) dan salah (false).
· Tipe data integrer
Data integrer merupakan nilai bilangan bulat dalam bentuk desimal misalnya 1, 2,
34, 765, 0, -89, -70. tipe data integrer mempunyai ranah nilai yang tidak terbatas.
Dalam Turbo Pascal terdapat lima macam tipe data integrer, yaitu: byte, shorint,
word, integer dan longint.
10
· Tipe data real
Data real adalah data yang mengandung data desimal misalkan 3.65, 9.0876,
2.00, dan lain-lain. Bilangan real juga dapat dituliskan dengan notasi E, yang
artinya perpangkatan sepuluh. Misalnya 230.40E32 artinya 230.40 x10³².
· Tipe data Karakter (char)
Data karakter ditulis dengan menggunakan tanda petik ( “ “ ) misalkan
“A” ,”@”, “z”, “#”, “1”, “-234”, “+”, “<” dan lain-lain. Tapi perlu diperhatikan
“9” adalah karakter tetapi jika di tulis 9 maka tipenya menjadi integer. Maka sarat
mutlak menulisan karakter harus menggunakan tanda baca petik ( “ “ ).
· Tipe data string
Data string adalah untaian karakter-karakter dengan panjang tertentu yang
terletak diantara tanda petik tunggal. nilai data string akan menepati memori
sebesar banyaknya karakter stringnya ditambah dengan 1 byte. Contoh dari data
sring adalah seperti ‘teknik’, ‘informatika’, ‘9876151’ dan sebagainya.
· Tipe data pointer
Pointer adalah suatu variabel yang berisi alamat yang akan disimpan pada
memori.
· Tipe data ordinal
Tipe data ordinal adalah tipe data yang merupakan subset dari tipe data
sederhana (tipe data standart dan tipe data yang di definisikan sendiri oleh
pemakai). Yang dimaksud dengan tipe data sederhana adalah semua tipe data
kecuali tipe data riel. Jadi yang termasuk tipe data ordinal adalah tipe data stendart
(integer, shortint, longit, byte, word, boolean, dan chart), dan tipe data yang
didefinisikan sendiri oleh pemakai.
5. Karakter kontrol (control character)
Turbo Pascal memungkinkan karakter-karakter kontrol untuk diletakan dalam
suatu string. Terdapat dua buah notasi yang digunakan untuk karakter kontrol
yaitu: Simbol # yang diikuti dengan dengan bilangan desimal untuk menunjukan
suatu karakter yang berhubungan dengan kode ASCII. Simbol ^ di ikuti oleh suatu
karakter menunjukan hubungan dengan karakter kontrol.
6. Tanda operasi (operator)
Tanda operasi dalam bahasa pascal dikelompokan dalam sembilan kategori,
yaitu:
· Asigment operator
Asigment operator dusebut juga operator pengerjaan, menggunakan simbol (:=)
11
· Binary operator
Binary operator digunakan untuk mengoprasikan dua buah operand
Operand dapat berbentuk konstanta, variabel, operator ini digunakan untuk
operasi aritmatika yang berhubungan dengan tipe data integrer dan real.
· Unary operator
Urany operator hanya bisa menggunakan satu operand saja. Operan berupa urani
plus untuk menunjukan tanda positif, dan urany minus untuk menunjukan tanda
negatif.
· Bitwise operator
Bitwise operator digunakan untuk bit per bit pada nilai integrer bekerja
berdasarkan bilangan biner, walaupun input dan output dapat berupa bilangan
bulat maupun riel. Terdiri operator NOT,AND,OR,XOR,shr, sht.
· Relational operator
Relational operator digunakan untuk membandingkan hubungan dua buah
operand yang akan menghasilkan boolean (TRUE atau FALSE).
· Logical operator
Logical operator sama dengan bitwise operator terdiri dari NOT,AND, OR,XOR.
hanya saja bekerja dengan nilai-nilai logika, yaitu TRUE-FALSE.
· Addres operator
Pascal memberikan dua buah operator khusus yang berhubungan denga alamat
(address) di memori yaitu @ yang akan menghasilkan alamat dari suatu nilai
variabel, dan ^ akan memberikan nilai di alamayt yang ditunjukan.
· Set operator
Set operator digunakan untuk operasi himpunan
· String operator
String operator digunakan untuk operasi string saja, yaitu operator + yang
digunakan untuk menggabung nilai dua buah string.
7. Komentar program (comment)
Untuk keperluan dokumentasi program, sehingga program mudah dibaca dan
dipahami dapat ditambah komentar. Komentar dapat ditambahkan dimanapun
dalam program yang tidak akan mempengaruhi proses dari program.ditulis dengan
pembatas { dan } atau pembatas (* dan *)
8. Prosedur (Procedure)
12
Prosedur dalam bahasa pascal dapat dibentuk dalam prosedur yang
didefinisikan atau yang dibuat sendiri oleh penguna, atau prosedur yang yang
disediakan oleh Turbo Pascal. Adapun prosedur standart dapat dikelompokan
menjadi beberapa kelompok diantaranya:
· I/O procedure
Prosedur standart ini dapat digunakan memasukan data dari alat input dan
menampilkan data dari alat output.
· String procedure
Prosedur ini untuk operasi suatu string
· Exit and halt procedure
Prosedur standartini digunakan untuk keluar dan mengakhiri proses program.
· Original procedure
Prosedur standart ini untuk menentukan urutan dari suatu nilai ordinal (nilai yang
mempunyai urutan tertentu)
· Dynamik alocation procedure
Prosedur standart ini digunakan untuk mengatur heap yaitu suatu memori yang
masih tersisa pada waktu program dijalankan
· Miscellaneous procedure
Prosedur lain-lain
9. Fungsi (fungsion)
Fungsi dalam bahasa pascal dapat berbentuk dalam prosedur yang
didefinisikan atau yang dibuat sendiri oleh penguna, tetapi fungsi didefinisikan
sendiri oleh penguna, harus dideklarasikan terlebih dahulu. Terdapat pula fungsi
yang sudah disediakan oleh pascal yang disebut fungsi standart, diantanya adalah:
· I/O Funcsion
Prosedur standart ini dapat digunakan memasukan data dari input dan
menampilkan data dari alat output.
· String Funcsion
Fungsi standart ini dapat dipergunakan untuk operasi suatu string
· Aritmetic Funcsion
Fungsi standar tini digunakan aritmatika
· Transfer Funcsion
Fungsi standart ini digunakan untuk mengubah mengubah nilai dari satu tipe ke
tipe yang lain.
13
· pointer and adress fungsion
Fungsi standart ini digunakan untuk operasi langsung di alamat memori dan
pointer.
· Original fungsion
Fungsi standart ini untuk menentukan urutan dari suatu nilai ordinal
1. Dynamik alocation fungsion
Fungsi standart ini digunakan untuk mengatur heap
2. Miscellaneous fungsion
Fungsi standart lain-lain
10. Statemen (statement)
Statemen adalah intruksi pengerjaan perintah pada program pascal. Statemen
terdapa pada bagian deklarasi yang diawali oleh reserved word BEGIN dan
diakhiri dengan END. setiap statemen diakhiri dengan tanda [;]. Statemenstatemen
dalam bahasa Pascal terdiri dari pernyataan yang berupa fungsi dan
prosedur sebagai perintah standar Pascal. Berikut adalah beberapa jenis stetmen
dalam bahasa paskal :
1. Statemen-statemen yang digunakan untuk Input dan Output (standar
I/O).
Read / Readln [prosedur].
Dalam bahasa Pascal untuk keperluan input (membaca input) digunakan identifier
standar READ atau READLN.
Identifier standar ReadLn sedikit berbeda dengan Read. ReadLn digunakan untuk
memasukkan data perbaris, artinya setelah tombol Enter ditekan, maka akan ganti
baris, sedangkan Read tidak ganti baris, masih dalam baris yang sama.
Write / Writeln [prosedur].
Sedangkan untuk keperluan output (mencetak output) digunakan identifier standar
WRITE atau WRITELN
Perbedaan Write dengan WriteLn adalah bahwa Write menampilkan hasil tanpa
ganti baris dan tampilan berikutnya akan disambung dalam baris yang sama.
Sedang WriteLn digunakan untuk menampilkan tampilan perbaris, akan ganti
baris untuk tampilan berikutnya.
2. Statemen-statemen yang digunakan untuk pengaturan letak layar.
14
ClrScr [prosedur].
Perintah ini digunakan untuk membersihkan layar.
GotoXY[prosedur].
Untuk menempatkan posisi kursor pada layar.
DelLine [prosedur].
Untuk menghapus sebuah baris pada posisi kursor dan menaikkan baris-baris
dibawahnya.
InsLine [prosedur].
Untuk menyisipkan sebuah baris pada posisi kursor dan menggeser kebawah
tampilan-tampilan baris dibawahnya.
Delay [prosedur].
Untuk menghentikan sejenak proses program.
3. Statemen yang digunakan untuk memanipulasi string.
ConCat[fungsi].
Untuk menggabungkan 2 atau beberapa variabel string.
Copy [fungsi].
Mengambil satu atau beberapa karakter dari sebuah string.
Delete [prosedur]. .
Menghapus sebagian karakter dari sebuah string.
Insert [prosedur].
Menyisipkan satu atau beberapa karakter ke dalam sebuah string.
Length [fungsi].
Memberikan nilai panjang dari suatu string (jumlah karakter dalam string).
Pos [fungsi].
Mencari posisi sebuah bagian string (substring) didalam sebuah string.
Str [prosedur].
Merubah nilai numerik ke dalam nilai string.
Val [prosedur].
Merubah nilai string ke dalam nilai numerik.
UpCase [fungsi].
Memberikan huruf kapital dari argumen.
Abs [fungsi].
Memberikan nilai mutlak dari suatu argumen.
ArcTan[fungsi].
15
Memberikan nilai dari fungsi arctangent dari perhitungan goniometri.
Cos [fungsi].
Memberikan nilai dari fungsi Cosinus.
Exp [fungsi].
Menghitung nilai pangkat dari bilangan e (bilangan alam), yaitu sebesar x.
Frac [fungsi].
Untuk mendapatkan nilai pecahan dari suatu bilangan.
Int [fungsi].
Memberikan nilai integer (bilangan bulat) dari suatu variabel dengan membuang
bilangan di belakang koma.
Ln [fungsi].
Digunakan untuk menghitung nilai logaritma alam (natural logarithm) dari nilai x.
Sin [fungsi].
Memberikan nilai dari fungsi Sinus.
Sqr [fungsi].
Digunakan untuk menghitung nilai pangkat kuadrat dari suatu bilangan.
Tipe dari x bisa berupa real maupun integer. Dan hasilnya akan sama dengan tipe
dari x.
Sqrt (fungsi).
Digunakan untuk menghitung nilai akar dari suatu bilangan.
RUNTUNAN, PEMILIHAN DAN PENGULANGAN
1. Runtunan
Runtunan atau sequence merupakan satu atau lebih intruksi yang berarti
bahwa tiap intruksi dikerjakan satu-persatu, tiap intruksi hanya dilaksanakan
sekali atau tidak ada intruksi yang di ulang, urutan intruksi dilaksanakan dan
diproses sama dengan urutan intruksi yang ditulis dalam teks algoritmanya. Akhir
dari intruksi sekaligus juga akhir dari sebuah program.
Dalam runtunan hanya digunakan stetmen untuk input dan output seperti
write, writeln
Contoh:
Program input;
Uses Crt;
Var
Nm, npm : String;
16
Begin
Writeln (' masukkan nama dan NPM ');
Writeln ('------------------------------');
Write (' Nama anda : '); Readln (nm);
Writeln (' NPM anda : '); Readln (npm);
End.
Bila program diatas di jalankan maka hasilnya adalah
masukkan nama dan NPM
------------------------------
Nama anda : ( di input,)
NPM anda : ( di input,)
2. Pemilihan
Struktur runtunan hanya terdapat pada program sederhana. Pada umumnya
masalah yang akan diselesaikan memiliki beberapa alternatif pelaksanaan aksi.
Suatu aksi hanya dilakukan bila persyaratan atau kondisi tertentu dipenuhi. Kita
misalkan bahwa masalah tersebut memiliki beberapa kasus. Jadi dalam
memecahkan masalah, kita harus menganalisis kasus-kasus apa saja yang
mungkin ada, lalu aksi apa yang dilakukan bila suatu kasus dimasuki. Adanya
pemilihan kasus-kasus menyebabkan terjadinya pemilihan intruksi (atau
percabanyan) di dalam algoritmanya, bergantung pada kasus yang memenuhi.
Dalam struktur pemilihan terdapat dua stetmen yaitu “if – then – else”, dan
“case – of “. Stetmen “if – then – else” digunakan untuk satu kasus atau lebih
yang memerlukan pemilihan yang tidak terlalu banyak, sebenarnya dalam bentuk
pernyataan :
if kondisi then pernyataan 2
else pernyataan 2 ;
Sedangkan “case – of “ di gunakan untuk menyederhanakan kontruksi “if – then
– else”, jika dua kasus atau lebih, dalam bentuk pernyataan ;
case ekspresi of
Nilai 1 : pernyataan 2 ;
Nilai 2 : pernyataan 1 ;
-
-
17
Nilai n : pernyataan n ;
else pernyataan x ;
end ;
Contoh if – then – else :
program if_then_else;
{menentukan total biaya yang harus dibayar}
uses Crt;
{deklarasi}
var
n : longint; {total biaya}
b : real; {jumlah yang harus dibayar, setelah dikurangi discon}
{algoritma}
begin
write ('Total biaya : '); read (n);
b:= (n-(n*(20/100))); {rumus penghitungan jumlah yang harus di bayar}
if n >= 25000 then
writeln ('Discon 20%, total biaya Rp.',round(b))
else
writeln (' discon 0%, Total Biaya Rp.',n);
{endif}
end.
Bila program diatas dijalankan maka akan mendapatkan hasil
Total biaya : (di input, misalnya 25000)
Discon 20%, total biaya Rp. 20000
atau
Total biaya : (di input, misalkan 20000)
Discon 0 %, total biaya Rp. 20000
Contoh case – of :
Program case_of;
{contoh case of menentukan kedudukan nilai A,B,C,D dan E}
uses crt;
{deklarasi}
18
Var n: char ;
{algoritma}
Begin
Write ('Nilai anda (A,B,C,D, atau E): '); readln (n);
Case (n) Of
'A': Writeln('Nilai anda Sangat Baik');
'B': Writeln('Nilai anda Baik');
'C': Writeln('Nilai anda Cukup');
'D': Writeln('Nilai anda Kurang');
'E': Writeln('Nilai anda Sangat Kurang');
else
writeln('Nilai yang anda masukan salah,');
{kondisi jika nilai yang dimasukan bukan karakter A,B,C,D,
atau E}
End;
End.
Bila program diatas dijalan maka akan didapatkan hasil
Nilai anda (A,B,C,D, atau E): (di input, misalkan “B”)
Nilai anda baik
3. Pengulangan
Struktur pengulangan bertujuan untuk mengulang statement atau blok
statement berulang kali sesuai sejumlah yang ditentukan, sampai kondisi
terpenuhi dan pengulangan berhenti dalam bahasa pemrograman pascal terdapat
beberapa kontruksi yaitu pernyataan for, while – do,.dan repeat – until.
Kontruksi for digunakan untuk sejumlah kali yang tentukan. Stetmen for
terbagi dalam tiga macam yaitu for positif, dan for negatif. Berikut strukturstruktur
stetmen for :
· For Positif
for pencacah := a to b do
pernyataan ;
· For Negatif
for pencacah := a to b do
19
pernyataan ;
Kontruksi while – do digunakan untuk melakukan pengulangan pada rentang
kondisi yang ditetntukan, dalam bentuk pernyataan :
while kondisi do pernyataan ;
Sedangkan kontruksi repeat – until digunakan untuk mengulang sampai kondisi
bernilai benar, dengan bentik pernyataan :
while pernyataan until kondisi;
contoh for positif :
program for_positif;
{contoh programfor positif mengulang kalimat sampai n kali}
uses crt;
{deklarasai}
var
n: integer; {jumlah pengulangan}
i: integer;
o: string ; {kalimat yang akan diulang}
{algoritma}
begin
write('Kalimat yang akan diulang : '); readln (o);
write('Banyaknya pengulangan : '); readln (n);
write('');
for i :=1 to N do
writeln(o);
end.
Bila program diatas di jalankan maka akan mendapatkan hasil
Kalimat yang akan di ulang : (di input, misalkan “saya memang ganteng”)
Banyak perulangan : (di input , misalkan 4)
Saya memang ganteng
Saya memang ganteng
Saya memang ganteng
Saya memang ganteng
Contoh for negative :
program for_negatif;
20
{contoh for negatif mengurutkan angka sampa nilainya 1}
Uses Crt;
{deklarasi}
Var i : Integer;
{algoritma}
Begin
write('Angka yang akan diurutkan mulai dari: '); readln(i);
For i := (i-1) DownTo 1 Do Write (i);
End.
Bila program tersebut dijalankan maka akan mendapatkan
Angka yang akan diurutkan mulai dari: (di input misalkan 10)
10 9 8 7 6 5 4 3 2 1
Contoh while – do :
program while_do;
{contoh while do mengurutkan angka sebanyak n kali}
Uses Crt;
{deklarasi}
Var i,n : integer;
{algoritma}
Begin
write ('mulai urutkan dari angka : '); read (i);
write ('diurutkan sampai dengan angka : '); readln (n);
While i <> (n+1) {jika nilai sama program akan berakhir}
do
Begin
Writeln (i);
Inc (i); { sama dengan i:=i+1 }
End;
End.
Bila preogram diatas dijalankan maka akan mendapatkan hasil
mulai urutkan dari angka : ( di input, misalkan 2)
diurutkan sampai angka : ( di input, misalkan 5)
2
3
21
4
5
Contoh repeat – until
program repeat_until;
{ contoh repeat until mengulang pengurutan sampai i=n,}
uses crt ;
{deklarasi}
Var
I,n : integer;
{dekskripsi}
Begin
write ('mulai mengurutkan setelah angka : '); readln (i);
write ('berhenti sampai angka : '); readln (n);
Repeat
i:= i+1;
Writeln (i); {memulai mengurutkan dari i}
Until i=(n); {program akan sebelm n}
End.
Bila program diatas dijalankankan maka akan mendapat hasil
mulai mengurutkan setelah angka : (di iput misalkan 4)
berhenti sampai angka : (di iput misalkan 10)
5
6
7
8
9
10
Tidak ada komentar:
Posting Komentar