Anda di halaman 1dari 34

Campus Blue

Beranda

CARA CEPAT BELAJAR PASCAL


Diposkan oleh Mr.Optimis di 06.58
Belajar Dasar Turbo Pascal

Instalasi PASCAL
Oke kita langsung saja pada materi pertama kita yaitu pengenalan bahasa pascal agar Anda
mudah dalam mengikuti pemrograman bahasa Delphi berikutnya. Bila Anda kesulitan mencari
program Bahasa Pascal versi 5, Anda dapat mendownloadnya disini. ( Download Pascal). Tapi
saya memperingati kepada Anda bahwa program Pascal ini tidak boleh disebar-luaskan lagi
kepada Umum sebab saya tidak punya lisensi untuk menyebarluaskan program ini. Dan juga
Anda tidak boleh mengkomersialkan program ini, sebab program Pascal yang saya sediakan
disini hanya untuk mempelajari program tersebut.

Setelah Anda Download exstract file pascal.zip dengan menggunakan winrar (Program Winrar
Dapat di Download dari pilar kanan situs ini) atau winzip. Setelah itu klik dua kali file turbo.exe
pada folder tersebut, maka program turbo pascal 5.5 sudah bisa Anda jalankan, bila ingin
program Turbo Pascal yang lebih lengkap ikuti langkah-langkah berikut :
1.
Bila Komputer Anda belum terinstall winrar atau winzip installah program tersebut, program
winrar dapat Anda download melalui link yang ada di pilar kanan situs ini.
2.
Pindahkan file pascal.zip ke Drive C: jangan didalam folder lagi agar mudah untuk
memanggilnya melalui Command Prompt.
3.
Bila Winrar sudah terinstall, klik kanan file pascal.zip lalu pilih extract to pascal.

4.
Jalankan Command Prompt dari windows Anda, klik start run lalu ketik command klik ok maka
command Prompt akan ditampilkan. Setelah itu ketik CD\ dan ketik C: maka drive yang aktif
saat ini di command prompt adalah drive C.
5.
Setelah itu ketik CD PASCAL lalu tekan enter, maka sekarang Anda berada di drive C: pada
folder pascal yang telah Anda extract tersebut. Kemudian Ketik Install lalu tekan enter. maka
proses instalasi TURBO PASCAL 5.5 akan berlangsung. Ikuti saja petunjuk instalasi pascal yang
ada di proses instalasi. Folder default instalasi pascal adalah TP.
6.
setelah instalasi pascal selesai keluar lah dahulu dari program pascal, kembali ke command
prompt. Pada command prompt ketik lagi CD\pascal maka Anda akan kembali lagi ke folder
pascal, setelah berada di folder pascal extract beberapa file yang berekstensi ARC ke folder TP,
Sebelumnya ketik perintah DIR *.ARC maka semua file yang berekstensi ARC akan
ditampilkan, catat nama file-file tersebut. Ada beberapa file ARC yang ada di folder pascal ini
yaitu : BGI.ARC, DEMOS.ARC, DOC.ARC, HELP.ARC, OOPDEMOS.ARC, TCALC.ARC,
TOUR.ARC, TURBO3.ARC, dan UTILS.ARC. File tersebut hanya bisa di extract oleh file
UNPACK.COM yang berada di folder pascal. cara mengekstract nya sebagai berikut :
Buat folder pada direktori TP sesuai dengan nama-nama file arc yang akan diextract contoh :
Anda akan mengekstract file DEMOS.ARC, maka buatlah direktori di folder TP dengan nama
DEMOS. Masuk ke folder TP -- ketik CD\TP lalu ketik MD DEMOS maka folder dengan nama
DEMOS akan terbentuk di folder TP. Setelah terbentuk folder DEMOS sekarang Anda beralih
lagi ke folder PASCAL dengan mengetik CD\PASCAL, di folder PASCAL ketik perintah
berikut UNPACK DEMOS C:\TP\DEMOS lalu tekan Enter. Maka file DEMOS.ARC akan di
extract ke folder DEMOS yang berada di dalam folder TP. Lakukan hal yang sama pada file
ARC yang lainnya.
Tampilan Pascal 5.5
Tampilan PASCAL versi 5.5
Memulai PASCAL
Pada bahasa pascal Anda akan bermain dengan KEYBOARD bukan MOUSE, jadi untuk
sementara lupakan fasilitas GUI yang dimanjakan oleh WINDOWS. sebab kita kembali ke tahun
80-an dimana PASCAL menjadi suatu bahasa Pemrograman pavorite dikalangan SCIENTIEST
saat itu. Tombol keyboard yang paling pokok untuk mengakses program PASCAL adalah
tombol : alt, esc, ctrl, F1 -- F12, ENTER, serta tombol anak panah. jadi bila salah satu tombol
tersebut ada yang tidak berfungsi sebaiknya lupakan saja belajar pascal ini sampai Anda
mengganti keyboard Anda dengan yang baru.
Untuk memulai pascal dari windows Anda dapat mengklik dua kali file TURBO.EXE,
sedangkan bila melalui COMMAND PROMPT Anda dapat mengetikan perintah TURBO lalu

tekan ENTER maka program PASCAL akan diload seperti gambar diatas. Tekan tombol ESC
maka Program utama TURBO PASCAL akan di tampilkan, dari sini KEYBOARD menjadi
senjata Anda untuk mengakses menu-menu yang ada di program utama PASCAL. Untuk lebih
jelasnya mengenai penggunaan Keyboard pada pascal Anda dapat menekan tombol F1 yang akan
memunculkan fasilitas HELP pada Pascal.
Untuk mengakses menu dari program pascal Anda gunakan tombol ALT di ikuti dengan Huruf
pertama yang berwarna merah, contoh Anda akan mengakses menu File maka Anda dapat
mengaksesnya dengan menekan tombol ALT dan huruf F. sekarang tekanlah tombol ALT+E,
maka Anda berada pada mode editor, dan PASCAL siap untuk menerima perintah-perintah
Program Anda. Sebagai perkenalan coba Anda ketikan program dibawah ini di editor PASCAL.
{ Program : Input dari keyboard dan Menghitung operasi matematika }
{ Create by : Komarudin_surya@suryatekno }

