Modul Pascal
Modul Pascal
Kompetesi Dasar :
Mahasiswa dapat memahami konsep dasar program, pemrograman dan bahasa
pemrograman
Mahasiswa dapat mengetahui perkembangan bahasa pascal
Mahasiswa dapat mmenginstall program Turbo Pascal 7.0
Mahasiswa memahami konsep dasar pemrograman dengan menggunakan Turbo
Pascal 7.0
Istilah program atau program komputer mungkin sudah tidak asing lagi
suku dan golongan, komputer juga memiliki bahasa yang dikenal dengan
manusia sedangkan komputer hanya mengerti bahasa satu bahasa saja yitu
bahasa mesin. Bahasa mesin terdiri dari digit biner yaiti 0 dan 1. Bahasa
yang lain untuk membantu manusia membuat kode program yang dikenal
2. Language Translator
Bahasa tingkat tinggi tidak serta merta dimengerti oleh komputer karena
komputer hanya mengerti bahasa mesin. Untuk mengatasi hal tersebut kita
PASCAL, maka language translator yang kita gunakan juga harus sama
sebelumnya akan tetap dieksekusi. Hal ini sangat berbeda dengan compiler
penerjemah untuk menyapa salah seorang warga yang anda temui. Daftar
kalimatnya adalah :
1. Selamat Pagi
Konsep Interpreter
Konsep Compiler
3. Langkah Pemrograman
pemrograman adalah :
5. Menjalankan program
program dapat dikompilasi dahulu untuk mengetahui baris mana saja yang
logika, kesalahan pada tahap ini umumnya menimbulkan bug (baca : bag).
debugging.
B. Sejarah Pascal
Pascal adalah bahasa tingkat tinggi (high level language) yang orientasinya
pada segala tujuan, dirancang oleh Profesor Niklaus Wirth dari Technical
terhadap Blaise Pascal, ahli matematik dan filosofer terkenal abad 17 dari
pertama kali untuk komputer CDC 6000 (Control Data Corporation) yang
terstruktur.
Standar Pascal adalah bahasa Pascal yang didefinisikan oleh K.Jensen dan
Niklaus Wirth. Penerapan nyata dari standar Pascal banyak yang berbeda
dengan seperti apa yang telah didefinisikan oleh K. Jensen dan Niklaus Wirth.
Pascal), Apple Pascal, Turbo Pascal dan lain sebagainya. Sampai saat ini untuk
Pascal yang paling populer dan banyak digunakan. Kompiler Turbo Pascal
layaknya. Selain itu Turbo Pascal mengikuti definisi dari standar Pascal seperti
yang didefinisikan oleh K. Jensen dan Niklaus Wirth di Pascal User Manual dan
Report. Turbo PASCAL adalah copyright dari Borland Inc. dan dapat digunakan
yang dikeluarkan oleh Borland International. TURBO PASCAL 7.0 dirilis pada
File Executable)
Control Panel kemudian menu Add and Remove Program kemudian Add
Turbo Pascal 7.0 yang akan anda install kemudian pilih Finish
Latihan Bab 1
pemrograman ?
3. Apa yang dimaksud dengan language translator dan jelaskan cara kerjanya!
Kompetesi Dasar :
Mahasiswa mengenal editor PASCAL untuk membuat kode program
2. Mahasiswa dapat menggunakan editor PASCAL untuk membuat kode program
Setelah program Turbo Pascal 7.0 kita install di komputer kita, langkah
2. Jalankan program Turbo Pascal 7.0 dari desktop anda atau Start --
3. Akan muncul tampilan awal Editor Turbo Pascal 7.0 sebagai berikut :
kita buat.
Turbo Pascal mepunyai sebaris menu yang berada dibagian paling atas yang
terdiri dari :
1. File
pemanggilan file.
2. Edit
3. Search
a. Find, untuk mencari atau perintah yang tertulis pada program yang
sedang dikerjakan
c. Search Again, mencari lagi kata atau perintah yang tertulis pada
terakhir
4. Run
b. Step Over, Step over ini memiliki cara kerja yang hampir sama
dengan Trace Into, hanya saja jika statement adalah sebuah prosedur
ke subrutin
5. Compile
(mencari kesalahan) atau bisa juga kita bilang kalau program yang
perintah kita
file yang primer telah diberi nama, maka file ini akan dikompilasi,
jika tidak maka file yang terakhir yang sedang dimuat di editor akan
c. Build, Perintah ini mirip dengan perintah make, hanya saja perintah
.PAS akan dikompilasi pada saat make [F9] atau build [Alt + C + B]
diaktifkan.
ukuran kode sumber [dalam sumber dan baris], ukuran file .EXE
b. Call stack, pada saat anda melakukan debugging, suatu jendela yang
7. Tools
function. Semua perintah yang terdapat dalam turbo pascal disimpan dalam
1. System
awal program. Berikut ini contoh perintah yang masuk dalam unit
system.
Tabel 2.1 Contoh Perintah Unit System
Perintah Fungsi
INT Mengabaikan angka dibelakang koma atau membulatkan
angka.
Frac Mengambil nilai desimal suatu angka
Exp Mencari ekponensial dari suatu bilangan
Ln Mencari logaritma Natural dari suatu bilangan
Pi Memasukkan bilangan 3.14
Sin Mencari SINUS dari suatu bilangan dalam satuan radian
Cos Mencari COSINUS dari suatu bilangan dalam satuan radian
Abs Mencari absolute (menghilangkan tanda negatif) dari suatu
bilangan
Inc Menambahkan angka dengan angka 1 atau angka lain sesuai
dengan perintah
Dec Mengurangi dengan angka 1 atau angka lain sesuai dengan
perintah
Odd Melakukan pelacakan apakah suatu bilangan ganjil atau
tidak
Succ Untuk mencari pengikut (successor atau sesudahnya) dari
suatu angka atau argumen
Pred Untuk mencari pendahulu (predecessor atau argumen
sebelumnya) dari suatu angka atau argumen
Chr Perintah untuk mencetak karakter tambahan atu alzim
disebut Kode ASCII
Ord Untuk mencari letak suatu argumen atau menacri nomor
Crt harus menggunakan Uses Crt pada awal program. Berikut ini
Perintah Fungsi
ClrScr Perintah untuk membersihkan layar
GoToXY Untuk meletakkan pada posisi tertentu di layar
TextColor Untuk membuat warna pada teks
TextBackGround Memberi warna latar belakang pada teks
TextAttr Gabungan dari TextColor dan TextBacground
Sound Untuk membuat suara
No Sound Untuk menghentikan suara
Delay Untuk membarikan waktu tunda
KeyPressed Untuk mengetahui sembarang tombol sudah ditekan
Readkey Untuk membaca tombol yang ditekan oleh pemakai
Window Untuk membuat jendela teks pada layar
ClrEol Untuk menghapus posisi kursor hingga akhir baris
3. DOS
4. WinDOS
file-file rutin
5. Graph
pascal 3.0
7. Overlay
Unit yang berisi procedure, function dan symbol untuk yang digunakan
8. Printer
didalam program
9. Turbo3
directory kemudian ketikan Direktori kerja anda dan tekan Enter atau
klik OK.
(b) Pilih sub menu New sehingga tampil layar sebagai berikut :
program coba_dulu;
uses crt;
begin
clrscr;
write (Program Pascalku);
readln;
end.
Kode program yang sudah kita ketik atau dimodifikasi akan lebih baik
jika langsung disimpan, hal ini untuk berjaga-jaga jika listrik tiba-tiba
mati atau karena sebab yang lain. Cara menyimpan program adalah
sebagai berikut :
(2) Pilih Save kemudian beri nama LAT1 dan tekan Enter
4. Menjalankan Program
Program yang telah ditulis pada editor pascal dapat dijalankan atau
(2) Pilih RUN atau perintah tersebut dapat diganti dengan menekan
Pascal
(2) Pilih Output kemudian tampil output program dan klik di area
6. Mengkompilasi Program
tanda (;) pada akhir baris pertama program yang telah dibuat,
(2) Pilih Open (F3) kemudian cari dimana lkasi penyimpanan file dan
File .EXE atau executable file adalah program yang dapat dijalankan
Turbo Pascal terlebih dahulu. Untuk membuat file. EXE dapat dilakukan
dengan cara :
(2) Pilih Directories, kemudian ubah direktori EXE dan TPU menjadi
(3) Pilih Menu Option lagi dan Pilih Sub Menu Save
(4) Pilih Menu Compile kemudian sub menu Compile atau tekan Alt +
F9 bersamaan
(5) Buka direktori kerja kita lewat Windows Explorer, akan tampak
Untuk keluar dari editor pascal dapat dilakukan dengan cara berikut :
(1) Pilih Menu File (Alt+F) kemudian pilih sub menu Exit
Latihan Bab 2
2. Apa yang dimaksud dengan Unit dan apa fungsi unit Crt?
3. Apa yang kau ketahui tentang Unit System dan mengapa untuk
5. Apa yang dimaksud dengan File .EXE dan bagaimana cara membuatnya ?
Kompetesi Dasar :
Mahasiswa dapat mengetahui dan memahami susunan program pascal
Mahasiswa dapat membuat program dengan menggunakan bahasa pascal
Susunan Minimum :
Begin
Statement;
End.
Susunan Lengkap :
Program (Nama/Judul Program); Judul
Uses (Nama Unit);
Label (Label);
Const (Konstanta);
Type (Type); Deklarasi
Var (Variabel);
Procedure (Prosedur);
Function (Fungsi);
Begin
Statement; Tubuh
End.
Judul Program
Judul program digunakan sebagai nama atau penanda unik terhadap suatu
program.
akan kita gunakan dalam membuat program pascal. Adapun jenis deklarasi
1. Uses
tipe data, variable, procedure dan function. Dalam pascal ada beberapa
unit yang tela disediakan antara lain : System, Crt, Dos, WinDos, Printer,
2. Label
Contoh:
Program Contoh_Label;
Uses Crt;
Label 10, 20, Keluar;
Begin
clrscr;
writeln('STMIK Duta Bangsa');
writeln('Surakarta');
goto 20;
10:
writeln('Program Pascal');
goto Keluar;
20:
Writeln('Ayo Belajar Bersama');
goto 10;
keluar:
readln;
end.
3. Const
Adalah definisi nilai dengan membatasi nilai awal maupun nilai akhir
Contoh Procedure :
Program Contoh_Procedure;
Uses Crt;
Procedure Tambah (A,B:byte; Var C:integer);
begin
C:=A+B;
end;
{****** Program Utama*******}
Var hasil:integer;
begin
Tambah(4,5,hasil);
write('4',' ','+','5',' ','=',' ',hasil);
readln;
end.
7. Function
Contoh Function :
Program Contoh_Function;
Uses Crt;
Function Tambah(A,B:byte):integer;
begin
Tambah:=A+B;
end;
{****** Program Utama*******}
Var hasil:integer;
bil1,bil2:byte;
begin
B. HotKey
Tombol Fungsi
Ctrl + F9 Compile dan Run
Alt + F9 Compile
F2 Save File
F3 Open File
Alt + F3 Close Active Window
Alt + F5 OutPut
F6 Toggle Active Window
Shift + panah Blok
Ctrl + Ins Copy Blok
Shift+ Ins Paste Blok
Shift+ Del Cut Blok
Alt + Backspace Undo
Alt + X Keluar dari editor
1. Akhir sebuah program Pascal ditandai dengan tanda baca titik (.) setelah
2. Tanda titik koma (;) merupakan pemisah antar instruksi satu dengan
lainnya.
4. Bersifat non case sensitive atau tidak membedakan huruf besar dan huruf
Contoh :
1. Simbol Dasar
z.
{ } () [ ]
Reserved Word adalah suatu kata yang secara mutlak tidak boleh
word ini tidak boleh didefinisikan ulang oleh pemakai, sehingga tidak
3. Identifier (penyebut)
terdiri atas :
ABS LN
ARCTAN ODB
BOOLEAN PRED
CHAR ROUND
CHR READ
COS READLN
EOF SQR
EOLN SQRT
EXP SUCC
Dan masih banyak lagi.
a. terdiri dari gabungan huruf dan angka dengan karakter pertama harus
signifikan.
Contoh :
Tabel 3.2 Contoh Pemberian Nama Identifier
Identifier Keterangan
GajiKaryawan Benar
No_Mhs Benar
P3K Benar
1X Salah, karakter pertama harus huruf
A&B Salah, tidak boleh mengandung simbol khusus
AB Salah, tidak boleh mengandung blank
1. Writeln
dapat menerima argumen bertipe data dasar (real, integer) dan bahkan
string. Contoh :
Writeln(5.5); {tipe data real}
Writeln(67); {tipe data integer}
Wrriteln(false); {tipe data boolean}
Writeln(K); {tipe data Char}
Writeln(STMIK Duta Bangsa) {tipe data string}
2. Write
perintah write dan writeln adalah letak kursor setelah text ditampilkan
Contoh :
Program Contoh_Write;
Uses Crt;
Begin
Clrscr;
Write (STMIK DUTA BANGSA SURAKARTA);
Readln;
End.
Jalankan dan apa yang terjadi?
Program Contoh_Writeln;
Uses Crt;
Begin
Clrscr;
Writeln (STMIK DUTA BANGSA SURAKARTA);
Readln;
End.
Jalankan dan apa yang terjadi?
Dan
tampilan bilangan pada layar sesuai dengan notasi yang kita pakai
sehari-hari. Hal ini sangat penting untuk memperjelas hasil kelaran dari
suatu progra,m, apalagi jika bilang bertipe data real. Untuk bilang tipe
Untuk tipe data real dapat kita format dengan perintah beikut :
Writeln(data:lebar_data:lebar_desimal);
Contoh :
Writeln(1253.53:5:2);
Contoh :
1253.53
4. GotoXY
5. Readln
Fungsi ini berarti meminta input nilai dari keyboard dan berfungsi
Contoh :
Program Contoh_3;
Uses Crt;
Var nama:string[25];
begin
Clrscr;
gotoXY(25,10);
Write('Masukkan Nama Anda :');
readln(nama); {menerima input dari user}
gotoXY(15,15);
Write('Saudara',' ',nama,' ','Anda Memasuki Dunia Tanpa Batas');
GotoXY(15,17);
Write('Anda Sudah Siap ???');
readln; {berhenti sebentar sampai tekan ENTER}
end.
6. TextColor
7. TextBackground
Fungsi perintah ini adalah untuk memberi warna latar belakang dari
suatu tulisan.
Contoh :
Program Contoh_5;
Uses Crt;
Var nama:string[25];
begin
Clrscr;
gotoXY(25,10);
textcolor(13);textbackground(1);
Write('Masukkan Nama Anda :');readln(nama);
gotoXY(15,15);
textcolor(12);textbackground(3);
Write('Saudara',' ',nama,' ','Anda Memasuki Dunia Tanpa Batas');
GotoXY(15,17);
textcolor(14); textbackground(2);
Write('Anda Sudah Siap ???');
readln;
end.
Kode Warna
0 Black
1 Blue
2 Green
3 Cyan
4 Red
5 Magenta
6 Brown
7 lightgray
8. DelLine
Digunakan untuk menghapus satu baris pada layar pada posisi kursor.
9. InsLine
10. Readkey
11. KeyPressed
12. Sound
Contoh :
Program Contoh_Suara;
Uses Crt;
Var j :integer;
begin
Clrscr;
gotoXY(25,10);
textcolor(14);
Write('Anda Sudah Siap ???');
j:=10;
textAttr:=7;
textcolor(14);gotoxy(15,20);
Write('Tekan Sembarang Tombol untuk keluar....');
while not keypressed do
begin
G. Komentar
Program yang kita buat, bukan hanya dibaca oleh komputer melainkan
bisa juga dibaca oleh orang lain. Karena itu, kejelasan program menjadi
satu hal yang penting agar program bapat dimengerti oleh orang lain atau
pemrogram itu sendiri. Kejelasan program akan menolong anda jika suatu
saat anda lupa apa maksud program yang telah anda buat. Untuk
Komentar adalah suatu tulisan pada program yang tidak berarti apa-
apa pada komputer tetapi sangat berguna bagi orang karena berfungsi
Contoh :
{------------ Menulis Program Pascal ------------}
{Program ini adalah contoh program pascal sederhana}
{Oleh : }
{NIM : 080101001}
{Nama : Abram}
Latihan Bab 3
Program 2
Program Coba2;
Begin
Clrscr;
Write(Halo);
Readln;
End;
Program 3
Program Coba3;
Var mod:integer;
Begin
Clrscr;
Write(angka :,mod);
Readln;
End;
Kompetesi Dasar :
Mahasiswa dapat mengetahui dan menggunakan tipe data yang ada dalam bahasa
pemrograman pascal
Mahasiswa dapat mengetahui dan menggunakan jenis operator yang ada dalam
bahasa pemrograman pascal
merupakan tipe data dasar yang sering dipakai oleh program, meliputi:
tanda baca), dan boolean (logika). Untuk data integer dan real masing-
a. Bilangan Integer
merupakan tipe data berupa bilangan bulat, terbagi atas beberapa kategori
seperti terlihat dalam tabel 1. tabel 1 menunjukkan jenis data, ukuran dalam
memori dan rentang nilainya. Berikut ini adalah rentang nilai tipe data
integer :
Tabel 4.1 Tipe Data Integer
b. Bilangan Real
dituliskan secara biasa atau model scientific . Contoh bilangan real: 34.265
c. Char
Tipe data ini menyimpan karakter yang diketikkan dari keyboard, memiliki
266 macam yang terdapat dalam tabel ASCII (American Standard Code for
Information Interchange). Contoh: 'a' 'B' '+', dsb. Yang perlu diingat bahwa
data ini memerlukan alokasi memori sebesar 1(satu) byte untuk masing-
masing data.
Merupakan tipe data logika, yang berisi dua kemungkinan nilai: TRUE
(benar) atau FALSE (salah). Turbo Pascal for Windows memiliki tiga macam
jenis ini yaitu: Boolean, WordBool, dan LongBool. Tipe boolean memakai
array, tetapi karena string memiliki kekhasan tersendiri sebagai array dari
a. String
karakter. Ukuran Tempat untuk tipe data ini adalah 2 s/d 256 byte,
[konstanta] atau string. Bila ukuran string tidak didefinisikan maka akan
defaultnya. Misalkan
var kata: string [20]; atau var kata: string; karena string merupakan array
Syntax : length(s)
Contoh : n:=length(s);
Syntax : copy(s,dari,banyaknya)
Syntax : Pos(substr,s)
Syntax : val(strvar,numvar,errorcode)
Syntax : str(numvar,strvar)
Syntax : concat(s1,s2,...,sn)
Syntax : insert(asal,target,indek)
Syntax : delete(s,i,n);
menormalkannnya.
b. Subrange
Adalah suatu range yang menunjukkan nilai terkecil dan nilai terbesar yang
c. Enumerated
Atau tipe data skalar menunjukkan kumpulan dari nilai yang urutannya
sudah pasti. Nilai dari tipe yang dideklarasikan ini akan diwakili dengan
d. Tipe File
File atau berkas adalah kumpulan sejumlah komponen yang bertipe data
luar.
e. Tipe Pointer
B. Operator
1. Aritmatika
Tabel 4.3 Operator Aritmatika
3. Relasional
Tabel 4.5 Operator Relasional
Tipe Hasil
Operator Operasi Tipe Operand
Operasi
= Sama dengan tipe sederhana, string, pointer dan set boolean
<> Tidak sama dengan tipe sederhana, string, pointer dan set boolean
< Lebih kecil dari tipe sederhana, string boolean
> Lebih besar dari tipe sederhana, string boolean
<= Lebih kecil atau = tipe sederhana, string boolean
>= Lebih besar atau = tipe sederhana, string boolean
4. Set
Tabel 4.6 Operator Set
Latihan Bab 4
buah bilangan positif. Berikut ini diberikan contoh yang diinginkan bila
Masukkan Bilangan 1 : 15
Masukkan Bilangan 2 : 4
Hasil Operasi
***********************
15 + 4 = 19
15 4 = 11
15 * 4 = 60
Reamur : 80
Fahrenheit : 212
Kelvin : 373
(kg), Ons dan gram. Misal kita masukkan angka 1550 maka bilangan
Kompetesi Dasar :
Mahasiswa dapat memahami dan menggunakan logika percabangan dengan
menggunakan cara IF dalam berbagai variasi
Mahasiswa dapat memahami dan menggunakan logika percabangan dengan
menggunakan cara CASE
Mahasiswa dapat memahami dan menggunakan logika AND dan OR
A. Percabangan
kondisi tertentu. Percabangan digunakan bila suatu saat kita harus memilih
pada suatu kondisi tertentu. Percabangan dalam Turbo Pascal ada dua bentuk :
1. Bentuk IF
Struktur percabangan if..else memiliki satu buah kondisi yang akan diuji
kebenarannya dan dua buah pernyataan. Jika hasil pengujian bernilai benar,
maka program akan melakukan pernyataan untuk yang benar, dan jika
Contoh :
Program Contoh_IF2;
uses crt;
Var nilai:byte;
begin
clrscr;
textcolor(13);
2. Bentuk Case
Struktur case adalah generalisasi struktur if, kalau pada struktur if hanya
mnyediakan dua pilihan yaitu benar dan salah namun dalam struktur case
Bentuk umum:
Case kondisi of
Kasus 1 : perintah 1;
Kasus 2 : perintah 2;
Kasus n : perintah n;
End;
Atau :
Case kondisi of
Kasus 1 : perintah 1;
Kasus 2 : perintah 2;
Kasus n : perintah n;
Else
Perintah_lainnya;
End;
Bentuk Case juga dapat digunakan untuk kondisi yang berupa range yang
mempunyai nilai awal dan nilai akhir dengan perintah yang lebih ringkas.
tetapi dibutuhkan dua syarat atau lebih. Untuk dapat menggunakan syarat
tersebut kita bisa menggunakan AND atau OR. Pernyataan AND digunakan
jika syarat harus terpenuhi semuanya dan pernyataan OR digunakan bila salah
Daftar Pustaka :
1. Ubahlah sistem penilaian Model Case (Studi Kasus Nilai hal. 54) diatas
dengan Model IF
2. Buatlah program untuk mendeteksi bilangan yang dimasukkan adalah
bilangan ganjil, bilangan genap ! (gunakan IF)
3. Buatlah program yang dapat mendeteksi angka yang anda masukkan
a. Negatif jika angka kurang dari 0
b. Positif jika angka lebih dari 0
c. Nol bila angka sama dengan 0 (gunakan IF)
4. Apakah program nomor 2 dan 3 dapat diganti dengan menggunakan CASE?
Buatlah programnya !
Kompetesi Dasar :
Mahasiswa dapat memahami konsep perulangan dengan menggunakan FOR,
WHILE dan REPEAT
Mahasiswa dapat menyelesaikan soal dengan menggunakan metode
pengulangan FOR, WHILE dan REPEAT
Perulangan (iterasi) adalah proses yang berulang. Iterasi selalu ada dalam
dibanding manusia, yaitu mampu melakukan hal yang sama berulang kali
tanpa kesalahan akibat bosan atau lelah. Dengan perulangan, program menjadi
lebih pendek dan sederhana. Dalam Pascal dikenal tiga macam perintah
1. Struktur For .. Do
a) Perulangan Positif
Do, jika perintah yang diulang lebih dari satu perintah maka bentuk
umumnya menjadi :
For Counter:= nilai_awal To nilai_akhir Do
Begin
Perintah1;
Perintah2;
Perintah3;
End;
Berikut ini adalah contoh-contoh program dengan menggunakan For
(perulangan positif) :
Program ContohFor1;
Uses Crt;
var i:integer;
Begin
clrscr;
for i:= 1 to 10 do
writeln(STMIK DUTA BANGSA SURAKARTA);
readln;
end;
Contoh program di atas akan menghasilkan tulisan STMIK DUTA
Contoh :
Program For_2; Program For_3;
Uses crt; Uses crt;
var i,j:integer; var i,j:integer;
begin begin
j:=0; j:=0;
clrscr; clrscr;
for i:= 1 to 10 do for i:= 1 to 10 do
j:=j+2; begin
write(j,' '); j:=j+2;
readln; write(j,' ');
end. end;
readln;
demikian ????
b) Perulangan Negatif
demikian ????
Program TampilWarna;
Uses Crt;
Begin
Clrscr;
For i:= 1 to 10 do
Begin
Textcolor(i);
End;
Readln;
End.
Catatan : variabel counter, nilai awal dan nilai akhir haruslah tipe
bilangan bulat jadi tipe data real tidak bisa digunakan untuk
c) Perulangan Bersarang
Bentuk umum :
For Counter:= nilai_awal To nilai_akhir Do
For Counter:= nilai_awal To nilai_akhir Do
Perintah;
End;
Atau
For Counter:= nilai_awal To nilai_akhir Do Begin
For Counter:= nilai_awal To nilai_akhir Do
Begin
Perintah 1;
Perintah 2;
Perintah n;
sebagai berikut :
i j k
1 1 1
1 2 2
1 3 3
2 1 2
2 2 4
2 3 6
3 1 3
3 2 6
3 3 9
4 1 4
4 2 8
4 3 12
5 1 5
5 2 10
5 3 15
dalam begin end akan dikerjakan selama kondisi bernilai benar (true).
Daftar Pustaka
Abdul Kadir, 2004, Pemrograman Pascal, Edisi I, Penerbit Andi, Yogyakarta
Aji Supriyanto, 2005, Pengantar Teknologi Informasi, , Salemba Infotek, Jakarta
Budi Raharjo, 2005, Teknik Pemrograman Pascal, Informatika, Bandung
http://www.boxpascal.110mb.com/Contoh%20Program%20Pascal.html (Diakses Tanggal 14
Januari 2009)
http://www.hu.freepascal.org/faq.html.id (Diakses Tanggal 14 Januari 2009)
http://www.dikmentidki.go.id/downlaod/latihan_fpc.pdf (Diakses Tanggal 14 Januari2009)
Kompetesi Dasar :
Mahasiswa dapat memahami konsep pemrograman modular dengan
menggunakan procedure dan function
Mahasiswa dapat membedakan procedure dan function dengan menggunakan
parameter maupun non parameter
Mahasiswa dapat menyelesaikan soal dengan menggunakan procedure maupun
function
utama menjadi bagian-bagian kecil dimana setiap bagian kecil ditangani oleh
dan sangat didukung oleh bahasa Pascal. Untuk itu, Pascal telah menyediakan
dua jenis subprogram, yaitu procedure dan function (prosedur dan fungsi).
A. Procedure
Program Contoh_Procedure1;
Uses Crt;
Procedure Tampil_Menu; {Nama Procedure}
begin
textcolor(12);
gotoxy(15,10);writeln('1. Nasi Goreng');
gotoxy(15,11);writeln('2. Bakmi Goreng');
gotoxy(15,12);writeln('3. Bakmi Godok');
gotoxy(15,13);writeln('4. Es teh');
gotoxy(15,14);writeln('5. Es Jeruk');
end;
{**** Program Utama **** }
begin
ClrScr;
textcolor(14);
gotoxy(15,6);writeln('Selamat Datang di Warung G4UL');
gotoxy(15,8);writeln('Tekan Enter untuk melihat daftar menu .....');
readln;
Tampil_Menu;{Cara Memanggil Procedure Non Parameter}
textcolor(14);
gotoxy(15,16);writeln('Selamat Mencoba');
readln;
end.
Uses crt;
Uses Crt;
Var p,l,luas : integer;
Procedure Hitung_Luas;
begin
luas:=p*l;
end;
{**** Program Utama ****}
begin
clrscr;
Write('Panjang :');readln(p);
write('Lebar :');readln(l);
Hitung_Luas; {Memanggil Procedure}
writeln;
write('Luas Persegi Panjang :',' ',luas);
readln;
end.
Catatan : Dari contoh diatas dapat dilihat tidak ada pengiriman variabel atau paramater
2. Procedure Parameter
Parameter adalah data masukan untuk sub program yang nantinya akan
diproses lebih lanjut pada sub program tersebut. Dalam pascal dikenal 2
a. Parameter Nilai
b. Parameter Referensi
parameter referensi didahului oleh reserved word var. Parameter referensi ini
hasil.
ProgramProsedur_Parameter2;
Uses Crt;
luas.
B. Function
Seperti juga procedure, function adalah suatu program terpisah dalam blok
Walaupun prosedur bisa menghasilkan nilai keluaran, tetapi nilai tersebut tidak
referensi. Sedangkan keluaran dari fungsi dapat diambil langsung dari fungsi
tersebut. Seperti juga procedure, function juga ada dua macam yaitu function
referensi.
parameter :
Program FunctionParameter1;
Uses Crt;
Function Tambah (a,b:integer):integer;
Begin
Tambah:=a+b;
End;
Var
C : integer;
{**** Program Utama****}
Begin
Clrscr;
C:=Tambah(4,5);
Write( C );
Readln;
End.
Program FunctionParameter2;
Uses Crt;
Function Tambah(A,B:byte):integer;
begin
Tambah:=A+B;
end;
{****** Program Utama*******}
Var hasil:integer;
Hasil:=Tambah(bil1,bil2);
write(bil1,' ','+',bil2,' ','=',' ',hasil);
readln;
end.
Contoh program berikut akan memberikan gambaran kepada kita tentang
diubah menjadi :
Writeln(Bil_1:3,' x ',Bil_2:3,' = ',Kalikan(Bil_1,Bil_2,Hasil):5);
C. Rekursi
subprogram seperti itu karena akan banyak memakan memori. Untuk lebih
sebab begitu sampai pada baris terakhir dari prosedur, program akan kembali
lagi ke awal prosedur. Yang terjadi adalah semacam perulangan tanpa perintah
perulangan Pascal, dan perulangan dengan cara ini disebut dengan rekursi.
Rekursi berlaku terhadap semua subprogram dalam Pascal, yaitu prosedur dan
fungsi. Dengan adanya rekursi ini, banyak algoritma komputer menjadi lebih
Daftar Pustaka
2. Apa yang anda ketahui tentang procedure parameter dan ada berapa jenis
metode rekursi).
sebagai berikut :
Kompetesi Dasar :
Mahasiswa dapat memahami konsep dasar tipe data array dan record
Mahasiswa dapat menyelesaikan kasus dengan menggunakan array dan record
Telah dijelaskan pada bab 4 (tipe data dan Operator) bahwa dalam bahasa
Pascal, secara garis besar dikenal dua macam tipe data yaitu tipe data
sederhana (primitive type) dan tipe data kompleks (complex type). Contoh tipe
data sederhana adalah tipe numerik (integer dan real), tipe data karakter, tipe
data boolean dan tipe data enumerasi. Contoh tipe data kompleks adalah string,
array (larik), record dan object. Tipe data sederhana adalah tipe data yang hanya
mampu menyimpan satu nilai tiap satu variabelnya. Sebaliknya tipe data
kompleks adalah tipe data yang mampu menyimpan lebih dari satu nilai dalam
tiap satu variabelnya. Dalam bab ini hanya akan dibahas dua tipe data
A. Array
data yang sama. Jumlah elemen array bersifat tetap dan tidak bisa ditambah
angka berupa array dengan tipe data integer dan jumlah elemen
contohnya :
Angka [1] := 10 {nilai elemen 1 =10}
Dalam bahasa pascal, tersedia dua buah fungsi yang dapat digunakan
untuk mengambil indeks terendah dan tertinggi dari sebuah array, yaitu fungsi
Low dan High. Adapun parameter dari kedua fungsi tersebut adalah nama
Contoh :
Var
A : array [1..100] of integer;
terendah, tertinggi : integer;
begin
terendah := Low(A);
tertinggi:= High(A);
end.
harus menginputkan nilai sebanyak seratus atau bahkan seribu. Tentu saja kita
dengan array kita cukup mendefinisikan 1 variabel dengan tipe array. Untuk
Mungkin metode diatas masih bisa diterima karena jumlah data hanya 10
buah tetapi jika seratus buah, akan lebih mudah jika kita menggunakan tipe
data array. Kode program diatas, apabila diubah dengan menggunakan tipe
merepotkan bila kita harus menampung data yang sama dengan jumlah yang
sangat banyak. Bisa dibayangkan berapa variabel yang harus kita definisikan
untuk menampung data tersebut jika data lebih dari 100. Itulah alasan mengapa
Catatan : perlu diingat bahwa banyaknya nilai konstan yang dituliskan diatas,
Selain itu nilai yang telah didefinisikan, tidak bisa diubah selama
program dijalankan.
Contoh :
Program Array_Konstan;
Uses Crt;
Const
Huruf:array[1..5] of char =(A,B,C,D,E);
Var
i:integer;
Begin
Clrscr;
For i:=1 to 5 do writeln(huruf[i]);
Readln;
End.
Hasil dari program diatas adalah :
misal :
Berikut ini adalah contoh program menghitung nilai rata-rata dari beberapa
komponen penilaian :
Program array_Rata;
uses crt;
var
angka:array[1..100] of integer;
n,i,total:integer;
rata:real;
begin
clrscr;
write('Jumlah komponen nilai [max 100] : ');
readln(n);
total:=0;
{menginput data dan mengitung total nilai}
for i:= 1 to n do
begin
write('Komponen Nilai ke ',i,' = ');
readln(angka[i]);
total:=total+angka[i];
end;
{mengitung Nilai Rata}
rata:= total/n;
clrscr;
komponen :
Pendeklarian array yang telah kita bahas di subbab sebelumnya adalah array
satu dimensi, sedangkan pada subbab ini akan kita bahas tentang array dengan
Atau jika array dijadikan type maka pendeklarasian array dua dimensi menjadi:
Type nama1 = array [nilai_awal..nilai_akhir, nilai_awal..nilai_akhir] of tipe_data;
Berikut ini akan memberikan gambaran kode program untuk pengisian array
dua dimensi :
Program Array_Dua_Dimensi;
Uses Crt;
Var nilai:array [1..3,1..2] of integer;
nama :array[1..3] of string[25];
i,j :integer;
{program ini berfungsi untuk memasukkan data nilai 3}
{mahasiswa untuk dua matakuliah yang mereka ikuti}
Begin
ClrScr;
textcolor(14);
{Input data Nama Mahasiswa}
for i:= 1 to 3 do begin
write('Nama Mahasiswa ',i,' :'); readln(nama[i]);
{Input Data Nilai untuk 2 matakuliah}
for j:= 1 to 2 do begin
write('Nilai Matakuliah ',j);
readln(nilai[i,j]);
end;
end;
{Proses Mencetak Data yang telah diinput}
writeln;
writeln('Isi Data');
{Proses Mencetak Nama Mahasiswa}
for i:= 1 to 3 do begin
write(nama[i]:25,' ');
{Proses Mencetak Nilai Mahasiswa}
baris dan kolom yang sudah ditentukan sebelumnya. Untuk kode program
Program _inputArray;
Uses Crt;
{Definisi jumlah baris dan kolom max 100}
Var nilai:array [1..100,1..100] of integer;
i,j,b,k :integer;
Begin
ClrScr;
textcolor(14);
{Input Baris Dan Kolom}
write('Masukkan Dimensi Baris :');readln(b);
write('Masukkan Dimensi Kolom :');readln(k);
writeln;
{Input Isi Matrik}
for i:= 1 to b do begin
for j:= 1 to k do begin
write('Nilai baris Ke',' ',i,' ','Kolom',' ',j,' ',':',' ');
readln(nilai[i,j]);
end;
end;
writeln;
{Cetak Isi Matrik}
writeln('Isi Matrik :');
for i:= 1 to b do begin
for j:= 1 to k do begin
write(nilai[i,j],' ');
C. Recoord
tipe data yang berbeda. Record lebih kompleks daripada array karena record
Berbeda dengan array yang tiap elemennya ditandai dengan nomer indeks
setelah menyebutkan nama record yang akan diakses. Di antara nama record
dan nama variabel anggota dipisahkan tanda titik (.). Cara pendeklarasian
var
B : record
X : integer;
Y : real;
end;
atau
Type nama_record=record
Field1 : tipe_data1
Field2 : tipe_data2
Field3 : tipe_data3
Field_n : tipe_data_n
berupa record dengan dua elemen yaitu X bertipe integer dan Y bertipe real.
Daftar Pustaka :
http://beeography.modblog.com
sebagai berikut :
Tampilan Program Sebagai berikut :
Procedure Input_Data
Banyak Data :
Data Ke :
NIP :
Nama Pegawai :
Jabatan :
Jenis Kelamin :
Status Perkawinan :
Jumlah anak :
Procedure Cetak_Data
Procedure Tampil_Menu
Tunjangan istri dan anak hanya diberikan bagi pegawai yang sudah menikah
diatas
a. Pertambahan Matrik
b. Pengurangan Matrik
c. Transpose Matrik
d. Perkalian Matrik
B. Sorting
a. Bubble Sort
Teknik mengurutkan data dengan cara membandingkan data yang ada. Metode
Contoh :
Program Contoh_BubbleSort;
Uses Crt;
Var nilai:array [1..100] of integer;
i,n,j,t :integer;
Begin
ClrScr;
textcolor(14);
write('Jumlah Data :');readln(n);
for i:= 1 to n do begin
readln(nilai[i]);
end;
ClrScr;
for i:= 1 to n-1 do begin
for j:= i+1 to n do begin
if nilai[i] > nilai[j] then begin
t:=nilai[i];
nilai[i]:=nilai[j];
nilai[j]:=t;
end;
end;
b. Shell Sort
sehingga lebih cepat. Metode ini dilakukan dengan membandingkan jarak antar
data.
Contoh :
Program Contoh_ShellSort;
Uses Crt;
Var nilai:array [1..100] of integer;
i,n,j,t :integer;
Begin
ClrScr;
textcolor(14);
write('Jumlah Data :');readln(n);
for i:= 1 to n do begin
readln(nilai[i]);
end;
for j:= (n div 2) downto 1 do
for i:= 1 to n-j do
if nilai[i] > nilai[i+j] then begin
t:=nilai[i];
nilai[i]:=nilai[i+j];
nilai[I+j]:=t;
end;
writeln;
c. Quick Sort
Metode ini dilakukan dengan metode rekursi sampai habis. Dimana data dibagi
menjadi dua dan data tengah berfungsi sebagai pivot (pusat operasi). Data
dengan nilai rendah akan berada disebelah kiri pivot dan data dengan nilai
tinggi akan berada disebelah kanan pivot. Metode ini merupakan metode
Contoh :
end;
Bab ini akan mempelajari bagaimana menyimpan suatu data dalam disk. Ada
a. Text File
b. Typed File
Pembacaan dilakukan secara acak, sesuai dengan keinginan user dan tidajk
harus dari awal file. Ciri khas file ini tipe filenya dinyatakan dengan file of
c. Untyped File
File ini tidak mengansumsi apa-apa tentang tipe datanya. Bila anda ingin
membaca atau menulis file jenis untyped file diperlukan perintah khusus
Berikut ini adalah beberapa perintah yang digunakan untuk pembacaan file :
sebagai input
Read Untuk membaca isi file Read (txtfile);
sebelumnya
file
EOF (end Of Bernilai true jika penunjuk EOF(txtfile);
Hartono, Jogianto, 1989, Teori dan Aplikasi Program Komputer Bahasa Turbo Pascal,
Yogyakarta, Andi
Pardosi, Mico, 1999, Bahasa Pemrograman Turbo Pascal 7.0, Surabaya, Penerbit
Indah.
http://sipil.uns.ac.id/kulol/bahasa_komputer
http://www.boxpascal.110mb.com/Contoh%20Program%20Pascal.html
http://www.hu.freepascal.org/faq.html.id
http://yogyafree.net/forum2/viewtopic.php?f=8&t=8240
http://rosihanari.net/programming-pascal.php
http://www.a-rang.info
http://materi-praktek.blogspot.com/2007/03/bab-1-mengenal-tampilan-turbo-
pascal.html
http://rosihanari.net/programming-pascal.php
http://www.dwisanjaya.com/downloads.htm