Kasus Penerapan Algoritma pada Turbo Pas
TUGAS MANDIRI
Contoh Kasus Penerapan Algoritma
Mata Kuliah: Logika Informatika dan Algoritma
Nama Mahasiswa : Zaenal Abidin
NIM
: 131510031
Kode Kelas
: 131-IS01T-M1
Dosen
: M. Rasid Ridho S.Kom., M.SI.
UNIVERSITAS PUTERA BATAM
2014
1
KATA PENGANTAR
Logika dan algoritma merupakan mata kuliah yang mengajarkan tentang
bagaimana cara menyelesaikan suatu masalah berdasarkan tahapan-tahapan yang
sistematis dan logis. Suatu algoritma dapat dibuktikan kebenarannya melalui
komputer setelah algoritma tersebut ditranslasikan kedalam bahasa pemrograman.
Bahasa pemrograman yang digunakan dimakalah ini menggunakan Turbo Pascal
1.5 yang berjalan di system operasi windows.
Makalah ini membahas secara ringkas tentang algoritma dan pascal
sebagai dasar bagi pemula yang mempelajari pemrograman komputer.
Akhir kata, penulis mengucapkan puji syukur Alhamdulillah makalah ini
bisa diselesaikan dengan baik, walaupun masih banyak kekurangan disana-sini
yang masih diperlukan perbaikan. Oleh karena itu penulis menerima masukan dari
dosen pengajar mata kuliah algoritma maupun dari teman-teman mahasiswa yang
membeca makalah ini. Mudah-mudahan makalah ini dapat bermanfaat bagi
penulis sendiri maupun bagi yang membacanya.
Wassalam
Batam, Januari,2014
Penulis
2
DAFTAR ISI
KATA PENGANTAR.................................................................................. ii
DAFTAR ISI............................................................................................ iii
BAB I...................................................................................................... 1
PENDAHULUAN...................................................................................... 1
BAB II..................................................................................................... 3
PEMBAHASAN........................................................................................ 3
II.1. PENGERTIAN LOGIKA DAN ALGORITMA..........................................3
II.2. BAHASA PASCAL............................................................................ 6
BAB III.................................................................................................. 14
STRUKTUR PROGRAM..........................................................................14
III.1. PEMILIHAN................................................................................. 14
III.2. PROSEDUR.................................................................................. 23
III. 3. LARIK........................................................................................ 29
III. 4. PENCARIAN................................................................................ 31
III.5. REKURSIF................................................................................... 35
BAB IV.................................................................................................. 39
KESIMPULAN....................................................................................... 39
DAFTAR PUSTAKA................................................................................ 40
3
BAB I
PENDAHULUAN
I.1. Pengertian Bahasa pemrograman
Bahasa pemrograman adalah bahasa formal yang dirancang untuk
mengkomunikasiakan instruksi dengan sebuah mesin, terutama komputer. Bahasa
pemrograman
dapat
digunakan
untuk
membuat
program
yang
dapat
mengendalikan perilaku mesin dan untuk mengekspresikan algoritma secara tepat.
Bahasa pemrograman mendahului menemuan komputer, dan digunakan
untuk mengarahkan perilaku mesin seperti halnya mesin tenun dan pemutar piano.
Ribuan bahasa pemrograman yang berbeda telah dibuat, terutama dibidang
komputer. Banyak bahasa pemrograman membutuhkan perhitungan yang akan
ditentukan dalam bentuk imperatif (yaitu sebagai urutan operasi dalam
melaksanakan perintah), sedangkan bahasa yang lain menggunakan bentuk lain
dari spesifikasi program sebagai bentuk deklaratif (yaitu menentukan hasil yang
diinginkan , bukan bagaimana cara mencapainya).
Pemrograman dalam pengertian luas meliputi seluruh kegiatan yang
tercakup dalam pembuatan program, termasuk analisis kebutuhan (requirement's
analysis) dan keseluruhan tahapan dalam perencanaan (planning), perancangan
(design) dan pewujudannya (implementation).
Dalam
pengertian
yang
lebih
sempit,
pemrograman
merupakan
pengkodean (coding atau program writing/penulisan program) dan pengujiannya
(testing) berdasrkan rancangan tertentu. Pemahaman yang lebih sempit ini sering
digunakan
dalam
pembuatan
program-program
terapan
komersial
yang
membedakan antara system analyst yang bertanggung jawab dalam menganalisa
kebutuhan, perencanaan dan perancangan program dengan programer yang
bertugas membuat kode program dan mengujinya.
1
2
Deskripsi bahasa pemrograman biasanya dibagi menjadi dua komponen
syntax (bentuk) dan semantic (makna). Beberapa bahasa yang didefinisikan oleh
dokumen spesifikasi (misalnya, pada bahasa c dan pascal ditentukan oleh standar
ISO), sedangkan bahasa yang lain, seperti Perl5, mamiliki implementasi dominan
yang digunakan sebagai referensi.
I.2. Pembahasan
Adapun bahasan pada makalah ini adalah sebagai berikut ;
a)
b)
c)
d)
e)
f)
g)
Menjelaskan apa itu Algoritma.
Menjelaskan bahasa pemrograman Pascal.
Membahas struktur dasar Pemilihan
Membahas struktur Prosedur
Membahas struktur Larik
Membahas struktur Pencarian
Membahas struktur Rekursi
I.3. Tujuan
Adapun tujuan pembuatan makalah ini adalah untuk :
a) Sebagai bahan pembelajaran untuk pembaca dan penulis sendiri.
b) Sebagai syarat untuk memperoleh nilai tugas mandiri penulis.
BAB II
PEMBAHASAN
II.1. PENGERTIAN LOGIKA DAN ALGORITMA
Logika berasal dari bahasa Yunani yaitu logos yang berarti ilmu. Logika
dapat diartikan ilmu yang mengajarkan cara berfikir untuk melakukan aksi dengan
tujuan tertentu.
Algoritma berasal dari nama seorang ilmuan Arab yang bernama Abu
Ja’far Muhammad Ibnu Musa Alkhuwarizmi penulis buku Al Jabar Wal
Muqabala ( buku pemugaran dan pengurangan ). Kata Alkhuwarizmi dibaca
orang barat menjadi algorism yang kemudian lambat laun menjadi Algorithm
diserap kedalam bahasa Indonesia menjadi Algoritma. Algoritma dapat diartikan
urutan langkah-langkah
( instruksi-instruksi / aksi-aksi ) terbatas untuk
menyelesaikan suatu masalah.
Dari pengertian diatas maka dapat diartikan Logika dan Algoritma adalah
ilmu yang mempelajari cara penyelesaian masalah berdasarkan langkah-langkah
terbatas yang logis dan sistematis dengan tujuan tertentu.
Contoh Algoritma:
Permasalahan:
Diberiakan dua gelas (A dan B), gelas A berisi kopi dan gelas B berisi susu.
Pertukarkan isi gelas tersebut sehingga menghasilkan gelas A yang semula berisi
kopi menjadi susu, dan gelas B semula berisi susu menjadi berisi kopi.
Penyelesaian:
Untuk mempertukarkan isi gelas dengan benar, maka diperlukan gelas tambahan
yang kita namakan gelas C sebagai penampungan sementara. Berikut
Algoritmanya:
3
4
4
Algoritma_Tukar_Isi _Gelas
Ada dua gelas (gelas A dan B), gelas A berisi kopi dan gelas B berisi susu.
Pertukarkan isi kedua gelas tersebut sehingga gelas A yang semula berisi kopi
menjadi berisi susu dan gelas B sebaliknya.
Deskripsi:
1. Tuangkan gelas A ke dalam gelas C
2. Tuangakn gelas B ke dalam gelas A
3. Tuangakn gelas C ke dalam gelas B
Hasil akhir dari Algoritma pertukaran gelas menjadi:
A : berisi susu
B : berisi kopi
A. Syarat-Syarat Algoritma
Syarat-syarat Algoritma menurut Donald E.Knuth, yaitu :
1. Finiteness (Keterbatasan)
Algoritma harus berakhir setelah melakukan rangkaian proses.
2. Defiteness (Kepastian)
Setiap langkah Algoritma harus didefiniskan dengan tepat dan tidak
menimbulkan makna ganda.
3. Input (Masukan)
Sebuah Algoritma memiliki nol atau lebih masukan (input) yang diberikan
kepada Algoritma sebelum dijalankan.
4. Output (Keluaran)
Setiap Algoritma memberikan satu atau beberapa hasil keluaran.
5. Effectiveness (Efektifitas)
Langkah-langkah Algoritma dikerjakan dalam waktu yang “wajar”.
B. Struktur Dasar Algoritma
Suatu Algoritma dapat terdiri dari tiga struktur dasar, yaitu runtunan,
pemilihan dan pengulangan. Berikut penjelasan ringkas dari ketiga struktur
tersebut:
5
1. Runtunan
Runtunan yaitu satu atau lebih instruksi yang dikerjakan secara berurutan
penulisannya. Urutan dari instruksi menentukan hasil akhir dari suatu
Algoritma. Bila urutan penulisan berubah mungkin juga hasil akhirnya
berubah.
2. Pemilihan
Pemilihan yaitu instruksi yang dikerjakan dengan kondisi tertentu. Kondisi
adalah persyaratan yang dapat bernilai benar atau salah. Instruksi hanya
dilaksanakan apabila kondidisi bernilai benar, sebaliknya apabila kondisi
salah maka instruksi tidak dilaksanakan. Pernyataan kondisi menggunakan
stattment IF (jika) dan THEN (maka).
3. Pengulangan
Pengulangan merpakan pengulangan sejumlah aksi yang sama sebanyak
jumlah yang ditentukan atau sesuai dengan kondisi yang diinginkan.
Beberapa statement pengulangan yaitu:
For…To…Do / For…Down…To…Do
While…do
Repeat…Until
C. Penulisan Algoritma
Algoritma dapat ditulis dengan cara berikut :
1. Menggunakan bahasa Natural.
2. Menggunakan Kode Semu (pseudo code). Teknik penulisan yang
mendekati bahasa pemrograman tertentu.
3. Menggunakan diagram alir (flow chart). Teknik penyajian dengan
menggunakan symbol-simbol.
Dari ketiga cara diatas untuk mempermudah translasi teks Algoritma kedalam teks
program sebaiknya ditulis dalam bentuk notasi yang mendekati bahasa
pemrograman (pseudo code).
D. Teks Algoritma
Teks Algoritma tersusun menjadi tiga bagian, yaitu:
1. Bagian Kepala
6
2. Bagian Deklarasi
3. Bagian Deskripsi
Setiap bagian disertai dengan penjelasan tentang maksud penulisan Teks.
Penjelasan ditulisdalam krung seperti ini {
}.
Algoritma Nama_algoritma
{ penjelasan singkat uraian yang dilakukan oleh algoritma }
Deklarasi
{ semua nama yang digunakan, meliputi nama-nama : tipe, konstanta, variable,
juga nama subprogram dinyatakan dibagian ini }.
Deskripsi
{ semua langkah penyelesaian dituliskan disini }
Contoh :
Algoritma Cetak_ucapan
{ mencetak ucapan “Selamat Belajar” dan di ikuti dengan nama orang }
Deklarasi
Nama : string;
Deskripsi
Nama “Ahmad”
Write(‘Selama Belajar’,nama)
II.2. BAHASA PASCAL
A. Pengertian
Pascal merupakan bahasa pemrograman tingkat tinggi yang dikembangkan
dari bahasa ALGOL 60 yang diperuntukan untuk sains dan komputasi. Pada tahun
1960 beberapa ahli komputer mengembangkan bahasa ALGOL, salah satunya
adalah Dr.Niklaus Wirth dari Swiss Federal Institute of Technology (ETH-Zurich),
yang merupakan anggota group ALGOL. Nama PASCAL diambil dari nama
seorang filsuf dan ahli matematika dari Perancis. Pascal adalah bahasa
pemrograman terstruktur yang membedakan blok-blok pendeklarasian tipe,
variable dan penulisa kode program. Pascal mempunyai keunggulan untuk
7
dipelajari oleh
pemula karena struktur yang jelas serta tidak bersifat case
sensitive (tidak membedakan huruf besar dan kecil). TPW 1.5 merupakan bahasa
pemrograman Pascal yang berjalan dibawah system operasi Windows.
B. PASCAL Sebagai Bahasa Terstrutur
Sebagai bahasa terstruktur, PASCAL mempunyai ciri-ciri sebagai berikut :
1. Berurutan
Susunan dari kode-kode dalam teks Pascal harus ditulis secara urut dari
atas, pernyataan-pernyataan yang ditulis lebih awal akan dieksekusi lebih
dulu. Oleh karena itu, suatu pernyataan yang menyangkut suatu variable
didalam program, maka variable itu harus terdefinisi dahulu sebelumnya.
Hal ini terutama menyangkut pada pemanggilan subprogram oleh
subprogram yang lain.
2. Blok dengan batas-batas yang jelas.
Pascal memberikan pembatas yang jelas pada tiap-tiap blok, seperti pada
blok program utama, subprogram, struktur control (pengulangan /
pemilihan), dll. Pemakaian kata kunci begin untuk mengawali operasi
pada blok dan end untuk menutupnya memudahkan programer menyusun
programnya dengan mudah.
Seperti contoh :
if X > 0 then
begin write (‘Bilangan Positif’);
writeln (‘Program selesai’);
end;
3. Satu pintu masuk dan satu pintu keluar peda blok pemilihan dan
penglangan. Contoh diatas juga mengilustrasikan pintu masuk tunggal
pada satu blok pemilihan yaitu suatu test logika X > 0, dengan pintu
keluaran yang satu pula (satu disini maksudnya bukan dua baris perintah
output tapi suatu paket perintah yang dirangkai dengan begin…end.
C. Bakuan PASCAL
8
Dibakukan oleh ISO pada tahun 1983 dan dikembangkan dalam beberapa
versi, diantaranya : USCD PASCAL, MS PASCAL,TURBO PASCAL dll. Dengan
semakin berkembangnya dalam teknologi komputasi, Pascal dimanfaatkan untuk
pengembangan DELPHI (berasal dari nama suatu kota di masa Yunani kuno),
suatu bahasa pemrograman visual yang menojolakan pada efek grafis dan
orientasi pada objek-objek yang siap dipakai, karena memiliki Visual Component
Library (VCL).
D. Struktur Bahasa PASCAL Secara Umum
Pascal mempunyai struktur sebagai berikut :
1. Judul Program
2. Bagian Deklarasi
a)
b)
c)
d)
e)
Deklarasi tipe data (TYPE)
Deklarasi Variable (VAR)
Deklarasi konstanta (CONST)
Deklarasi label (LABEL)
Deklarasi sub-program ( PROCEDURE dan FUNCTION)
3. Bagian Program Utama Perintah-perintah
Teks Pascal setidaknya memiliki bagia Judul Program, bagian Deklarasi,
dan bagian Program Utama yang berupa perintah-perintah. Sedangkan
untuk bagian deklarasi menyesuaikan dengan isi dari program itu sendiri.
Sebagai contoh:
Program TAMBAH_00; {menjumalahkan dua buah bilangan yang nilainya
diberikan dalam perintah}
Var X,Y,Z : integer; {deklarasi variable X,Y,dan Z sebagai bilangan bulat}
BEGIN {program utama dimulai}
X:= 50; {perintah untuk memberi nilai 50 pada var X}
Y:= 25; {perintah intuk memberi nilai 25 pada var Y}
Z:= X + Y; {perintah untuk menjumlahkan X dan Y serta menyimpan hasilnya
ke Z}
END. {akhir program utama}
Pada contoh ini nilai X dan Y tidak bisa sembarang, karena sudah
didefinisikan sebelumnya dalam program. Agar nilai X dan Y bisa bebas
ditentukan, nilai X dan Y dibaca dari default input.
Program TAMBAH_01; {menjumlahkan dua buah bilangan yang dibaca dari
default input}
9
Var X,Y,Z : integer; {deklarasi variable X,Y,dan Z sebagai bilangan bulat}
BEGIN {program utama dimulai}
Read(X); {membaca nilai X dari keyboard}
Read(Y); {membaca nilai Y dari keyboard}
Z:= X + Y; {perintah untuk menjumlahkan X dan Y serta menyimpan hasilnya
ke Z}
Write(Z); {menyajikan Z kelayar monitor}
END. {akhir program utama}
E. Jenis Identifier
1. Identifier umum
Merupakan identifier yang didefinisikan sendiri oleh pemrogram. Pemrogram
mempunyai kebebasan untuk menentukan identifiernya, dengan syarat nama
tersebut tidak sama dengan identifier standard dan reserved word yang akan
dibahas lebih lanjut. Hal ini untuk mencegah kesalahan yang bisa timbul
akibat tumpang tindih identifier dalam program.
2. Identifier standar (Baku)
Merupakan identifier yang didefinisikan oleh pembuat compiler Pascal.
Biasanya membuat compiler menyediakan suatu library yang sudah ada
didalam compiler. Library berisi berbagai prosedur, fungsi atau unit yang siap
pakai. Misalnya Turbo Pascal Windows 1.5 memiliki suatu unit untuk
memproses output yaitu wincrt, gotoxy, yang dengan mudah bisa dipakai oleh
programer didalam menuliskan kode-kode programnya. Dinamai identifier
standar karena suatu compiler tidak harus memilikinya, masing-masing
compiler dimungkinkan mempunyai identifier berbeda untuk suatu tugas yang
hampir sama. Misalnya Turbo Pascal versi DOS menggunakan crt untuk
melakukan fungsi yang sama dengan wincrt (TPW 1.5).
Beberapa identifier standar yang dimiliki oleh compiler-kompiler pascal
antara lain :
abs arctan Boolean char cos dispose eof eoln exp false input integer in maxint new odd ord
output pack page pred read readln real reset rewrite round sin sqr sqrt succ text true trunk write
writeln
3. Identifier “Reserved Word”
10
Yaitu yang sudah didefinisikan dan digunakan oleh bahasa Pascal sendiri (kita
tidak bisa menamai identifier kita dengan kata ini).
and array begin case const div do downto else end file forward function goto if in label mod nil
not of or packed procedure program record repeat set then to type until var while with
F. Tipe Data
Tipe data yang disedikan oleh Pascal terbagi menjadi dua meliputi :
Tipe Data Sederhana
Tipe Data Terstruktur
1. Tipe Data Sederhana
Merupakan data dasar yang seering dipakai oleh program,meliputi : integer,
real, char, dan Boolean. Untuk data integer dan real masing-masing terbagi
menjadi beberapa katagori.
a. Bilangan Integer
Merupakan tipe data berupa bilangan bulat, terbagi atas beberapa katagori
seperti terlihat dalam tabel 1 menunjukan jenis data ukuran dalam memori
dan rentang nilainya.
Tipe Data
Byte
Shortint
Integer
Word
Longint
Ukuran Tempat
1 Byte
1 Byte
2 Bytes
2 Bytes
4 Bytes
Rentang Nilai
0 s/d + 225
-28 s/d + 127
-32768 s/d 32767
0 s/d 65535
-2147483648 s/d 2147483647
Tabel 1. Tipe Data bilangan integer
b. Bilangan Real
Bilangan real atau nyata merupakan jenis bilangan pecahan, dapat
dituliskan secara biasa atau model scientific. Contoh bilangan Real :
23,435 -2,55 0,0 32,997E+11, dimana E merupakan symbol perpangkatan
sepuluh. Jadi 452.13 mempunyai nilai sama dengan 4.5213E2.
Penggolongan tipe data real dapat dilihat pada tabel 2.
Tipe Data
Real
Single
Ukuran Tempat
6 Bytes
4 Bytes
Rentang Nilai
2.9 x 10 -39 s/d 1.7 x 1038
1.5 x 1045 s/d 3.4 x 1038
11
Double
Extended
Comp
8 Bytes
10 Bytes
8 Bytes
5.0 x 10 -324 s/d 1.7 x 10308
3.4 x 10 -4932 s/d 1.1 x 104932
-9.2 x 1018 s/d 9.2 x 1018
Tabel 2 Tipe Data Bilangan real
c. Char
Tipe data ini menyimpan karakter yang diketikan dari keyboard, memiliki
266 macam yang terdapat dalam tabel ASCII ( American Standard Code
for Information Interchange). Contoh ; ‘a’ , ’B’ , ’+’, dsb. Yang perlu
diingat bahwa dalam menuliskannya harus memakai tanda kutip tunggal.
Jenis data ini memerlukan alokasi memori sebesar 1(satu) byte untuk
masing-masing data.
d. Tipe Data Boolean
Merupakan tipe data logika, yang berisi dua kemungkinan nilai : TRUE
(benar) dan FALSE (salah). TPW memiliki tiga jenis ini yaitu : Boolean,
WordBool, dan LogBool. Tipe boolean memakai memori paling kecil,
sedangkan WorBool dan LogBool dipakai untuk menulis program yang
sesuai dengan lingkungan windows.
Tipe Data
Boolean
WordBool
IongBool
Ukuran Tempat
1 Byte
2 Bytes
3 Bytes
Tabel 3. Tipe Data Boolean
2. Tipe Data Terstruktur
Tipe ini terdiri atas : array, record, set, dan file. String adalah tipe data jenis
array, Karena string memiliki kekhasan tersendiri sebagai array dari karakter.
a. Tipe Data String
Merupakan suatu data yang menyimpan array (larik), sebagai contoh
‘ABCDF’ merupakan sebuah konstanta string yang berisikan 6 byte
karakter. Ukuran tempat untuk tipe data ini adalah 2 s/d 256 byte, dengan
jumlah elemen 1 s/d 225. String dideklarasikan dengan string [konstanta]
atau string. Bila ukuran string tidak didefinisikan maka akan banyak
memakan ruang, karena ukuran string menyesuaikan dengan defaultnya.
Misalkan: var kata : string [20]; atau var kata : string. Karena string
merupakan array dari karakter.
b. Tipe Data Set
12
Sebuah set merupakan suatu himpunan yang berisi nilai (anggota). Set
merupakan tipe data yang khusus untuk Pascal. Set dalam pemrograman
sangat mirip dengan himpunan dalam ilmu matematika,
Contoh :
A = {1,2,3,4,5}
Syntax : set of contoh:
Type digits = set of 0…9;
Letters = set of ‘A’…’Z’;
Type Day = (Sun,Mon,Tue,Thu,Fri,Sat);
G. Operator
Beberapa operator yang disediakan oleh PASCAL :
1. Aritmatika
2. Boolean
3. Relasional
4.
Set
Operator
+
*
/
div
mod
Operasi
Penjumlahan
Pengurangan
Perkalian
Pembagian
Pembagian
Sisa Pembagian
Tipe Operand
Integer, Real
Integer, Real
Integer, Real
Integer, Real
Integer, Integer
Integer, Integer
Tipe Hasil Operasi
Integer, Real
Integer, Real
Integer, Real
Integer, Real
Integer
Integer
Tabel 4. Aritmetika Pascal
Operator
Not
And
Or
Xor
Operasi
Negasi
Logika ‘and’
Logika ‘or’
Logika ‘xor’
Tipe Operand
Boolean
Boolean
Boolean
Boolean
Tabel 5. Operator Boolean Pascal
Tipe Hasil Operasi
Boolean
Boolean
Boolean
Boolean
13
BAB III
STRUKTUR PROGRAM
III.1. PEMILIHAN
Didalam suatu program seringkali terdapat instruksi yang hanya bisa
dikerjakan jika ia memenuhi suatu persyaratan tertentu. Oleh karena itu komputer
tidak lagi mengerjakan instruksi secara sekuensial melainkan berdasarkan syarat
tertentu yang dipenuhi. Struktur pemilihan memungkinkan kita melakukan aksi
jika suatu syarat dipenuhi. Didalam makalah ini struktur pemilihan yang akan
dibahas adalah IF-THEN, IF-THEN ELSE dan CASE-OF, sebagai berikut :
A.Pemilihan Dengan Struktur IF-THEN
Notasi algoritmik untuk satu kasus adalah dengan menggunakan
konstruksi
IF-THEN (jika-maka) dalam bentuk pernyataan :
if kondisi then
aksi
endif
pernyataan diatas berarti bahwa aksi hanya dilaksanakan bila konsisi bernilai
benar (true). Bila kondisi bernilai salah (false), tidak ada aksi apapun yang
dikerjakan. Kata endif sengaja kita tambahkan untuk mempertegas awal dan akhir
struktur
IF-THEN. Aksi yang dikerjakan bisa satu, dua, atau lebih. Bagan alir
pada gambarmembantu memperlihatkan visualisasi pemilihan dengan hanya satu
kasus ini.
14
15
kondisi
salah
benar
aksi
end
Bagan alir yang memperlihatkan pemilihan dengan hanya dengan satu kasus
Contoh :
Berikut kita akan membuat program mencetak bilangan ganjil menggunakan
statement if dengan bahasa Pascal.
16
Setelah dijalankan maka hasil programnya akan terlihat seperti dibawah.
B. Pemilihan Dengan Struktur IF-THEN-ELSE
Konstruksi IF-THEN hanya menyediakan satu alternative aksi jika suatu
persyaratan (kondisi) dipenuhi. Kadang-kadang kita perlu memilih melakukan
aksi alternative jika suatu kondisi tidak memenuhi. Jadi, ada dua kasus, tetapi
hanya salah satu dari keduanya yang harus dipilih satu untuk dikerjakan. Notasi
algoritmik untuk masalah dengan dua buah kasus adalah dengan menggunakan
konstruksi IF-THEN-ELSE( jika-maka-kalau tidak) :
if kondisi then
aksi1
else
aksi2
endif
Pernyataan diatas berarti bahwa
aksi1
dikerjakan jika kondisi bernilai benar,
sebaliknya jika kondisi bernilai salah, maka
aksi2
yang akan dilaksanakan.
Perhatikanlah bahwa else menyatakan ingkaran (negation) dari kondisi. Bagan alir
pada gambar dibawah membantu memperlihatkan visualisasi pemilihan dengan
dua kasus-kasus.
17
Benar
kondisi
aksi1
Salah
aksi2
end
Bagan alir yang memperlihatkan pemilihan dengan dua kasus.
Contoh :
Berikut kita akan membuat program Password menggunakan statement if then else
sebagai berikut.
18
Jika password yang dimasukan “udin” maka akan menghasilka output sebagai berikut
Jika password yang dimasukan bukan “udin” maka hasilnya akan tampak seperti berikut.
C. Pemilihan Dengan Tiga Kasus Atau Lebih
Masalah yang mempunyai tiga buah kasus atau lebih dapat dianalisis
dengan
konstruksi
IF-THEN-ELSE
bertingkat-tingkat.
memperlihatkan bagan alir untuk masalah dengan 3 kasus.
Tiga kasus :
if kondisi : then
aksi :
Gambar
dibawah
19
else
if kondisi : then
aksi :
else
if kondisi : then
aksi :
endif
endif
endif
benar
kondisi 1
aksi1
salah
benar
salah
kondisi 21
aksi2
aksi3
end
end
Bagan alir yang memperlihatkan pemilihan dengan tiga kasus.
20
Berikut adalah contoh programnya mencetak tulisan Bilangan Positif atau
Bilangan Negatif atau Nol:
Bila kita menginputkan data angka 8 maka hasil programnya akan tampak seperti
dibawah.
21
Sedangkan apabila kita menginputkan angka -23 maka hasilnya akan seperti
dibawah.
D. Pemilihan Dengan Struktur Case
Untuk masalah dengan dua kasus atau lebih, kontruksi CASE dapat
menyederhanakan
penulisan
IF-THEN-ELSE
yang
bertingkat-tingkat
sebagaimana telah kita bahas diatas. Berikut disajikan struktur CASE :
case ekspresi
nilai 1
nilai 2
nilai 3
aksi1
:
aksi2
:
:
aksi3
:
aksin
.
.
nilai n
Otherwise :
aksi x
endcase
Contoh :
Kita akan membuat program mencari mata kuliah dengan memasukan kode
kelasnya, adalah sebagai berikut :
22
Apabila kita menginputkan kode kelas 114 pada piranti masukannya maka hasilnya akan
tampak seperti berikut.
Sedangkan apabila kita menginputkan kode kelas 210 pada piranti masukannya maka
hasilnya akan tampak seperti berikut.
23
III.2. PROSEDUR
Prosedur adalah program terpisah atau subprogram yang dibuat dengan
tujuan untuk menyederhanakan program. Prosedur ditulis dalam satu blok
program yang cukup ditulis satu kali tetapi dapat dipanggil berulang kali.
Didalam prosedur ada yang disebut Parameter yaitu nama-nama peubah
yang dideklarasikan pada bagian header prosedur. Parameter terbagi dua menjadi
Parameter Aktual adalah parameter yang disertakan pada waktu pemanggilan
prosedur, sedangkan Parameter Formal adalah parameter yang dideklarasikan
didalam bagian header prosedur itu sendiri.
Setiap Prosedur program Pascal harus mengikuti struktur dasarnya. Berikut adalah
sruktur dasar prosedur yang harus diikuit .
PROGRAM NamaProgram;
VAR
NamaVariable : TipeVariable
NamaVariable : TipeVariable
…
PROCEDURE NamaProsedur;
Variable jika dibutuhkan
BEGIN
Code-code program;
END;
24
…tambah prosedur jika dibutuhkan…
BEGIN
Blok program utama. Ini harus kecil dan semua pekerjaan harus
diserahkan kepada prosedur. Disini sering berisi pengulangan dan
pemanggilan prosedur yang bersesuain.
END.
Berikut contoh program menghitung luas segitiga dengan prosedur tanpa
parameter.
Apabila kita masukan nilai 3 pada inputan banyaknya segitiga maka hasilnya akan
tampak seperti ini.
25
Didalam prosedur terdapat 3 parameter yaitu :
A. Prosedur dengan Parameter Masukan
Yaitu parameter yang nilainya berlaku sebagai masukan untuk prosedur.
Pada parameter masukan, nilai parameter actual diisikan kedalam badan prosedur
yang besangkutan.
Berikut disajikan contoh program menghitung luas lingkaran dengan prosedur
parameter masukan.
26
Dan bila kita mengisikan nilai 3 pada “Banyaknya Lingkaran” dan mengisikan
sembarang nilai pada jari-jarinya, maka hasilnya akan tampak sebagai berikut.
B. Prosedur dengan Perameter Keluaran
Yaitu parameter yang menampung keluaran yang dihasilkan oleh prosedur.
Prosedur mungkin menghasilkan satu atau lebih keluaran yang akan digunakan
oleh program pemanggil. Jika seperti ini kasusnya, maka nilai keluaran tersebut
27
ditampung dalam parameter keluaran. Ketika prosedur yang mengandung
parameter keluaran dipanggil, maka parameter actual menggantikan nama
parameter formal yang bersesuaian didalam prosedur.
Berikut diberikan contoh program menghitung luas lingkaran dengan
menggunakan prosedur parameter keluaran.
Dan hasil programnya akan seperti dibawah ini.
28
C. Prosedur dengan Parameter Masukan / Keluaran
Adalah parameter yang berfungsi sebagai masukan sekaligus keluaran bagi
prosedur tersebut.
Berikut disajikan contoh program rata-rata nilai ujian dengan parameter masukan /
keluaran.
29
Dengan mengisikan banyaknya mata pelajaran dan nilai tiap mata kuliah tersebut,
maka hasil programnya seperti tampak dibawah ini.
III. 3. LARIK
Larik / Array adalah tipe data terstruktur yang terdiri dari sejumlah
komponen-komponen yang bertipe sama (homogen). Komponen-komponen
tersebut disebut sebagai komponen tipe, larik mempunyai komponen yang
jumlahnya tetap. Banyaknya komponen dalam larik ditunjukan oleh suatu indeks,
dimana tiap komponen di larik dapat diakses dengan menunjukan nilai indeksnya
atau subscript. Larik dapat bertipe data sederhana seperti byte, word, integer, real,
boolean, char, string dan tipe data scalar atau subrange. Tipe larik mengartikan isi
dari larik atau komponen-komponennya mempunyai nilai dengan tipe data
tersebut.
Sebagai contoh kita akan membuat program nilai mata kuliah dengan membaca
tiap nilainya yang diinputkan pada keyboard, mencetaknya dan menghitung ratarata nilainya. Berikut kode programnya :
30
Dan jika kita memasukan nilai tujuh
pada banyaknya mata kuliah serta
menginputkan masing-masing nilainya. Hasil programnya seperti berikut :
31
III. 4. PENCARIAN
Pencarian / Searching adalah menemukan nilai atau data tertentu didalam
sekumpulan data yang bertipe sama baik tipe dasar maupun bertipe bentukan.
Untuk mengubah atau meng-update data tertentu langkah pertama yang
harus dilakukan adalah mencari keberadaan data tersebut didalam kumpulanya.
Spesifikasi masalah pencarian
Bila kita akan mencari nilai x didalam larik L, maka hasil / keluaran dari
pencarian dapat bermacam-macam:
1. Pencariannya hanya untuk memeriksa keberadaan x.
Write (‘ditemukan’) atau
Write (‘tidak ditemukan’)
2. Hasil pencarian adalah indeks elemen larik.
L
5
7
1
9
2
1
3
4
10
51
5
6
3
7
Jika x = 10 maka indeks = 5, jika x = 4 maka indeks = -1
3. Hasil pencarian Boolean yang menyatakan status hasil pencarian.
Jika x = 10 maka ketemu = true,
Jika x = 4 maka ketemu = false
Ada dua macam pencarian :
1. Algoritma pencarian beruntun ( sequential search )
2. Algiritma pencarian bagi dua ( binary search )
A. Algoritma Pencarian Beruntun / Squential Search
2
8
32
Cara kerjanya adalah membandingkan setiap elemen larik satu persatu
secara beruntun mulai dari elemen pertama sampai elemen ditemukan atau seluruh
elemen sudah diperiksa.
Berikut ini contoh program prosedur pencarian dengan hasil Boolean,
bernilai true jika ditemukan dan false jika tidak ditemukan.
Bila kita memasukan jumlah elemen larik dengan 8 dan memasukan nilai tiap
indeksnya serta memasukan nilai 19 pada nilai yang akan dicari maka hasil
programnya adalah sebagai berikut;
33
B. Algoritma Pencarian Bagi Dua
Algoritma yang paling Efisien adalah algoritma bagi dua atau pencarian
biner atau binary search. Algoritma ini digunakan untuk kebutuhan pencarian
dengan waktu yang cepat.
Kanan
L
5
7
1
Kiri
9
2
1
3
4
10
51
5
6
Berikut diberikan contoh kode program prosedur pencarian bagi dua.
3
7
2
8
34
Dan apabila kita memasukan 7 pada jumlah data juga memasukan nilai ditiap-tiap
indeksnya serta memasukan angka 22 pada angka yang akan dicari, maka hasil
programnya akan tampak sebagai berikut.
35
III.5. REKURSIF
Menurut Niklaus Wirth definisi rekursif yaitu “ An object is said be
recursive if it partially consist of is defines in terms of itself “.
Rekursif disusun oleh dua bagian :
1. Basis
Berisi kasus yang terdefinisi eksplsit, bagian ini yang menghentikan
rekursif.
2. Rekurens
Mendefinisikan objek dalam terminology dirinya sendiri.
Contoh algoritma fungsi rekursif
Subprogram bisa memanggil dirinya sendiri (Recursive Call) dengan catatan
bahwa memilki syarat penghentian operasi (iterasi), sehingga perlu dilakukan
kehati-hatian dalam penulisannya.
36
Berikut contoh code program tentang factorial atau mencari factor terhadap suatu
bilangan :
Apabila kita mengisikan nilai 5 untuk mencari pemfaktorannya maka hasil
programnya sebagi berikut ;
Rekursif dengan list berkait
Link berkait/linked list adalah sekumpulan elemen (boleh kosong) yang setiap
elemennya terdiri dari dua bagian :
1. Bagian data (info)
2. Bagian alamat (next)
37
Kapan tidak menggunakan rekursif
Ada dua alas an kita harus mengubah algoritma rekursif menjadi algoritma
iterative. Diantaranya adalah :
1. Bahasa pemrograman tidak mendukung. FOTRAN tidak mendukung.
2. Dapat terjadi rekursif tidak mangkus, memiliki kerumitan yang tidak
perlu atau terlalu lambat.
Contoh Menara Hanoi
Berikut diberikan contoh program dengan memakai cara Menara Hanoi yaitu
memindahkan sejumlah disk/piringan dari menara A ke B dengan menggunakan
bantuan menara C.
Dan apabila kita mengisikan 3 buah jumlah piringan /disk maka hasil program
penyelesaiannya seperti dibawah:
38
BAB IV
KESIMPULAN
Berdasarkan pembahasan yang telah kita ulas, bahasa pemrograman pascal
merupakan bahasa pemrograman terstruktur yang mana blok-blok kode program
tersusun sedemikian sehingga dapat membangun program yang efisien dan pascal
juga termasuk kedalam bahasa pemrograman tinggkat tinggi yaitu kode-kode
programnya menggunakan bahasa yang dimengerti oleh manusia.
Di era sekarang ini, bahasa pemrograman pascal sudah jarang digunakan
dalam pembuatan program, karena sudah ada bahasa pemrograman yang lebih
baru yaitu bahasa pemrograman yang berorientasi objek seperti, C++, Visual
Basic, Java dan masih banyak lagi. Namun pascal sangat cocok bagi pemula yang
ingin mempelajari pemrograman komputer.
39
DAFTAR PUSTAKA
Munir, Rinaldi.2007. Algoritma dan pemrograman dalam bahasa pascal dan c,
penerbit informatika. Bandung.
www.EmeRer.com.
40
41
Contoh Kasus Penerapan Algoritma
Mata Kuliah: Logika Informatika dan Algoritma
Nama Mahasiswa : Zaenal Abidin
NIM
: 131510031
Kode Kelas
: 131-IS01T-M1
Dosen
: M. Rasid Ridho S.Kom., M.SI.
UNIVERSITAS PUTERA BATAM
2014
1
KATA PENGANTAR
Logika dan algoritma merupakan mata kuliah yang mengajarkan tentang
bagaimana cara menyelesaikan suatu masalah berdasarkan tahapan-tahapan yang
sistematis dan logis. Suatu algoritma dapat dibuktikan kebenarannya melalui
komputer setelah algoritma tersebut ditranslasikan kedalam bahasa pemrograman.
Bahasa pemrograman yang digunakan dimakalah ini menggunakan Turbo Pascal
1.5 yang berjalan di system operasi windows.
Makalah ini membahas secara ringkas tentang algoritma dan pascal
sebagai dasar bagi pemula yang mempelajari pemrograman komputer.
Akhir kata, penulis mengucapkan puji syukur Alhamdulillah makalah ini
bisa diselesaikan dengan baik, walaupun masih banyak kekurangan disana-sini
yang masih diperlukan perbaikan. Oleh karena itu penulis menerima masukan dari
dosen pengajar mata kuliah algoritma maupun dari teman-teman mahasiswa yang
membeca makalah ini. Mudah-mudahan makalah ini dapat bermanfaat bagi
penulis sendiri maupun bagi yang membacanya.
Wassalam
Batam, Januari,2014
Penulis
2
DAFTAR ISI
KATA PENGANTAR.................................................................................. ii
DAFTAR ISI............................................................................................ iii
BAB I...................................................................................................... 1
PENDAHULUAN...................................................................................... 1
BAB II..................................................................................................... 3
PEMBAHASAN........................................................................................ 3
II.1. PENGERTIAN LOGIKA DAN ALGORITMA..........................................3
II.2. BAHASA PASCAL............................................................................ 6
BAB III.................................................................................................. 14
STRUKTUR PROGRAM..........................................................................14
III.1. PEMILIHAN................................................................................. 14
III.2. PROSEDUR.................................................................................. 23
III. 3. LARIK........................................................................................ 29
III. 4. PENCARIAN................................................................................ 31
III.5. REKURSIF................................................................................... 35
BAB IV.................................................................................................. 39
KESIMPULAN....................................................................................... 39
DAFTAR PUSTAKA................................................................................ 40
3
BAB I
PENDAHULUAN
I.1. Pengertian Bahasa pemrograman
Bahasa pemrograman adalah bahasa formal yang dirancang untuk
mengkomunikasiakan instruksi dengan sebuah mesin, terutama komputer. Bahasa
pemrograman
dapat
digunakan
untuk
membuat
program
yang
dapat
mengendalikan perilaku mesin dan untuk mengekspresikan algoritma secara tepat.
Bahasa pemrograman mendahului menemuan komputer, dan digunakan
untuk mengarahkan perilaku mesin seperti halnya mesin tenun dan pemutar piano.
Ribuan bahasa pemrograman yang berbeda telah dibuat, terutama dibidang
komputer. Banyak bahasa pemrograman membutuhkan perhitungan yang akan
ditentukan dalam bentuk imperatif (yaitu sebagai urutan operasi dalam
melaksanakan perintah), sedangkan bahasa yang lain menggunakan bentuk lain
dari spesifikasi program sebagai bentuk deklaratif (yaitu menentukan hasil yang
diinginkan , bukan bagaimana cara mencapainya).
Pemrograman dalam pengertian luas meliputi seluruh kegiatan yang
tercakup dalam pembuatan program, termasuk analisis kebutuhan (requirement's
analysis) dan keseluruhan tahapan dalam perencanaan (planning), perancangan
(design) dan pewujudannya (implementation).
Dalam
pengertian
yang
lebih
sempit,
pemrograman
merupakan
pengkodean (coding atau program writing/penulisan program) dan pengujiannya
(testing) berdasrkan rancangan tertentu. Pemahaman yang lebih sempit ini sering
digunakan
dalam
pembuatan
program-program
terapan
komersial
yang
membedakan antara system analyst yang bertanggung jawab dalam menganalisa
kebutuhan, perencanaan dan perancangan program dengan programer yang
bertugas membuat kode program dan mengujinya.
1
2
Deskripsi bahasa pemrograman biasanya dibagi menjadi dua komponen
syntax (bentuk) dan semantic (makna). Beberapa bahasa yang didefinisikan oleh
dokumen spesifikasi (misalnya, pada bahasa c dan pascal ditentukan oleh standar
ISO), sedangkan bahasa yang lain, seperti Perl5, mamiliki implementasi dominan
yang digunakan sebagai referensi.
I.2. Pembahasan
Adapun bahasan pada makalah ini adalah sebagai berikut ;
a)
b)
c)
d)
e)
f)
g)
Menjelaskan apa itu Algoritma.
Menjelaskan bahasa pemrograman Pascal.
Membahas struktur dasar Pemilihan
Membahas struktur Prosedur
Membahas struktur Larik
Membahas struktur Pencarian
Membahas struktur Rekursi
I.3. Tujuan
Adapun tujuan pembuatan makalah ini adalah untuk :
a) Sebagai bahan pembelajaran untuk pembaca dan penulis sendiri.
b) Sebagai syarat untuk memperoleh nilai tugas mandiri penulis.
BAB II
PEMBAHASAN
II.1. PENGERTIAN LOGIKA DAN ALGORITMA
Logika berasal dari bahasa Yunani yaitu logos yang berarti ilmu. Logika
dapat diartikan ilmu yang mengajarkan cara berfikir untuk melakukan aksi dengan
tujuan tertentu.
Algoritma berasal dari nama seorang ilmuan Arab yang bernama Abu
Ja’far Muhammad Ibnu Musa Alkhuwarizmi penulis buku Al Jabar Wal
Muqabala ( buku pemugaran dan pengurangan ). Kata Alkhuwarizmi dibaca
orang barat menjadi algorism yang kemudian lambat laun menjadi Algorithm
diserap kedalam bahasa Indonesia menjadi Algoritma. Algoritma dapat diartikan
urutan langkah-langkah
( instruksi-instruksi / aksi-aksi ) terbatas untuk
menyelesaikan suatu masalah.
Dari pengertian diatas maka dapat diartikan Logika dan Algoritma adalah
ilmu yang mempelajari cara penyelesaian masalah berdasarkan langkah-langkah
terbatas yang logis dan sistematis dengan tujuan tertentu.
Contoh Algoritma:
Permasalahan:
Diberiakan dua gelas (A dan B), gelas A berisi kopi dan gelas B berisi susu.
Pertukarkan isi gelas tersebut sehingga menghasilkan gelas A yang semula berisi
kopi menjadi susu, dan gelas B semula berisi susu menjadi berisi kopi.
Penyelesaian:
Untuk mempertukarkan isi gelas dengan benar, maka diperlukan gelas tambahan
yang kita namakan gelas C sebagai penampungan sementara. Berikut
Algoritmanya:
3
4
4
Algoritma_Tukar_Isi _Gelas
Ada dua gelas (gelas A dan B), gelas A berisi kopi dan gelas B berisi susu.
Pertukarkan isi kedua gelas tersebut sehingga gelas A yang semula berisi kopi
menjadi berisi susu dan gelas B sebaliknya.
Deskripsi:
1. Tuangkan gelas A ke dalam gelas C
2. Tuangakn gelas B ke dalam gelas A
3. Tuangakn gelas C ke dalam gelas B
Hasil akhir dari Algoritma pertukaran gelas menjadi:
A : berisi susu
B : berisi kopi
A. Syarat-Syarat Algoritma
Syarat-syarat Algoritma menurut Donald E.Knuth, yaitu :
1. Finiteness (Keterbatasan)
Algoritma harus berakhir setelah melakukan rangkaian proses.
2. Defiteness (Kepastian)
Setiap langkah Algoritma harus didefiniskan dengan tepat dan tidak
menimbulkan makna ganda.
3. Input (Masukan)
Sebuah Algoritma memiliki nol atau lebih masukan (input) yang diberikan
kepada Algoritma sebelum dijalankan.
4. Output (Keluaran)
Setiap Algoritma memberikan satu atau beberapa hasil keluaran.
5. Effectiveness (Efektifitas)
Langkah-langkah Algoritma dikerjakan dalam waktu yang “wajar”.
B. Struktur Dasar Algoritma
Suatu Algoritma dapat terdiri dari tiga struktur dasar, yaitu runtunan,
pemilihan dan pengulangan. Berikut penjelasan ringkas dari ketiga struktur
tersebut:
5
1. Runtunan
Runtunan yaitu satu atau lebih instruksi yang dikerjakan secara berurutan
penulisannya. Urutan dari instruksi menentukan hasil akhir dari suatu
Algoritma. Bila urutan penulisan berubah mungkin juga hasil akhirnya
berubah.
2. Pemilihan
Pemilihan yaitu instruksi yang dikerjakan dengan kondisi tertentu. Kondisi
adalah persyaratan yang dapat bernilai benar atau salah. Instruksi hanya
dilaksanakan apabila kondidisi bernilai benar, sebaliknya apabila kondisi
salah maka instruksi tidak dilaksanakan. Pernyataan kondisi menggunakan
stattment IF (jika) dan THEN (maka).
3. Pengulangan
Pengulangan merpakan pengulangan sejumlah aksi yang sama sebanyak
jumlah yang ditentukan atau sesuai dengan kondisi yang diinginkan.
Beberapa statement pengulangan yaitu:
For…To…Do / For…Down…To…Do
While…do
Repeat…Until
C. Penulisan Algoritma
Algoritma dapat ditulis dengan cara berikut :
1. Menggunakan bahasa Natural.
2. Menggunakan Kode Semu (pseudo code). Teknik penulisan yang
mendekati bahasa pemrograman tertentu.
3. Menggunakan diagram alir (flow chart). Teknik penyajian dengan
menggunakan symbol-simbol.
Dari ketiga cara diatas untuk mempermudah translasi teks Algoritma kedalam teks
program sebaiknya ditulis dalam bentuk notasi yang mendekati bahasa
pemrograman (pseudo code).
D. Teks Algoritma
Teks Algoritma tersusun menjadi tiga bagian, yaitu:
1. Bagian Kepala
6
2. Bagian Deklarasi
3. Bagian Deskripsi
Setiap bagian disertai dengan penjelasan tentang maksud penulisan Teks.
Penjelasan ditulisdalam krung seperti ini {
}.
Algoritma Nama_algoritma
{ penjelasan singkat uraian yang dilakukan oleh algoritma }
Deklarasi
{ semua nama yang digunakan, meliputi nama-nama : tipe, konstanta, variable,
juga nama subprogram dinyatakan dibagian ini }.
Deskripsi
{ semua langkah penyelesaian dituliskan disini }
Contoh :
Algoritma Cetak_ucapan
{ mencetak ucapan “Selamat Belajar” dan di ikuti dengan nama orang }
Deklarasi
Nama : string;
Deskripsi
Nama “Ahmad”
Write(‘Selama Belajar’,nama)
II.2. BAHASA PASCAL
A. Pengertian
Pascal merupakan bahasa pemrograman tingkat tinggi yang dikembangkan
dari bahasa ALGOL 60 yang diperuntukan untuk sains dan komputasi. Pada tahun
1960 beberapa ahli komputer mengembangkan bahasa ALGOL, salah satunya
adalah Dr.Niklaus Wirth dari Swiss Federal Institute of Technology (ETH-Zurich),
yang merupakan anggota group ALGOL. Nama PASCAL diambil dari nama
seorang filsuf dan ahli matematika dari Perancis. Pascal adalah bahasa
pemrograman terstruktur yang membedakan blok-blok pendeklarasian tipe,
variable dan penulisa kode program. Pascal mempunyai keunggulan untuk
7
dipelajari oleh
pemula karena struktur yang jelas serta tidak bersifat case
sensitive (tidak membedakan huruf besar dan kecil). TPW 1.5 merupakan bahasa
pemrograman Pascal yang berjalan dibawah system operasi Windows.
B. PASCAL Sebagai Bahasa Terstrutur
Sebagai bahasa terstruktur, PASCAL mempunyai ciri-ciri sebagai berikut :
1. Berurutan
Susunan dari kode-kode dalam teks Pascal harus ditulis secara urut dari
atas, pernyataan-pernyataan yang ditulis lebih awal akan dieksekusi lebih
dulu. Oleh karena itu, suatu pernyataan yang menyangkut suatu variable
didalam program, maka variable itu harus terdefinisi dahulu sebelumnya.
Hal ini terutama menyangkut pada pemanggilan subprogram oleh
subprogram yang lain.
2. Blok dengan batas-batas yang jelas.
Pascal memberikan pembatas yang jelas pada tiap-tiap blok, seperti pada
blok program utama, subprogram, struktur control (pengulangan /
pemilihan), dll. Pemakaian kata kunci begin untuk mengawali operasi
pada blok dan end untuk menutupnya memudahkan programer menyusun
programnya dengan mudah.
Seperti contoh :
if X > 0 then
begin write (‘Bilangan Positif’);
writeln (‘Program selesai’);
end;
3. Satu pintu masuk dan satu pintu keluar peda blok pemilihan dan
penglangan. Contoh diatas juga mengilustrasikan pintu masuk tunggal
pada satu blok pemilihan yaitu suatu test logika X > 0, dengan pintu
keluaran yang satu pula (satu disini maksudnya bukan dua baris perintah
output tapi suatu paket perintah yang dirangkai dengan begin…end.
C. Bakuan PASCAL
8
Dibakukan oleh ISO pada tahun 1983 dan dikembangkan dalam beberapa
versi, diantaranya : USCD PASCAL, MS PASCAL,TURBO PASCAL dll. Dengan
semakin berkembangnya dalam teknologi komputasi, Pascal dimanfaatkan untuk
pengembangan DELPHI (berasal dari nama suatu kota di masa Yunani kuno),
suatu bahasa pemrograman visual yang menojolakan pada efek grafis dan
orientasi pada objek-objek yang siap dipakai, karena memiliki Visual Component
Library (VCL).
D. Struktur Bahasa PASCAL Secara Umum
Pascal mempunyai struktur sebagai berikut :
1. Judul Program
2. Bagian Deklarasi
a)
b)
c)
d)
e)
Deklarasi tipe data (TYPE)
Deklarasi Variable (VAR)
Deklarasi konstanta (CONST)
Deklarasi label (LABEL)
Deklarasi sub-program ( PROCEDURE dan FUNCTION)
3. Bagian Program Utama Perintah-perintah
Teks Pascal setidaknya memiliki bagia Judul Program, bagian Deklarasi,
dan bagian Program Utama yang berupa perintah-perintah. Sedangkan
untuk bagian deklarasi menyesuaikan dengan isi dari program itu sendiri.
Sebagai contoh:
Program TAMBAH_00; {menjumalahkan dua buah bilangan yang nilainya
diberikan dalam perintah}
Var X,Y,Z : integer; {deklarasi variable X,Y,dan Z sebagai bilangan bulat}
BEGIN {program utama dimulai}
X:= 50; {perintah untuk memberi nilai 50 pada var X}
Y:= 25; {perintah intuk memberi nilai 25 pada var Y}
Z:= X + Y; {perintah untuk menjumlahkan X dan Y serta menyimpan hasilnya
ke Z}
END. {akhir program utama}
Pada contoh ini nilai X dan Y tidak bisa sembarang, karena sudah
didefinisikan sebelumnya dalam program. Agar nilai X dan Y bisa bebas
ditentukan, nilai X dan Y dibaca dari default input.
Program TAMBAH_01; {menjumlahkan dua buah bilangan yang dibaca dari
default input}
9
Var X,Y,Z : integer; {deklarasi variable X,Y,dan Z sebagai bilangan bulat}
BEGIN {program utama dimulai}
Read(X); {membaca nilai X dari keyboard}
Read(Y); {membaca nilai Y dari keyboard}
Z:= X + Y; {perintah untuk menjumlahkan X dan Y serta menyimpan hasilnya
ke Z}
Write(Z); {menyajikan Z kelayar monitor}
END. {akhir program utama}
E. Jenis Identifier
1. Identifier umum
Merupakan identifier yang didefinisikan sendiri oleh pemrogram. Pemrogram
mempunyai kebebasan untuk menentukan identifiernya, dengan syarat nama
tersebut tidak sama dengan identifier standard dan reserved word yang akan
dibahas lebih lanjut. Hal ini untuk mencegah kesalahan yang bisa timbul
akibat tumpang tindih identifier dalam program.
2. Identifier standar (Baku)
Merupakan identifier yang didefinisikan oleh pembuat compiler Pascal.
Biasanya membuat compiler menyediakan suatu library yang sudah ada
didalam compiler. Library berisi berbagai prosedur, fungsi atau unit yang siap
pakai. Misalnya Turbo Pascal Windows 1.5 memiliki suatu unit untuk
memproses output yaitu wincrt, gotoxy, yang dengan mudah bisa dipakai oleh
programer didalam menuliskan kode-kode programnya. Dinamai identifier
standar karena suatu compiler tidak harus memilikinya, masing-masing
compiler dimungkinkan mempunyai identifier berbeda untuk suatu tugas yang
hampir sama. Misalnya Turbo Pascal versi DOS menggunakan crt untuk
melakukan fungsi yang sama dengan wincrt (TPW 1.5).
Beberapa identifier standar yang dimiliki oleh compiler-kompiler pascal
antara lain :
abs arctan Boolean char cos dispose eof eoln exp false input integer in maxint new odd ord
output pack page pred read readln real reset rewrite round sin sqr sqrt succ text true trunk write
writeln
3. Identifier “Reserved Word”
10
Yaitu yang sudah didefinisikan dan digunakan oleh bahasa Pascal sendiri (kita
tidak bisa menamai identifier kita dengan kata ini).
and array begin case const div do downto else end file forward function goto if in label mod nil
not of or packed procedure program record repeat set then to type until var while with
F. Tipe Data
Tipe data yang disedikan oleh Pascal terbagi menjadi dua meliputi :
Tipe Data Sederhana
Tipe Data Terstruktur
1. Tipe Data Sederhana
Merupakan data dasar yang seering dipakai oleh program,meliputi : integer,
real, char, dan Boolean. Untuk data integer dan real masing-masing terbagi
menjadi beberapa katagori.
a. Bilangan Integer
Merupakan tipe data berupa bilangan bulat, terbagi atas beberapa katagori
seperti terlihat dalam tabel 1 menunjukan jenis data ukuran dalam memori
dan rentang nilainya.
Tipe Data
Byte
Shortint
Integer
Word
Longint
Ukuran Tempat
1 Byte
1 Byte
2 Bytes
2 Bytes
4 Bytes
Rentang Nilai
0 s/d + 225
-28 s/d + 127
-32768 s/d 32767
0 s/d 65535
-2147483648 s/d 2147483647
Tabel 1. Tipe Data bilangan integer
b. Bilangan Real
Bilangan real atau nyata merupakan jenis bilangan pecahan, dapat
dituliskan secara biasa atau model scientific. Contoh bilangan Real :
23,435 -2,55 0,0 32,997E+11, dimana E merupakan symbol perpangkatan
sepuluh. Jadi 452.13 mempunyai nilai sama dengan 4.5213E2.
Penggolongan tipe data real dapat dilihat pada tabel 2.
Tipe Data
Real
Single
Ukuran Tempat
6 Bytes
4 Bytes
Rentang Nilai
2.9 x 10 -39 s/d 1.7 x 1038
1.5 x 1045 s/d 3.4 x 1038
11
Double
Extended
Comp
8 Bytes
10 Bytes
8 Bytes
5.0 x 10 -324 s/d 1.7 x 10308
3.4 x 10 -4932 s/d 1.1 x 104932
-9.2 x 1018 s/d 9.2 x 1018
Tabel 2 Tipe Data Bilangan real
c. Char
Tipe data ini menyimpan karakter yang diketikan dari keyboard, memiliki
266 macam yang terdapat dalam tabel ASCII ( American Standard Code
for Information Interchange). Contoh ; ‘a’ , ’B’ , ’+’, dsb. Yang perlu
diingat bahwa dalam menuliskannya harus memakai tanda kutip tunggal.
Jenis data ini memerlukan alokasi memori sebesar 1(satu) byte untuk
masing-masing data.
d. Tipe Data Boolean
Merupakan tipe data logika, yang berisi dua kemungkinan nilai : TRUE
(benar) dan FALSE (salah). TPW memiliki tiga jenis ini yaitu : Boolean,
WordBool, dan LogBool. Tipe boolean memakai memori paling kecil,
sedangkan WorBool dan LogBool dipakai untuk menulis program yang
sesuai dengan lingkungan windows.
Tipe Data
Boolean
WordBool
IongBool
Ukuran Tempat
1 Byte
2 Bytes
3 Bytes
Tabel 3. Tipe Data Boolean
2. Tipe Data Terstruktur
Tipe ini terdiri atas : array, record, set, dan file. String adalah tipe data jenis
array, Karena string memiliki kekhasan tersendiri sebagai array dari karakter.
a. Tipe Data String
Merupakan suatu data yang menyimpan array (larik), sebagai contoh
‘ABCDF’ merupakan sebuah konstanta string yang berisikan 6 byte
karakter. Ukuran tempat untuk tipe data ini adalah 2 s/d 256 byte, dengan
jumlah elemen 1 s/d 225. String dideklarasikan dengan string [konstanta]
atau string. Bila ukuran string tidak didefinisikan maka akan banyak
memakan ruang, karena ukuran string menyesuaikan dengan defaultnya.
Misalkan: var kata : string [20]; atau var kata : string. Karena string
merupakan array dari karakter.
b. Tipe Data Set
12
Sebuah set merupakan suatu himpunan yang berisi nilai (anggota). Set
merupakan tipe data yang khusus untuk Pascal. Set dalam pemrograman
sangat mirip dengan himpunan dalam ilmu matematika,
Contoh :
A = {1,2,3,4,5}
Syntax : set of contoh:
Type digits = set of 0…9;
Letters = set of ‘A’…’Z’;
Type Day = (Sun,Mon,Tue,Thu,Fri,Sat);
G. Operator
Beberapa operator yang disediakan oleh PASCAL :
1. Aritmatika
2. Boolean
3. Relasional
4.
Set
Operator
+
*
/
div
mod
Operasi
Penjumlahan
Pengurangan
Perkalian
Pembagian
Pembagian
Sisa Pembagian
Tipe Operand
Integer, Real
Integer, Real
Integer, Real
Integer, Real
Integer, Integer
Integer, Integer
Tipe Hasil Operasi
Integer, Real
Integer, Real
Integer, Real
Integer, Real
Integer
Integer
Tabel 4. Aritmetika Pascal
Operator
Not
And
Or
Xor
Operasi
Negasi
Logika ‘and’
Logika ‘or’
Logika ‘xor’
Tipe Operand
Boolean
Boolean
Boolean
Boolean
Tabel 5. Operator Boolean Pascal
Tipe Hasil Operasi
Boolean
Boolean
Boolean
Boolean
13
BAB III
STRUKTUR PROGRAM
III.1. PEMILIHAN
Didalam suatu program seringkali terdapat instruksi yang hanya bisa
dikerjakan jika ia memenuhi suatu persyaratan tertentu. Oleh karena itu komputer
tidak lagi mengerjakan instruksi secara sekuensial melainkan berdasarkan syarat
tertentu yang dipenuhi. Struktur pemilihan memungkinkan kita melakukan aksi
jika suatu syarat dipenuhi. Didalam makalah ini struktur pemilihan yang akan
dibahas adalah IF-THEN, IF-THEN ELSE dan CASE-OF, sebagai berikut :
A.Pemilihan Dengan Struktur IF-THEN
Notasi algoritmik untuk satu kasus adalah dengan menggunakan
konstruksi
IF-THEN (jika-maka) dalam bentuk pernyataan :
if kondisi then
aksi
endif
pernyataan diatas berarti bahwa aksi hanya dilaksanakan bila konsisi bernilai
benar (true). Bila kondisi bernilai salah (false), tidak ada aksi apapun yang
dikerjakan. Kata endif sengaja kita tambahkan untuk mempertegas awal dan akhir
struktur
IF-THEN. Aksi yang dikerjakan bisa satu, dua, atau lebih. Bagan alir
pada gambarmembantu memperlihatkan visualisasi pemilihan dengan hanya satu
kasus ini.
14
15
kondisi
salah
benar
aksi
end
Bagan alir yang memperlihatkan pemilihan dengan hanya dengan satu kasus
Contoh :
Berikut kita akan membuat program mencetak bilangan ganjil menggunakan
statement if dengan bahasa Pascal.
16
Setelah dijalankan maka hasil programnya akan terlihat seperti dibawah.
B. Pemilihan Dengan Struktur IF-THEN-ELSE
Konstruksi IF-THEN hanya menyediakan satu alternative aksi jika suatu
persyaratan (kondisi) dipenuhi. Kadang-kadang kita perlu memilih melakukan
aksi alternative jika suatu kondisi tidak memenuhi. Jadi, ada dua kasus, tetapi
hanya salah satu dari keduanya yang harus dipilih satu untuk dikerjakan. Notasi
algoritmik untuk masalah dengan dua buah kasus adalah dengan menggunakan
konstruksi IF-THEN-ELSE( jika-maka-kalau tidak) :
if kondisi then
aksi1
else
aksi2
endif
Pernyataan diatas berarti bahwa
aksi1
dikerjakan jika kondisi bernilai benar,
sebaliknya jika kondisi bernilai salah, maka
aksi2
yang akan dilaksanakan.
Perhatikanlah bahwa else menyatakan ingkaran (negation) dari kondisi. Bagan alir
pada gambar dibawah membantu memperlihatkan visualisasi pemilihan dengan
dua kasus-kasus.
17
Benar
kondisi
aksi1
Salah
aksi2
end
Bagan alir yang memperlihatkan pemilihan dengan dua kasus.
Contoh :
Berikut kita akan membuat program Password menggunakan statement if then else
sebagai berikut.
18
Jika password yang dimasukan “udin” maka akan menghasilka output sebagai berikut
Jika password yang dimasukan bukan “udin” maka hasilnya akan tampak seperti berikut.
C. Pemilihan Dengan Tiga Kasus Atau Lebih
Masalah yang mempunyai tiga buah kasus atau lebih dapat dianalisis
dengan
konstruksi
IF-THEN-ELSE
bertingkat-tingkat.
memperlihatkan bagan alir untuk masalah dengan 3 kasus.
Tiga kasus :
if kondisi : then
aksi :
Gambar
dibawah
19
else
if kondisi : then
aksi :
else
if kondisi : then
aksi :
endif
endif
endif
benar
kondisi 1
aksi1
salah
benar
salah
kondisi 21
aksi2
aksi3
end
end
Bagan alir yang memperlihatkan pemilihan dengan tiga kasus.
20
Berikut adalah contoh programnya mencetak tulisan Bilangan Positif atau
Bilangan Negatif atau Nol:
Bila kita menginputkan data angka 8 maka hasil programnya akan tampak seperti
dibawah.
21
Sedangkan apabila kita menginputkan angka -23 maka hasilnya akan seperti
dibawah.
D. Pemilihan Dengan Struktur Case
Untuk masalah dengan dua kasus atau lebih, kontruksi CASE dapat
menyederhanakan
penulisan
IF-THEN-ELSE
yang
bertingkat-tingkat
sebagaimana telah kita bahas diatas. Berikut disajikan struktur CASE :
case ekspresi
nilai 1
nilai 2
nilai 3
aksi1
:
aksi2
:
:
aksi3
:
aksin
.
.
nilai n
Otherwise :
aksi x
endcase
Contoh :
Kita akan membuat program mencari mata kuliah dengan memasukan kode
kelasnya, adalah sebagai berikut :
22
Apabila kita menginputkan kode kelas 114 pada piranti masukannya maka hasilnya akan
tampak seperti berikut.
Sedangkan apabila kita menginputkan kode kelas 210 pada piranti masukannya maka
hasilnya akan tampak seperti berikut.
23
III.2. PROSEDUR
Prosedur adalah program terpisah atau subprogram yang dibuat dengan
tujuan untuk menyederhanakan program. Prosedur ditulis dalam satu blok
program yang cukup ditulis satu kali tetapi dapat dipanggil berulang kali.
Didalam prosedur ada yang disebut Parameter yaitu nama-nama peubah
yang dideklarasikan pada bagian header prosedur. Parameter terbagi dua menjadi
Parameter Aktual adalah parameter yang disertakan pada waktu pemanggilan
prosedur, sedangkan Parameter Formal adalah parameter yang dideklarasikan
didalam bagian header prosedur itu sendiri.
Setiap Prosedur program Pascal harus mengikuti struktur dasarnya. Berikut adalah
sruktur dasar prosedur yang harus diikuit .
PROGRAM NamaProgram;
VAR
NamaVariable : TipeVariable
NamaVariable : TipeVariable
…
PROCEDURE NamaProsedur;
Variable jika dibutuhkan
BEGIN
Code-code program;
END;
24
…tambah prosedur jika dibutuhkan…
BEGIN
Blok program utama. Ini harus kecil dan semua pekerjaan harus
diserahkan kepada prosedur. Disini sering berisi pengulangan dan
pemanggilan prosedur yang bersesuain.
END.
Berikut contoh program menghitung luas segitiga dengan prosedur tanpa
parameter.
Apabila kita masukan nilai 3 pada inputan banyaknya segitiga maka hasilnya akan
tampak seperti ini.
25
Didalam prosedur terdapat 3 parameter yaitu :
A. Prosedur dengan Parameter Masukan
Yaitu parameter yang nilainya berlaku sebagai masukan untuk prosedur.
Pada parameter masukan, nilai parameter actual diisikan kedalam badan prosedur
yang besangkutan.
Berikut disajikan contoh program menghitung luas lingkaran dengan prosedur
parameter masukan.
26
Dan bila kita mengisikan nilai 3 pada “Banyaknya Lingkaran” dan mengisikan
sembarang nilai pada jari-jarinya, maka hasilnya akan tampak sebagai berikut.
B. Prosedur dengan Perameter Keluaran
Yaitu parameter yang menampung keluaran yang dihasilkan oleh prosedur.
Prosedur mungkin menghasilkan satu atau lebih keluaran yang akan digunakan
oleh program pemanggil. Jika seperti ini kasusnya, maka nilai keluaran tersebut
27
ditampung dalam parameter keluaran. Ketika prosedur yang mengandung
parameter keluaran dipanggil, maka parameter actual menggantikan nama
parameter formal yang bersesuaian didalam prosedur.
Berikut diberikan contoh program menghitung luas lingkaran dengan
menggunakan prosedur parameter keluaran.
Dan hasil programnya akan seperti dibawah ini.
28
C. Prosedur dengan Parameter Masukan / Keluaran
Adalah parameter yang berfungsi sebagai masukan sekaligus keluaran bagi
prosedur tersebut.
Berikut disajikan contoh program rata-rata nilai ujian dengan parameter masukan /
keluaran.
29
Dengan mengisikan banyaknya mata pelajaran dan nilai tiap mata kuliah tersebut,
maka hasil programnya seperti tampak dibawah ini.
III. 3. LARIK
Larik / Array adalah tipe data terstruktur yang terdiri dari sejumlah
komponen-komponen yang bertipe sama (homogen). Komponen-komponen
tersebut disebut sebagai komponen tipe, larik mempunyai komponen yang
jumlahnya tetap. Banyaknya komponen dalam larik ditunjukan oleh suatu indeks,
dimana tiap komponen di larik dapat diakses dengan menunjukan nilai indeksnya
atau subscript. Larik dapat bertipe data sederhana seperti byte, word, integer, real,
boolean, char, string dan tipe data scalar atau subrange. Tipe larik mengartikan isi
dari larik atau komponen-komponennya mempunyai nilai dengan tipe data
tersebut.
Sebagai contoh kita akan membuat program nilai mata kuliah dengan membaca
tiap nilainya yang diinputkan pada keyboard, mencetaknya dan menghitung ratarata nilainya. Berikut kode programnya :
30
Dan jika kita memasukan nilai tujuh
pada banyaknya mata kuliah serta
menginputkan masing-masing nilainya. Hasil programnya seperti berikut :
31
III. 4. PENCARIAN
Pencarian / Searching adalah menemukan nilai atau data tertentu didalam
sekumpulan data yang bertipe sama baik tipe dasar maupun bertipe bentukan.
Untuk mengubah atau meng-update data tertentu langkah pertama yang
harus dilakukan adalah mencari keberadaan data tersebut didalam kumpulanya.
Spesifikasi masalah pencarian
Bila kita akan mencari nilai x didalam larik L, maka hasil / keluaran dari
pencarian dapat bermacam-macam:
1. Pencariannya hanya untuk memeriksa keberadaan x.
Write (‘ditemukan’) atau
Write (‘tidak ditemukan’)
2. Hasil pencarian adalah indeks elemen larik.
L
5
7
1
9
2
1
3
4
10
51
5
6
3
7
Jika x = 10 maka indeks = 5, jika x = 4 maka indeks = -1
3. Hasil pencarian Boolean yang menyatakan status hasil pencarian.
Jika x = 10 maka ketemu = true,
Jika x = 4 maka ketemu = false
Ada dua macam pencarian :
1. Algoritma pencarian beruntun ( sequential search )
2. Algiritma pencarian bagi dua ( binary search )
A. Algoritma Pencarian Beruntun / Squential Search
2
8
32
Cara kerjanya adalah membandingkan setiap elemen larik satu persatu
secara beruntun mulai dari elemen pertama sampai elemen ditemukan atau seluruh
elemen sudah diperiksa.
Berikut ini contoh program prosedur pencarian dengan hasil Boolean,
bernilai true jika ditemukan dan false jika tidak ditemukan.
Bila kita memasukan jumlah elemen larik dengan 8 dan memasukan nilai tiap
indeksnya serta memasukan nilai 19 pada nilai yang akan dicari maka hasil
programnya adalah sebagai berikut;
33
B. Algoritma Pencarian Bagi Dua
Algoritma yang paling Efisien adalah algoritma bagi dua atau pencarian
biner atau binary search. Algoritma ini digunakan untuk kebutuhan pencarian
dengan waktu yang cepat.
Kanan
L
5
7
1
Kiri
9
2
1
3
4
10
51
5
6
Berikut diberikan contoh kode program prosedur pencarian bagi dua.
3
7
2
8
34
Dan apabila kita memasukan 7 pada jumlah data juga memasukan nilai ditiap-tiap
indeksnya serta memasukan angka 22 pada angka yang akan dicari, maka hasil
programnya akan tampak sebagai berikut.
35
III.5. REKURSIF
Menurut Niklaus Wirth definisi rekursif yaitu “ An object is said be
recursive if it partially consist of is defines in terms of itself “.
Rekursif disusun oleh dua bagian :
1. Basis
Berisi kasus yang terdefinisi eksplsit, bagian ini yang menghentikan
rekursif.
2. Rekurens
Mendefinisikan objek dalam terminology dirinya sendiri.
Contoh algoritma fungsi rekursif
Subprogram bisa memanggil dirinya sendiri (Recursive Call) dengan catatan
bahwa memilki syarat penghentian operasi (iterasi), sehingga perlu dilakukan
kehati-hatian dalam penulisannya.
36
Berikut contoh code program tentang factorial atau mencari factor terhadap suatu
bilangan :
Apabila kita mengisikan nilai 5 untuk mencari pemfaktorannya maka hasil
programnya sebagi berikut ;
Rekursif dengan list berkait
Link berkait/linked list adalah sekumpulan elemen (boleh kosong) yang setiap
elemennya terdiri dari dua bagian :
1. Bagian data (info)
2. Bagian alamat (next)
37
Kapan tidak menggunakan rekursif
Ada dua alas an kita harus mengubah algoritma rekursif menjadi algoritma
iterative. Diantaranya adalah :
1. Bahasa pemrograman tidak mendukung. FOTRAN tidak mendukung.
2. Dapat terjadi rekursif tidak mangkus, memiliki kerumitan yang tidak
perlu atau terlalu lambat.
Contoh Menara Hanoi
Berikut diberikan contoh program dengan memakai cara Menara Hanoi yaitu
memindahkan sejumlah disk/piringan dari menara A ke B dengan menggunakan
bantuan menara C.
Dan apabila kita mengisikan 3 buah jumlah piringan /disk maka hasil program
penyelesaiannya seperti dibawah:
38
BAB IV
KESIMPULAN
Berdasarkan pembahasan yang telah kita ulas, bahasa pemrograman pascal
merupakan bahasa pemrograman terstruktur yang mana blok-blok kode program
tersusun sedemikian sehingga dapat membangun program yang efisien dan pascal
juga termasuk kedalam bahasa pemrograman tinggkat tinggi yaitu kode-kode
programnya menggunakan bahasa yang dimengerti oleh manusia.
Di era sekarang ini, bahasa pemrograman pascal sudah jarang digunakan
dalam pembuatan program, karena sudah ada bahasa pemrograman yang lebih
baru yaitu bahasa pemrograman yang berorientasi objek seperti, C++, Visual
Basic, Java dan masih banyak lagi. Namun pascal sangat cocok bagi pemula yang
ingin mempelajari pemrograman komputer.
39
DAFTAR PUSTAKA
Munir, Rinaldi.2007. Algoritma dan pemrograman dalam bahasa pascal dan c,
penerbit informatika. Bandung.
www.EmeRer.com.
40
41