uses Crt;
var
x,y,z : longint;
lagi : char;
namak : string[20];

begin
lagi := 'y';
while (lagi = 'y') or (lagi = 'Y') do
begin
clrscr;
write('Siapa Nama Anda..?'); ReadLn(namak);
writeLn;
write('Hallo ',namak,', Coba kamu');

WriteLn(' masukan nilai x,y dan z ');


writeLn('pada operasi matematika ini.');
writeLn;
writeLn('Operasi matematika X^2 + y^2 + z =..... ');
write('masukan nilai x..= '); ReadLn(x);
write('masukan nilai y..= '); ReadLn(y);
write('masukan nilai z..= '); ReadLn(z);
writeLn;
writeLn('nilai operasi x^2 + y^2 + z adalah : ',x*x+y*y+z);
writeLn;
write('Mau hitung lagi apa tidak (y/t), ',namak,' ? ');
readLn(lagi);
end;
end.
Menu Editor PASCAL
Menu Editor Pascal
Setelah Anda ketik kode-kode program tersebut simpanlah file tersebut dengan nama
testprog.pas, kemudian tekan tombol CTRL+F9 untuk melihat hasil program yang Anda ketik
tersebut.
Siapa Nama Anda...? _
Masukanlah Sembarang Nama, misalkan nama yang anda masukan adalah BEJO, maka
selanjutnya akan ditampilkan kalimat seperti dibawah ini :
Siapa Nama Anda...? BEJO
Hallo BEJO, Coba kamu masukan nila x,y, dan z
pada operasi matematika dibawah ini.
Operasi matematika x^2 + y^2 + z adalah = ......
masukan nilai x..= _

Sekarang Program meminta anda untuk memasukan nilai operasi untuk x kemudian y dan z ,
setelah itu program akan menampilkan hasil operasi matematika itu dan menanyakan lagi pada
anda, apakah akan menghitung lagi atau tidak, bila anda memasukan huruf t maka program akan
dihentikan sedangkan bila anda memasukan huruf y program akan diulang lagi.
Siapa Nama Anda...? BEJO
Hallo BEJO, Coba kamu masukan nila x,y, dan z
pada operasi matematika dibawah ini.
Operasi matematika x^2 + y^2 + z adalah = ......
masukan nilai x..= 5
masukan nilai y..= 5
masukan nilai z..= 5
nilai operasi x^2 + y^2 + z adalah : 55
Mau hitung lagi apa tidak (y/t), BEJO ? _
Dari contoh program pengenalan diatas, Anda dapat melihat dalam program sederhana tersebut
terdapat beberapa atribut, variabel, serta beberapa statemen. sekarang mari kita uraikan program
sederhana tersebut berdasarkan kelompok-kelompok.
{ Program : Input dari keyboard dan
Menghitung operasi matematika }
{ Create by : Komarudin_surya@suryatekno }
Pada bagian ini merupakan suatu KOMENTAR yang tidak diproses oleh program, bagian
komentar ini diperlukan untuk keperluan Dokumentasi agar program dapat diketahui maksud dan
tujuannya serta bila kita suatu waktu akan menambahkan atau merubah program maka kita dapat
dengan cepat mengetahui lokasi dari bagian program yang perlu kita tambahkan atau dirubah.
Untuk memberikan komentar dalam pascal diberikan tanda { dan } atau (* dan *), jadi apapun
yang dituliskan didalam kurung tersebut tidak akan diproses oleh program.
uses Crt;
perintah ini merupakan suatu UNIT, Unit mempunyai beberapa prosedur dan jenisnya. UNIT
dalam Pascal harus disertakan untuk mengaktifkan prosedur-prosedur yang akan diprogram.
Sedangkan Prosedur didalam Pascal dapat berbentuk prosedur yang didefinisikan atau dibuat
sendiri oleh pemakai atau prosedur yang telah disediakan oleh Pascal. Prosedur yang
didefinisikan sendiri oleh pemakai harus dideklarasikan terlebih dahulu.
Unit-unit dalam PASCAL 5.5 ada tujuh buah unit standar, ketujuh unit tersebut disimpan dalam
file yang bernama TURBO.TPL. Unit-unit tersebut yaitu :
1.

UNIT System -- Unit ini merupakan sebuah runtime Turbo Pascal yang mendukung semua
proses yang dibutuhkan pada waktu runtime (eksekusi program). Anda akan menemui pesan
error seperti ini "RUNTIME ERROR" bila Anda salah dalam memanipulasi system yang
diprogramkan. Unit ini Otomatis ditambahkan oleh Pascal walau Anda tidak mencantumkan nya
sewaktu meng-Compile.
2.
UNIT CRT -- Unit ini digunakan untuk keperluan program dalam memanipulasi layar, dalam hal
ini bisa berupa manipulasi TEKS, KURSOR, KODE EXTENDED KEYBOARD dll.
3.
UNIT Printer -- Sesuai dengan namanya maka unit ini tentu saja digunakan dalam program yang
berhubungan dengan printer, misalkan kita akan mencetak suatu program ke printer maka unit ini
harus digunakan untuk mengaktifkan printer. Printer yang bisa didukung hanya printer jenis LPT
dan COM, sedangkan printer jenis USB tidak bisa diakses karena pada waktu itu belum ada
printer yang berjenis USB, kecuali printer tersebut menyediakan DRIVER untuk DOS
kemungkinan printer USB bisa digunakan oleh PASCAL 5.5 ini.
Contoh program yang menggunakan unit printer :
(* Program Pencetakan Printer, Catatan dlm Pascal 5.0 keatas harus ditambahkan kata Lst *)
Uses Printer;
Begin
WriteLn(Lst,'Saya sedang mencoba Printer.');
WriteLn(Lst,'Create By : Suryatekno2008');
WriteLn(Lst,'============================');
End.
4.
UNIT DOS -- Unit ini digunakan bila anda akan mengaktifkan prosedur-prosedur yang ada
dalam DOS seperti DosVersion, GetTime, SetTime, DiskSize, DiskFree, Call, Dir, Path, Copy
dan sebagainya.
Contoh program yang menggunakan unit DOS :
(* Program melihat versi DOS dan sisa Disk,
Create By : Suryatekno *)
Uses DOS,CRT;
var ukuran : longint;
Begin
ukuran := DiskFree(0);
ClrScr;
WriteLn('Versi DOS yang Anda gunakan adalah : MS-DOS ',DosVersion);
WriteLn('Sisa Kapasitas Harddisk Anda : ',ukuran,' Bytes');

