Program nama_program;
[ Deklarasi label ]
[ Deklarasi konstanta ]
[ Deklarasi tipe ]
[ Deklarasi variabel ]
[ Deklarasi subprogram ]
Begin
Pernyataan;
....
Pernyataan;
End.
Ket:
PROGRAM
Kata program pada bagian deklarasi merupakan kata yang berguna untuk memberikan judul
program yang akan dibuat.
USES
Uses merupakan perintah yang digunakan untuk memakai suatu unit tertentu dari Turbo
Pascal. Unit pada Turbo Pascal adalah kumpulan instruksi yang merupakan prosedur dan
fungsi yang dipakai dalam Turbo Pascal.
Indentifier
Dalam pemrogram pascal terdapat beberapa identifier atau istilah yang digunakan oleh
bahasa pemrograman in. Identifier adalah suatu nama yang dipergunakan dalam program
pascal. Pemrogram dapat mendefinisikan sendiri suatu nama sebagai identifier untuk
– Tipe
– Konstanta
– Variabel
– Prosedur
– Fungsi
– Unit
- Tidak boleh menggunakan kata baku (program, var, begin, end, for, const, case, if dll).
Kata baku adalah kata-kata yang tidak dapat digunakan lagi oleh seorang program, karena
sudah dipakai oleh pascal.
Program 3percobaan3;
Procedure begin(i,j:integer);
1X
A&b
AB
TIPE DATA
Jika anda mempergunakan identifier variabel dalam program, maka variabel tersebut harus anda
deklarasikan lebih dahulu. Saat melakukan deklarasi anda harus menentukan tipe data variabel tersebut.
Tipe Real
Jenis tipe data yang dapat memuat variabel yang berupa nilai numerik real. Nilai data tipe ini berkisar
antara 1E-38 sampai dengan 1E+38 dengan lebar hingga 11 digit. E menunjukkan nilai 10 pangkat. Nilai
numerik real menempati memori sebesar 6 byte
Var a:real;
Tipe Boolean
Jenis tipe data yang digunakan untuk menyimpan variabel yang hanya mempunyai nilai benar atau salah
Hanya ada 2 nilai yang bisa diberikan pada variabel dengan tipe data boolean yaitu true dan false
Var
x : boolean;
x:=true;
Tipe String
Jenis tipe data yang digunakan untuk menyimpan rangkaian data alfanumeris (karakter) diantara 2 tanda
petik seperti ‘Adalah’, ‘12-12-2004’ dan lain-lain.
Bila tanda petik merupakan bagian dari konstanta string maka dapat ditulis dengan menggunakan dua
buah petik tunggal berurutan ‘ ‘ ‘
Nilai data straing akan menempati memori sebesar banyaknya karaker string ditambah dengan satu byte.
Bila panjang string tidak didefinisikan dalam deklarasi maka dianggap panjangnya adalah 255 karakter.
Tipe Pointer
Pointer adalah suatu variabel yang berisi alamat (address) di memori (RAM) dimana suatu data disimpan,
dan bukan berisi data itu sendiri. Dengan kata lain, pointer akan menunjukkan letak dari data di memori.
Contoh
Type
Tipestring = string[40];
Pointerstring = ^tipestring;
Var
LetakNama : ponterstring;
Begin
End.
INSTRUKSI PASCAL
Statemen INPUT
Readln
Sintaksnya
Readln(var1);
Digunakan untuk menginput data kedalam program setelah program dieksekusi dan
disimpan dalan variabel var1
Contoh
Var cth:integer;
Begin
Readln(cth);
Writeln(cth*2);
End;
Masuk data _
123
246
Read
Sintaksnya
Read(var1,var2, var3,…,var_n);
Digunakan untuk menginput data kedalam program setelah program dieksekusi dan
disimpan dalan variabel var1,var2,var3,..,var_n.
Perbedaan readln dan read adalah bahwa read dapat digunakan untuk menginput lebih dari satu
variabel.
Contoh
Var cth,dat1,dat2:integer;
Begin
Writeln(cth+dat1+dat2);
A:=1;
B:=2:
Writeln(a);
Writeln(b);
End;
2
12
12 34 22-
68
Statemen Output
Writeln
• Write
Write dan writeln sama-sama digunakan untuk menampilkan ‘sesuatu’ dari dalam kode
pascal ke jendela tampilan, atau dalam istilah pemrograman digunakan sebagai perintah
‘ouput’. Perbedaan antara write dan writeln terletak pada apakah ‘output’ selanjutnya
ditampilkan pada baris yang sama, atau di baris baru.
Data-ouput ini bisa berupa teks, variabel, konstanta, dll. Agar lebih mudah dipahami, berikut
contoh kode program yang memperlihatkan perbedaan kedua perintah ini:
Data-output yang ingin ditampilkan dengan perintah write dan writeln, harus ditulis diantara
tanda tanda kurung “ ( “ dan “ ) ”.
Jika data tersebut adalah ‘teks’ yang terdiri dari karakter (char) atau kumpulan karakter
(string) kita perlu menambahkan tanda tanda kutip satu ( ‘ ) diantara teks tersebut. Apabila
yang akan ditampilkan angka, variabel, atau konstanta, kita tidak perlu menggunakan tanda
kutip. Berikut contoh kode programnya:
program tampil;
uses crt;
const
kota='Ambon';
var
nama:string;
umur:integer;
begin
clrscr;
nama:='Joni';
unur:=17;
write('Nama : ');
writeln(nama);
write('Umur : ');
writeln(umur);
write('Kota : ');
writeln(kota);
write('IPK : ');
writeln(3);
readln;
end.
Nama : Joni
Umur : 17
Kota : Ambon
IPK : 3
dari 2 contoh program yang telah kita coba praktekan sebelumnya, dapat kita simpulkan
perbedaan antara perintah write dan writeln dalam bahasa pemrograman pascal yaitu,
perintah write akan menampilkan tulisan pada layar dalam satu baris yang sama, sedangkan
perintah Writeln akan menampilkan tulisan pada layar dan kemudian membuat baris baru,
sehingga tulisan setelahnya akan berada pada baris berikutnya.
itulah perbedaan dari perintah write dan juga writeln dalam bahasa pemrograman pascal,
memang cukup sulit untuk menjelaskan perbedaan keduanya, namun akan mudah dipahami
apabila kalian mencoba melakukan latihan membuat contoh program menggunakan masing-
masing perintah
Statemen Pengulangan
Perulangan (iterasi) adalah proses yang berulang. Iterasi selalu ada dalam bahasa
pemrograman apapun, karena disinilah letak kelebihan komputer 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 (statement) perulangan, yaitu
1. for…do,
2. repeat…until
3. while…do.
perulangan repeat…until adalah perulangan dengan syarat akhir sedang perulangan while…do
adalah perulangan dengan syarat awal.
Untuk lebih jelas memahami proses perulangan ini, perhatikan contoh program
di bawah ini :
program Iterasi1;
var
I, Data : integer;
Nilai, Rata : real;
Jumlah : real;
begin
Writeln('Latihan Pascal 1: Perulangan dan Seleksi Kondisi');
Writeln('------------------------------------------------');
Writeln('Nama : ____________________');
Writeln('NIM : __________');
Writeln;
Jumlah := 0;
Writeln;
Write('Masukkan jumlah data : ');
Readln(Data);
Writeln;
for I := 1 to Data do
begin
Write('Masukkan data ke-',I,' : ');
Readln(Nilai);
Jumlah := Jumlah + Nilai;
end;
Rata := Jumlah/Data;
Writeln;
Writeln('Rata-ratanya = ',Rata:6:3);
Readln;
end.
Untuk lebih memahami apa yang dilakukan oleh program, jalankan program dengan tombol F7 dan
amati perubahan variabelnya (cara mengamati perubahan variabel dapat ditanyakan pada asisten).
Jika telah mengerti, buatlah program yang serupa dengan menggunakan statement perulangan yang
lain.
• For do
• While do
• Repeat Until
• program c2oba;
• {$APPTYPE CONSOLE}
• uses
• SysUtils;
• Var i,j,k:integer;
• Begin
• j:=1;
• k:=0;
• for i:=2 to 5 do
• begin
• j:=j*i ;
• for K:=i to i+2 do
• begin
• J:=J+1;
• end;
• writeln(I,' ',K,' ',J);
• j:=j-i;
• readln;
• end;
• End.
Praktikum
Ada banyak statement untuk menghasilkan OUTPUT, salah satunya Write dan Writeln
a. Tulis program 1 (Tulis program lah program berikut ! )
Program cetak1 (output);
Begin
Write (‘Be’);
Write (‘la’);
Write (‘jar’);
End
Coba di Run !
Hasil: Apakah dalam baris yang sama ?
Coba lagi program tersebut cuma write diganti dengan writeln
Hasil: ?
Kesimpulan: ?
b. Tulis program 2
program cetak2 (output);
begin
write (‘My name is’);
wrriteln(‘Jean Claude Van Dame.’);
write(‘what yours?’);
end
Coba di Run !
Hasil: Apakah ada spasi antara is dan Jean ? mengapa ?
Apa beda antara write dan writeln? Perhatikan kedua program berikut ini, amati
perbedaanya.:
Menggunakan write:
1. begin
2. write('Jangan dibaca. ');
3. write('Tidak ada tulisan di sini. ');
4. write('Nakal ya. ');
5. end.
Menggunakan writeln:
1. begin
2. writeln('Jangan dibaca. ');
3. writeln('Tidak ada tulisan di sini. ');
4. writeln('Nakal ya. ');
5. end.
Latihan/Praktikum
Pengertian sederhananya dari Nesting Loop adalah Ada Loop dalam Loop
Buatlah program berikut ini, dan amatilah hasilnya.
a. Tulis program 9
Program NL (output);
Var
Index:integer;
Begin
For index := 1 to 10 do
Begin
For index := 1 to 8 do
Write (‘+’);
Writeln;
End
End
Hasil: ?
Kesimpulan: ?
b. Tulis program 10
Program NL (output);
Var
Baris,kolom :integer;
Begin
For baris := 1 to 10 do
Begin
For kolom:= 1 to 8 do
Write (‘+’);
Writeln;
End;
End.
jika ada loop/perulangan yang tidak saling berhubungan dapat digunakan variabel
yang sama, seperti masalah pada Tulis program 9
c. Tulis program 11
program duasegi(output);
var
baris, kolom:integer;
begin
for baris:= 1 to 10 do
begin
for kolom := 1 to 8 do
write(‘+’);
write (‘ ‘);
for kolom := 1 to 8 do
write (‘+’);
writeln;
end;
end.
Latihan
2. + + + + +
xxxxx
-----
/////
3. * * * *
**
**
****
****
**
**
****
Nesting Loop
+#########
++########
+++#######
++++######
+++++#####
++++++####
+++++++###
++++++++##
+++++++++#
++++++++++
*) Sdr boleh menggunakan statement For kolom := baris + 1 to 10 do
10. Tentukan program untuk mencetak hasil berikut :
+
++
+++
++++
+++++
+++++
++++
+++
++
+
*) Nilai index dari Loop-For juga dapat di mulai dari besar kekecil dengan
statement DOWNTO
d. Tulis program 12
For index := 5 to 1 do
Write (index);
Hasil: ?
*) Kembali lihat soal 10
Instruksi Pengendalian
1. If .. then
Sintak
If kondisi then
Begin
Sejumlah statemen1;
End;
Keterangan
Jika kondisi bernilai benar maka sejumlah statemen1 akan dikerjakan, tetapi jika kondisi bernilai
salah maka tidak ada yang dikerjakan
Contoh
if d=0 then
begin
end;
2. If .. then .. else
Sintak
If kondisi then
Begin
Sejumlah statemen1;
End
Else
Begin
Sejumlah statemen2;
End;
Keterangan
Jika kondisi bernilai benar maka sejumlah statemen1 akan dikerjakan, tetapi jika kondisi bernilai
salah maka sejumlah statemen2 yang dikerjakan.