WriteLn;
WriteLn('Tekan tombol apa saja untuk keluar');
ReadLn;
End.
5.
UNIT Graph -- Unit ini digunakan untuk menampilkan grafik seperti Tabel, Chart Statistik dan
sebagainya. Biasanya Unit ini digunakan bila kita ingin menampilkan suatu grafik seperti pada
MS-EXCEL. Bisa juga digunakan untuk membuat animasi, Game dan sebagainya.
{ Program menampilkan Grafik Bar,
Create By : Suryatekno 2008 }
Uses Graph;
var
Driver,Model : integer;
I : integer;
Begin
Driver := VGA;
Model := VGAHi;
InitGraph(Driver, Model, ' ');
Line(20,25,20,155);
Line(20,155,200,155);
Randomize;
for I := 0 to 4 do
Bar3D(30+I*35, 154-Random(100),55+I*35,154,15,TopOn);
WriteLn;
WriteLn('Tekan Sembarang Tombol untuk Keluar');
ReadLn;
End.
6.
UNIT Turbo3 -- Unit ini digunakan pada pascal 3.0 sedangkan untuk pascal versi 4.0 keatas unit
ini sudah tidak digunakan lagi atau tidak difungsikan. Kegunaannya adalah sewaktu anda mengupgrade dari pascal versi 3.0 ke 4.0 atau 5.0 , Untuk latihan kita sekarang unit ini tidak kita
gunakan saja.
7.
UNIT Graph3 -- Unit ini digunakan untuk meng-konversi grafik yang dibuat oleh pascal versi
3.0 agar dapat digunakan oleh pascal 4.0 keatas, sama seperti unit Pascal3 unit ini pun tidak kita
gunakan pada latihan kita ini sebab kita menggunakan PASCAL versi 5.5 yang lebih canggih
dan lengkap.
Untuk Lebih jelasnya mengenai unit-unit ini silahkan anda buka Folder DOC yang ada pada

Direktory TP. Atau bila Anda orang yang kreatif dan tidak cepat puas silahkan Anda mencari
referensi-referensi dari situs atau media yang lainnya, Ini sangat saya anjurkan dan saya
acungkan jempol bila Anda melakukan hal ini.
Sekarang kita lanjutkan mengenai pembahasan program perkenalan yang telah anda buat
pertama kali.
var
x,y,z : longint;
lagi : char;
namak : string[20];
Pada bagian ini disebut VARIABLE , Semua bahasa pemrograman memerlukan variabel untuk
mengetahui type atau jenis data yang digunakan oleh si programer. Pada contoh program
pengenalan tersebut kita memberitahukan kepada PASCAL bahwa type atau jenis variabel yang
kita gunakan untuk variable x,y, dan z bertype longint, variable lagi bertype char dan variable
namak bertype String dengan panjang karakter sebanyak 20 string.
1. DEKLARASI VARIABEL (VARIABLE DECLARATION)
Deklarasi variabel adalah suatu deklarasi yang nilai nya sudah pasti, dengan kata lain Deklarasi
jenis ini tidak dapat dirubah lagi atau konstan. Pada contoh program diatas, deklarasi variabel
untuk x, y dan z berjenis longint ( bilangan bulat dari -2147483648 sampai 2147483648 ) maka
dalam program tersebut, hanya bisa dimasukan tipe data yang berjenis tersebut. Pada contoh
diatas bila anda memasukan nilai selain tipe tersebut, misalkan anda memasukan angka A pada
pada pertanyaan masukan nilai x..= maka program akan error, Nah agar tidak terdapat pesan
error pada program tersebut, maka program tersebut harus ditambahkan suatu baris perintah yang
berjenis logika jadi bila user memasukan nilai-nilai x,y dan z selain dari jenis tersebut maka akan
dikeluarkan suatu peringatan yang memberitahukan user agar memasukan nilai untuk x, y dan z
hanya bisa dimasukan oleh type variabel tersebut.
Silahkan Anda tambahkan baris perintah pada program testprog.pas diatas, agar user tidak salah
dalam memasukan type data yang telah ditentukan !.
2. DEKLARASI KONSTANTA (CONSTANT DECLARATION)
Sama seperti deklarasi variabel, deklarasi konstanta juga bersifat tetap (konstan), bedanya adalah
bila dalam deklarasi variabel kita hanya mendeklarasikan jenis dari data yang harus dikerjakan,
sedangkan pada deklarasi konstanta kita langsung menyebutkan nilainya. Deklarasi konstanta
tidak menggunakan tanda titik dua ( : ) seperti pada deklarasi variabel tetapi menggunakan tanda
sama dengan ( = ).
Contoh Program yang menggunakan deklarasi konstanta

{ Progam : Penggunaan deklarasi konstanta


Design By : suryatekno2008 }

uses crt;

const
nama = 'Amir';
nip = 'A3110';
gaji = 1000000;
lembur = 50000;
begin
clrscr;
writeLn('Nama Pegawai : ',nama);
writeLn('N I P : ',nip);
writeLn('Gaji Pokok : ',gaji);
writeLn('Uang Lembur : ',lembur);
writeLn('--------------------- +');
writeLn('Total Gaji : ',gaji+lembur);
writeLn;
writeLn('Tekan tombol ENTER untuk keluar');
readLn;
end.

DEKLARASI TIPE (TYPE DECLARATION)


Deklarasi tipe biasanya digunakan bila kita bekerja dengan ARRAY atau larik. Deklarasi Tipe
mempunyai banyak sekali jenis dan type yang ditanganinya, saya tidak bisa menjelaskannya satu
persatu kepada Anda dikarenakan terbatasnya space atau ruang yang disediakan pada situs ini,
disamping itu pokok bahasan tutorial ini adalah PEMROGRAMAN DELPHI, saya kuatir
nantinya pokok bahasan tersebut tidak bisa dimuat karena keterbatasan ini. Untuk itu saya sekali
lagi menugaskan kepada Anda untuk mencari dari situs atau media lain mengenai DEKLARASI
TYPE ini.
Contoh Program yang menggunakan deklarasi tipe
{ Program : Contoh penggunaan deklarasi tipe
Design By : Suryatekno2008 }

uses crt;

type J = array[1..8] of string[20];

const
Jadwal : J=('Mandi','Sarapan','Meeting',
'Menemui Pak Badrun','Pulang',
'Mandi','Makan Malam','Istirahat');
var
I : word;

begin
clrscr;

writeLn('Jadwal Hari ini');


writeLn('===============');
writeLn;
for I:=1 to 8 do
writeLn(' ',I,'. ',Jadwal[I]);
writeLn('Tekan enter untuk Keluar.....');
readLn;
end.

4. DEKLARASI LABEL (LABEL DECLARATION)


Deklarasi label adalah suatu deklarasi yang digunakan untuk memberi tanda (MARK) pada
program agar program dapat berpindah atau meloncat pada tanda (MARK) yang ditentukan.
Deklarasi ini mirip dengan bahasa PEMROGRAMAN BASIC yang menggunakan NOMOR
BARIS untuk berpindah dari baris ke baris. Penulisan Deklarasi label ini harus menggunakan
perintah LABEL yang dipisahkan dengan tanda koma ( , ).
Contoh program yang menggunakan deklarasi Label.
{ Program : Memilih dengan deklarasi Label
Design By : Suryatekno2008 }

uses crt;
label
1,2,3,4,keluar; {Deklarasi label yang ditentukan}

var
ketik,ulang : char;

begin

1: { label ke - 1 sebagai pokok program }


clrscr;
writeLn('Menu Masakan Hari ini');
writeLn('---------------------');
writeLn;
writeLn('a. Nasi Putih + Rendang');
writeLn('b. Nasi Putih + Telur Dadar');
writeLn('c. Nasi Putih + Tempe Goreng');
writeLn;
writeLn('Masukan Huruf a , b atau c untuk Pesanan Anda.');
write('Pilihan Anda..? ');readLn(ketik);

{ Jika user memilih pilihan tersebut, maka program akan


meng-eksekusi program sesuai dengan LABEL yang dituju }

if ketik='a' then
begin
goto 2;
end;
if ketik='b' then

begin
goto 3;
end;
if ketik='c' then
begin
goto 4;
end

{ User tidak memilih atau salah dalam memasukan pilihan


selain yang ditentukan maka program akan meng-eksekusi
program yang lainnya, dalam program ini akan ditampil
kan kalimat "Anda tidak pesan apa-apa." lalu
meng-eksekusi LABEL keluar yang mengakhiri program }

else
begin
clrscr;
writeLn('Anda tidak pesan apa-apa.');
writeLn('Mungkin Anda tidak Lapar..);
writeLn;
writeLn('Tekan Enter untuk keluar..');
readLn;
goto keluar;

end;

2: { label ke - 2 bila user memilih pilihan a }


clrscr;
writeLn('Pesanan Anda Nasi Putih + Rendang, Terima Kasih.');
writeLn;
write('Pilih Lagi..(y/t) ? ');ReadLn(ulang);
if (ulang='y') or (ulang='Y') then
begin
goto 1;
end
else
begin
goto keluar;
end;

3: { label ke - 3 bila user memilih pilihan b }


clrscr;
writeLn('Pesanan Anda Nasi Putih + Telur Dadar,Terima Kasih.');
writeLn;
write('Pilih Lagi..(y/t) ? ');ReadLn(ulang);
if (ulang='y') or (ulang='Y') then
begin

goto 1;
end
else
begin
goto keluar;
end;

4: { label ke - 4 bila user memilih pilihan c }


clrscr;
writeLn('Pesanan Anda Nasi Putih + Tempe Goreng,Terima Kasih.');
writeLn;
write('Pilih Lagi..(y/t) ? ');ReadLn(ulang);
if (ulang='y') or (ulang='Y') then
begin
goto 1;
end
else
begin
goto keluar;
end;

keluar: { label keluar yang mengakhiri program }

end.
Penulisan label bebas sesuai dengan keinginan anda, bisa sebuah kata atau karakter, yang penting
nama label tidak boleh sama dengan nama variabel, type, atau konstanta yang anda tetapkan.
Bila itu terjadi maka kemungkinan akan terjadi konflik variabel dalam pengeksekuasian
program. Contoh diatas akan terus dilakukan selama anda memilih pilihan yang di tetapkan. Ada
cara yang lebih praktis ketimbang menggunakan LABEL yaitu dengan printah CASE - OF yang
akan dibahas nanti.
4. DEKLARASI PROSEDUR (PROCEDURE DECLARATION)
Deklarasi prosedur adalah sebuah deklarasi yang dibuat dalam program agar bisa digunakan lagi
dalam program, jadi deklarasi prosedur merupakan sebuah SUB PROGRAM yang bisa dipanggil
sewaktu-waktu dalam program bila dibutuhkan. Dalam sebuah program yang terstruktur,
Deklarasi Prosedur ini sangat dibutuhkan agar program menjadi lebih simpel. Untuk mengerti
arti dari PROSEDUR ini saya berikan contoh kasus sebagai berikut : misalkan ada sebuah proses
yang yang harus dikerjakan berulang kali untuk menampilkan kata "SURYATEKNO" , maka
dalam program yang terstruktur kata tersebut disimpan dalam sebuah prosedur yang dapat
dipanggil lagi dimanapun kata tersebut diperlukan.
Contoh program yang menggunakan Deklarasi Prosedur.
uses crt;

{ini adalah prosedur dgn nama s


yang akan menampilkan kata suryatekno}

Procedure s;
begin
write('Suryatekno');
end;

{akhir prosedur}

{program utama}

begin
clrscr;
s; { prosedur yang dipanggil }

WriteLn(' adalah suatu organisasi yang menghimpun');


writeLn('orang-orang yang mempunyai minat sama.');
writeLn;

s; { prosedur yang dipanggil }

writeLn(' juga merupakan sebuah kelompok belajar.');


writeLn;
writeLn('Tekan Enter untuk keluar...');
readLn;
end.
{akhir program utama}
Prosedur mempunyai banyak jenisnya, disini saya hanya akan menjelaskan suatu prosedur yang
mudah-mudah saja agar anda sebagai pemula mengerti dalam menggunakan prosedur ini.
Prosedur yang paling terkenal adalah Prosedur REKURSI (RECURSION PROCEDURE) .
Prosedur ini adalah sebuah prosedur yang menggunakan sendiri prosedurnya, jadi prosedur ini
adalah prosedur yang memakan prosedur . Contoh kasus proses rekursi yang rumit adalah
sebagai berikut :
Anda diminta untuk memindahkan sebuah piringan yang berbeda satu dengan yang lainnya
secara satu persatu dari sebuah tumpukan ke tumpukan yang lainnya, dengan syarat piringan

yang lebih kecil tidak boleh berada dibawah piringan yang lebih besar, dan pemindahan nya
harus satu persatu tidak boleh sekalian. Lihat gambar.
Menara Hanoi
Rekursi yang rumit, disebut juga sebagai MENARA HANOI
Anda harus memindahkan piringan yang berjumlah 20 buah piringan yang berbeda dari menara
A ke menara C, untuk keperluan tersebut Anda diberikan sebuah menara lagi yaitu menara B.
Yang menjadi pertanyaan adalah : Berapa kali Anda memindahkan sebuah piringan yang sama,
dan berapa langkah yang Anda tempuh serta berapa lama Anda memindahkannya ?. Sebagai
bantuan lagi Anda diberikan contoh untuk 2 buah piringan sebagai berikut : Pertama Anda
pindahkan piringan yang ke 2 ke menara B lalu pindahkan piringan ke 1 ke menara C setelah itu
pindahkan piringan ke 2 yang berada di menara B ke menara C selesai ( Ingat piringan yang
lebih kecil tidak boleh berada dibawah piringan yang besar..! ). Sekarang cobalah untuk 20
piringan yang ditugaskan kepada anda !.
Pusing menghitung nya yah..?, kalau pusing berapa langkah yang Anda tempuh untuk tugas itu,
dibawah ini saya berikan contoh program yang memakai prinsip REKURSI untuk menghitung
langkah yang diperlukan. serta akan diperlihatkan piringan mana saja yang akan dipindahkan
terlebih dahulu, Anda bisa saja memasukan 1000 piringan misalnya, tetapi Anda harus sabar
menunggunya, sebab bila Anda memasukan waktu yang diinginkan sebesar 1 detik saja untuk
setiap piringan, berarti Anda harus sabar menunggu program untuk menghitung dan
memperagakan kepada Anda selama 3 Hari. Untuk contoh ini cobalah Anda masukan Tugas
memindahkan piringan diatas dengan bantuan program ini..hehehe malas ni yeee .
Uses crt;
{ Awal Prosedur Rekursi }
procedure MenaraHanoi(Jumlah : Integer;
Sumber,Tujuan,Bantuan : Char;
var Langkah,Jumlah_A,
Jumlah_B,Jumlah_C,Waktu : Integer);
Var
Baris_Sumber,Kolom_Sumber,
Baris_Tujuan,Kolom_Tujuan : Integer;
Begin
if Jumlah > 0 Then

Begin
MenaraHanoi(Jumlah-1,Sumber,Bantuan,Tujuan,
Langkah,Jumlah_A,Jumlah_B,Jumlah_C,Waktu);
Langkah := Langkah+1;
if Sumber = 'A' Then
Begin
Kolom_Sumber := 30;
Baris_Sumber := 24-Jumlah_A;
Jumlah_A := Jumlah_A-1;
End
Else
if Sumber = 'B' Then
Begin
Kolom_Sumber := 40;
Baris_Sumber := 24-Jumlah_B;
Jumlah_B := Jumlah_B-1;
End
Else
Begin
Kolom_Sumber := 50;
Baris_Sumber := 24-Jumlah_C;
Jumlah_C := Jumlah_C-1;
End;

if Tujuan = 'A' Then


Begin
Kolom_Tujuan := 30;
Jumlah_A := Jumlah_A+1;
Baris_Tujuan := 24-Jumlah_A;
End
Else
if Tujuan = 'B' Then
Begin
Kolom_Tujuan := 40;
Jumlah_B := Jumlah_B+1;
Baris_Tujuan := 24-Jumlah_B;
End
Else
Begin
Kolom_Tujuan := 50;
Jumlah_C := Jumlah_C+1;
Baris_Tujuan := 24-Jumlah_C;

End;

Delay(Waktu*1000);

GotoXY(Kolom_Sumber,Baris_Sumber); Write(' ');


GotoXY(Kolom_Tujuan,Baris_Tujuan); Write(Jumlah);
GotoXY(18,24); Write(Langkah);

MenaraHanoi(Jumlah-1,Bantuan,Tujuan,Sumber,
Langkah,Jumlah_A,Jumlah_B,Jumlah_C,Waktu);
End;
End;
{Akhir Rekursi}

{Program Utama}
Var
Jumlah, Langkah : Integer;
Sumber,Bantuan,Tujuan : Char;
I,Baris : Integer;
Jumlah_A,Jumlah_B,Jumlah_C : Integer;
Waktu : Integer;

Begin
ClrScr;
Write('Berapa Piringan Yang akan dipindah ? ');
ReadLn(Jumlah);
Write('Waktu yang Anda inginkan (0-32) detik ? ');

ReadLn(waktu);
ClrScr;
GotoXY(25,24); WriteLn(' Sumber Bantuan Tujuan');
For I:=Jumlah DownTo 1 Do
Begin
Baris := 23-(Jumlah-I);
GotoXY(30,Baris); WriteLn(I);
End;

Langkah := 0;
Sumber :='A';
Bantuan :='B';
Tujuan :='C';
Jumlah_A := Jumlah;
Jumlah_B := 0;
Jumlah_C := 0;

GotoXY(1,24); Write('Jumlah Langkah = ');


MenaraHanoi(Jumlah,Sumber,Tujuan,Bantuan,
Langkah,Jumlah_A,Jumlah_B,Jumlah_C,Waktu);
ReadLn;
End.
{Akhir Program Utama}

5. DEKLARASI FUNGSI (FUNCTION DECLARATE)


Deklarasi fungsi adalah deklarasi gabungan antara deklarasi Prosedur, type dan variabel.
Kumpulan deklarasi ini disediakan oleh pascal untuk mempermudah dalam penyusunan program
sehingga berbentuk sebuah fungsi. Pada sebuah fungsi komponen-komponen dari ketiga
deklarasi tersebut dijadikan satu kesatuan yang dapat digunakan pada program yang majemuk.
Adapun tata cara penulisan deklarasi fungsi adalah sebagai berikut :
Tata Cara Penulisan Deklarasi Prosedur
Tata Cara Penulisan Deklarasi Fungsi
Dari gambar diatas terlihat bahwa ketiga deklarasi yang telah diuraikan sebelumnya dijadikan
satu kesatuan yang lebih simple dan praktis. Untuk lebih jelasnya cobalah Anda ketik di editor
Pascal program dibawah ini, setelah itu Anda jalankan program tersebut dengan perintah RUN.
{ Program contoh Deklarasi fungsi
create by : Suryatekno@2008 }

Function Hasil(A,B,C : longint) : longint;


Begin
Hasil := A*A+B*B+C;
end;

Var X,Y,Z : longint;


Begin
WriteLn('Hasil dari X^2 + Y^2 + Z adalah..?');
Write('Jika Nilai X = ');ReadLn(X);
Write('Dan Nilai Y = ');ReadLn(Y);
Write('Serta Nilai Z = ');ReadLn(Z);
Write('Maka Hasil dari X^2 + Y^2 + Z');

WriteLn(' adalah : ',Hasil(X,Y,Z);


{Hasil - adalah nama fungsi yang dipanggil}
WriteLn;
WriteLn('Tekan Enter untuk Keluar..');
ReadLn;
end.
Dari contoh program diatas, mungkin sebagian dari Anda ada yang bertanya mengapa fungsi
yang dinyatakan dengan variabel-variabel A,B dan C bisa berhubungan dengan Variabel X,Y
dan Z ?. Begini..,Fungsi yang dijabarkan dengan variabel A,B,C hanya merupakan operasi yang
harus dikerjakan oleh fungsi Hasil := A*A+B*B+C; , jadi Variabel A,B dan C tidak bernilai atau
kosong. Sedangkan Variabel X,Y dan Z adalah Variabel Identifier (Pengenal) yang Ada nilainya
dan nilai ini harus dilaksanakan oleh fungsi seperti yang dikehendaki. Untuk lebih jelas lagi
Sekarang cobalah Anda rubah baris program WriteLn(' adalah :,Hasil(X,Y,Z); dengan mengganti
variabelnya dengan A,B dan C kemudian Anda RUN lagi, maka COMPILER PASCAL akan
mengeluarkan peringatan bahwa variabel A,B,dan C tidak diketahui identitasnya (Unknow
Identifier), sebab A,B dan C tidak bernilai. Kalau diterjemahkan dalam konteks bahasa manusia,
perintah Hasil(X,Y,Z) adalah : Kerjakan Nilai yang ada dalam kurung, yang nilainya dimasukan
melalui input keyboard dengan operasi Hasil , Dimana operasi tersebut adalah A*A+B*B+C
dengan A sebesar X, B sebesar Y, dan C sebesar Z.. Paham..!!, Kalau belum paham juga saya
menyerah.., tidak bisa menerangkan lagi kepada Anda secara detail mengenai fungsi ini, dan
dapat membuat Anda mengerti.
Sejauh ini Anda sudah disuguhkan dengan contoh-contoh program, contoh-contoh tersebut saya
rancang sedemikian rupa agar Anda yang pemula dalam mempelajari Bahasa Pemrograman
dapat mengikuti tutorial ini. Cobalah Anda buat program-program sejenis tapi kali ini atas
pemikiran dan cara-cara ANda sendiri dan tentu saja materi-mteri nya disesuaikan dengan
contoh-contoh program yang telah Anda pelajari.
Baiklah sekarang mari kita lanjutkan pembahasan kita mengenai uraian Program pengenalan
(TESTPROG.PAS). Selanjutnya dalam program tersebut ada baris-baris program berikut :
While (pilih='y') or (pilih='Y') Do
Begin
..........
..........
..........
end;
end.
Pada bagian ini dinamakan perulangan (LOOPING). Looping sangat sering digunakan dalam

sebuah program yang majemuk, arti looping itu sendiri adalah memulai atau mengulang lagi
suatu proses program yang sama jika kondisi dan syarat-syarat nya terpenuhi. Ada beberapa
struktur perulangan yang perlu Anda ketahui yaitu :
1. Perulangan dengan perintah For - To - Do
2. Perulangan dengan perintah While - Do
3. Perulangan dengan perintah Repeat - Until.
Sekarang marilah kita bahas mengenai struktur perulangan ini satu persatu.
1. Perulangan For - To - Do
Struktur perulangan For - To - Do ada dua jenis yaitu :
a. Perulangan For Positif.
Bila variabel perulangan dilakukan dengan cara penghitungan dari nilai yang kecil ke nilai yang
besar, maka struktur perulangan tersebut dinamakan perulangan for positif dengan struktur
sebagai berikut :
Struktur FOR TO DO Positif
Struktur FOR TO DO Positif.
Contoh penggunaan perulangan For-To-Do positif ini adalah bila kita menampilkan sebuah list
dari urutan yang terkecil sampai yang terbesar. Contoh program dibawah ini akan menampilkan
angka 1 sampai 10 secara berurutan.
{ program menghitung urutan 1-10, by : suryatekno }
uses crt;
Var
X : Integer; {variabel X menjadi acuan dg type Integer}
Begin
clrscr;
For X := 1 To 10 Do
Begin
WriteLn(X);
End;

writeLn('tekan Enter untuk keluar');


readln;
End.

b. Perulangan For Negatif.


Bila variabel perulangan dilakukan dengan cara perhitungan dari nilai yang besar ke nilai yang
kecil, maka struktur perulangan tersebut dinamakan perulangan for negatif. Struktur perulangan
for negatif adalah sebagai berikut.
Struktur FOR TO DO Positif
Struktur FOR TO DO Negatif.
Contoh perulangan For negatif ini adalah bila kita ingin menampilkan suatu hitungan mundur
dari yang besar ke yang kecil. Contoh program dibawah ini adalah kebalikan dari contoh for
positif diatas, yaitu menampilkan angka 10 sampai 1 secara berurutan.
{ program menghitung mundur by : suryatekno }
uses crt;
Var
Y : Integer; {variabel Y menjadi acuan dg type Integer}
Begin
clrscr;
For Y := 10 DownTo 1 Do
Begin
WriteLn(Y);
End;
writeLn('tekan Enter untuk keluar');
readln;

End.

2. Perulangan While - Do
Perulangan While-Do adalah suatu perulangan atau looping yang akan terus menerus dilakukan
selama kondisi yang disyaratkan terpenuhi, Jadi selama persyaratan yang dicantumkan adalah
TRUE (BENAR) maka loop ini akan terus berjalan tak ada hentinya. Untuk itu berhati-hatilah
dalam memberikan prasyarat sebuah perulangan while-do, bisa-bisa program itu tidak akan bisa
di hentikan.
Seperti pada contoh program TESTPROG.PAS yang pertama kali Anda buat, Disitu parameter
while-do di berikan nilai TRUE untuk huruf Y, jadi selama Anda menekan huruf Y, maka
program itu akan terus dilakukan sampai Anda menekan tombol yang lainnya.
Mari Kita lihat lagi listing Program TESTPROG.PAS yang sudah Anda buat pertama kali.
{ Program : Input dari keyboard dan
Menghitung operasi matematika }
{ Create by : Komarudin_surya@suryatekno }

uses Crt;
var
x,y,z : longint;
lagi : char;
namak : string[20];

begin

lagi := 'y';
{awal perulangan dengan nama Lagi }

while (lagi = 'y') or (lagi = 'Y') do


begin { --> index awal perulangan}
clrscr;
write('Siapa Nama Anda..?'); ReadLn(namak);
writeLn;
writeLn('Hallo ',namak,', Coba kamu masukan nilai x,y dan z ');
writeLn('pada operasi matematika ini.');
writeLn;
writeLn('Operasi matematika X^2 + y^2 + z =..... ');
write('masukan nilai x..= '); ReadLn(x);
write('masukan nilai y..= '); ReadLn(y);
write('masukan nilai z..= '); ReadLn(z);
writeLn;
writeLn('nilai operasi x^2 + y^2 + z adalah : ',x*x+y*y+z);
writeLn;
write('Mau hitung lagi apa tidak (y/t), ',namak,' ? ');
readLn(lagi);
end; { --> index akhir perulangan}
{akhir perulangan dengan nama Lagi }
end.
Pada listing TESTPROG.PAS diatas, saya beri tambahan keterangan. Nah selama Anda
memasukan variabel Lagi dengan huruf Y maka loop while menjadi true sehingga program akan
balik lagi ke index awal (Begin pertama sesudah perintah while). begitu saja terus menerus
sampai Anda memasukan variabel Lagi dengan karakter selain Y.
Berikut ini adalah salah satu program yang menggunakan Perulangan While-Do yang salah,

sebab tidak ada ujungnya dan tidak bisa dihentikan. Cara menghentikan nya dengan menutup
prompt command bila Anda menjalankan Pascal dari mode command window, atau reset
komputer Anda bila menggunakan DOS Prompt.
{ Ini adalah contoh program yang
menggunakan perulangan While-Do
yang salah }

Var X : integer;

Begin
X := 1;
While X=1 Do
Begin
write(X,' .');
WriteLn('Salah Euy.., Muir Wae Yeuh..!');
End;
End.
Contoh Program diatas sebagai peringatan kepada Anda agar berhati-hati dalam memberikan
parameter untuk while-do. pada program diatas X diberikan nilai awal 1 ( X := 1 ), selanjutnya
perulangan while-do ( While X=1 Do ) juga diberikan nilai 1, jadi X selalu TRUE sehingga
perulangan akan dilakukan terus tanpa henti sampai Anda menutup atau mereset komputer Anda.
Perhatikan baik-baik dalam menggunakan perulangan ini jangan sampai kesalahan yang kecil
akan berakibat fatal bila tidak teliti. Kesalahan yang legendaris dalam pemrograman pascal
pernah terjadi pada sekitar tahun 1973 dimana saat itu seorang programer membuat suatu
aplikasi, yang akhirnya menjadi sebuah VIRUS yang dibuat tanpa sengaja (Virus itu mendelete
semua program yang berektensi COM) tanpa bisa dihentikan oleh programernya sendiri sehingga
programer tersebut dituntut untuk membayar kerugian perusahaan sebesar US$ 1.750.000,- ..
3. Perulangan Repeat - Until
Perulangan Repeat-Until hampir mirip dengan perulangan while-do, bedanya adalah kalau while-

do perulangan nya dilakukan dari tanda begin pertama sampai end yang pertama setelah perintah
while do , sedangkan perulangan repeat-until perulangan nya diakhiri dengan perintah until.
Lihat struktur repeat until dibawah ini.
R E P E A T --- Perintah perulangan
|
|
S T A T E M E N --- Expresi Perulangan
|
|
U N T I L PARAMETER --- Akhir perulangan
Yang di ikuti oleh
Parameter yang
diulang
Jadi pada perulangan repeat-until ini, pertama kita taruh perintah repeat diatas statemen-statemen
yang akan diulang kemudian ditutup dengan perintah until yang diikuti oleh parameter untuk
perulangan. Untuk lebih jelas lihat contoh program dibawah ini yang menggunakan perulangan
repeat-until.
{ Program : Tabel hasil perkalian
Creat by : Suryatekno@2008 }

uses crt;

Var
X,Y,Z : integer;

Begin

WriteLn(' TABEL PERKALIAN ');


WriteLn('==============================');
WriteLn('| X | Y | Hasil |');
WriteLn('==============================');

X := 10;
Repeat {awal perulangan X}
Y := 10;
Repeat {awal perulangan Y}
Z = X*Y;
WriteLn(X:5, Y:9, Z:10);
Y := Y+1;
Until Y > 13; {akhir perulangan Y}
X := X+1;
Until X > 13; {akhir perulangan X}

WriteLn('=============================');
WriteLn;
WriteLn('Tekan Enter untuk Keluar');
ReadLn;
End.
Pada contoh program diatas, perulangan repeat-until digunakan untuk membuat sebuah tabel
perkalian antara X dan Y, dimana nilai awal untuk X dan Y adalah 10, dan akan bertambah 1
setiap kali terjadi perulangan ( X := X+1 dan Y := Y+1 ) sampai nilai akhir yang ditentukan yaitu

13. Perulangan akan terjadi sebelum melebihi nilai akhir yang ditentukan ( 13 ). Jadi Perintah
UNTIL bila kita terjemahkan adalah : Sebelum melebihi . Lihat hasil jalannya program seperti
dibawah ini.
Hasil program Perkalian
Hasil Jalannya Program perkalian.

from: ballz.ababa.net
ARTIKEL PENGERTIAN TI
5 komentar em CARA CEPAT BELAJAR PASCAL
Back to form

29 Oktober 2011 02.00


belajar Disse:
wah ,ini tempat belajar pascal yang menarik
delete

16 November 2011 09.11


kirana aguilar Disse:
iya.... moohon masukannya,.. gan... :)
delete

17 Oktober 2012 19.59


Muhammad Achyar Disse:
makasi bnyak gan......saluuuttt
delete

27 Maret 2013 01.19


nia Disse:
tolong doms..
Saya mau tau bagaimana cara tercepat bisa mengerti bahasa pascal untuk formula seperti
saya?
thanks before
delete

18 November 2013 18.15


Anonim Disse:
http://www.suryatekno.com/delphi1.php#.Uoq7WdIwon5 ngopi dari sinikah ?
delete
Poskan Komentar
Posting Lebih Baru Posting Lama Beranda

Popular posts

PENGERTIAN Multiprogramming, Multiprocessing, Multitasking, Timesharing


1. Multiprogramming Multiprogramming adalah kegiatan menjalankan beberapa program
pada memori pada satu waktu. Untuk meningkatkan keseluruh...

CARA CEPAT BELAJAR PASCAL


Belajar Dasar Turbo Pascal Instalasi PASCAL Oke kita langsung saja pada materi
pertama kita yaitu pengenalan bahasa pascal agar Anda muda...

PENGARUH KOMPETENSI SUMBER DAYA MANUSIA TERHADAP KINERJA


KARYAWAN
BAB I PENDAHULUAN 1.1. Latar Belakang Dalam era globalisasi, masalah sumber
daya manusia menjadi sorotan maupun tumpuan bagi perusahaan ...

FUNGSI TEKNOLOGI INFORMATIKA


1. Tujuan TI - Tujuan TI adalah untuk memecahkan masalah, untuk membuka
kreatifitas, dan untuk membuat orang menjadi lebih efektif dan e...

Blog Archive

2011 (41)
o Desember (4)
o November (26)
o Oktober (11)
Soal-Soal dan Pembahasan SNMPTN Matematika IPA tah...
CARA CEPAT BELAJAR PASCAL
PAUL DIRAC : Si Jenius Dalam Sejarah Fisika
KESEIMBANGAN BENDA PADA TITIK BERAT NYA
AWAL FISIKA
PENGARUH KOMPETENSI SUMBER DAYA MANUSIA
TERHADAP K...
MENGELOLA SUMBERDAYA MANUSIA DALAM ORGANISASI
PENGERTIAN Multiprogramming, Multiprocessing, Mul...
FUNGSI PONTER PADA PASCAL
FUNGSI TEKNOLOGI INFORMATIKA
Makalah Kewarga negaraan
Diberdayakan oleh Blogger.

Campus Blue Copyright 2011 -- Template created by KESEHATAN -- Powered by Blogger

Anda mungkin juga menyukai