Modul Praktikum Bahasa Pascal Dasar

Unduh sebagai docx, pdf, atau txt
Unduh sebagai docx, pdf, atau txt
Anda di halaman 1dari 39

Modul Praktikum

Pemrograman Bahasa Pascal 1


Sekolah: SMK Sandikta
Program Keahlian: Teknik Komputer dan Jaringan, Kelas X
Tahun: 2015

Date Issued
Version No.

July, 06th 2015


1.0

Prepared By

Andriyanto, S.Kom

Sekolah Menengah Kejuruan (SMK) Sandikta, Program Keahlian Teknik Komputer dan Jaringan
Tahun 2015

Table of Contents
1.1
1.2
1.3
1.4
1.5
1.6
1.7
1.8
2.1
2.2
2.3
2.4
2.5
2.6
2.7
2.8
2.9
2.10
3.1
3.2
3.3
3.4
3.5
3.6
3.7
3.8
3.9
3.10

Tujuan............................................................................................................................................... 5
Persiapan.......................................................................................................................................... 5
Pekerjaan.......................................................................................................................................... 5
Teori.................................................................................................................................................. 5
Tipe-Tipe Data Dalam Pascal........................................................................................................... 6
Percobaan......................................................................................................................................... 7
Latihan.............................................................................................................................................. 9
Tugas................................................................................................................................................ 9
Tujuan............................................................................................................................................. 10
Persiapan........................................................................................................................................ 10
Pekerjaan........................................................................................................................................ 10
Pengenalan Pernyataan Kendali (Conditional Statement)..............................................................10
Pernyataan If (If Statement)............................................................................................................ 10
Program Sederhana dengan Pernyataan Kendali If........................................................................11
Pernyataan Case (Case Statement)................................................................................................11
Program Sederhana dengan Pernyataan Kendali Case (Case Statement)....................................12
Latihan............................................................................................................................................ 14
Tugas.............................................................................................................................................. 14
Tujuan............................................................................................................................................. 15
Persiapan........................................................................................................................................ 15
Pengenalan Pernyataan Perulangan (loop statement)....................................................................15
Pernyataan Repeat (Repeat statement).......................................................................................... 15
Pernyataan While (While statement)............................................................................................... 15
Pernyataan For Do (For Do statement)........................................................................................... 16
Pengendalian Perulangan............................................................................................................... 17
Program Perulangan dengan Pernyataan Perulangan....................................................................17
Latihan............................................................................................................................................ 19
Tugas.............................................................................................................................................. 19

Document Control
Revision History
Version

Author

Issue Date

Changes

1.0

Andriyanto, S.Kom

July, 06th 2015

Working draft of document by owner / author

Kata Pengantar
Segala Puji Bagi Allah SWT yang telah melimpahkan Rahmat-Nya, sehingga tersusunlah modul praktikum
Pemrograman Bahasa Pascal ini. Pascal merupakan salah satu bahasa pemrograman yang terkenal dengan
kekuatan strukturnya. Selain itu didukung pula dengan kemudahannya untuk digunakan, sehingga menjadi
pilihan yang patut di-perhitungkan dalam dunia pemrograman.
Kecepatan penjalanan program yang dihasilkannya juga menjadi salah satu daya saing mengapa
Pascal terus berkembang hingga saat ini dengan berbagai bentuk, sampai terakhir pada bentuk OOP (object
oriented programming)dan visual.
Menurut sejarahnya, Pascal merupakan suatu bahasa komputer tingkat tinggi yang dibuat sekitar tahun
1970 oleh Niklaus Wirth dan digunakan untuk pendidikan komputer.Nama Pascal diambil dari seorang ahli
matematika yang bernama Blaise Pascal yang menemukan mesin hitung pertama.Bahasa Pascal dirancang untuk
menyelesaikan masalah dari berbagai kalangan pemakai, mulai dari para mahasiswa, pendidik, dan ilmuwan.Salah
satu kompiler pascal yang terkenal dan tercepat adalah Turbo PASCAL yang dibuat oleh perusahaan Borland
(http://www.borland.com).
Modul praktikum Pemrograman Bahasa Pascal ini disusun sedemikian rupa sehingga mendekati
kemudahan dalam penyerapan materi dan pemahaman serta penguasaan praktek pada praktikan.Saran dan kritik
tetaplah diperlukan untuk meningkatkan mutu dari modul praktikum ini sebagai penunjang belajar bahasa
pemrograman, khususnya Pascal.
Bekasi, 19 April 2014
Penyusun

1. Struktur Dasar Bahasa Pascal

1.1

Tujuan

Praktikan mampu menjelaskan tentang langkah-langkah pembuatan program hingga menghasilkan


program yang bisa dieksekusi dari lingkungan MS-DOS secara langsung
Praktikan mengerti pendeklarasian Constanta, type, variable dan mampu menggunakannya dalam
pembuatan program.

1.2

Persiapan

Menjalankan program Pascal, mengikuti percobaan yang diberikan sesuai dengan urutannya.
Mengerjakan Latihan-latihan yang diberikan.

1.3

Pekerjaan

Mengetikkan program sederhana dengan menggunakan type, constanta, dan variable seperti pada
percobaan.

1.4

Teori
Sebuah program Pascal berisi kepala program/ judul, anak kalimat uses (tidak harus ada), serta blok
pengumuman atau deklarasi/kamus dan pernyataan atau deskripsi. Kepala program menunjukkan nama
program. Anak kalimat uses menggunakan unit-unit yang dipakai oleh program tersebut. Bagian terakhir
merupakan blok yang berisi pengumuman san pernyataan yang akan dijalankan.
Setiap program Pascal mempunyai susunan sebagai berikut:
Program Nama_Program;
uses
. . . {Unit-unit yang dipakai} ;
label
. . . {deklarasi label-label yang dipakai} ;
const
. . . {deklarasi konstanta yang digunakan} ;
type
. . . {deklarasi tipe-tipe data};
var
. . . {deklarasi variable};
procedure Nama_Prosedur;
begin
. . . {statement/expression procedure}
end;
Function Nama_Fungsi;
begin
. . . {statement fungsi}
end;
{ Program utama }
begin
. . . {statement/expression program utama}
end.

Unsur aturan penulisan dasardisebut tokenakan digabung membentuk ungkapan (expressions),


pengumuman (declarations), dan pernyataan (statements). Pernyataan/ statements menggambarkan
tindakan algoritma yang dapat dijalankan dalam program.Setiap ungkapan adalah sebuah aturan kesatuan
aturan penulisan yang terdapat dalam pernyataan dan menunjukkan sebuah nilai.Setiap ungkapan terdiri
dari operator dan operand.
Sedangkan deklarasi menegaskan sebuah pengenal (identifier) yang dapat digunakan pada ungkapan
atau pernyataan, dan bila diperlukan memesan tempat pada memori untuk pengenal tersebut.

operator

B := A * 2 + 5
operand

expression

1.5

Tipe-Tipe Data Dalam Pascal

Tipe data pada pemrograman Pascal terletak pada deklarasi variable maupun pada deklarasi tipe. Pascal
menyediakan beberapa macam tipe data, yang teridiri dari:

Tipe data Standar


Tipe integer adalah bilanganyang tidak memiliki titik decimal/ bilangan pecahan. Integer terdiri dari
beberapa tipe, yaitu

Nama Tipe Data

Jangkauan Minimum

Jangakauan Maximum

Byte

255

Shortint

-128

127

Integer

-32768

32767

Word

65535

Longint

-2147483648

2147483647

Operator yang dapat digunakan pada tipe data integer adalah:


Operator

Deskripsi

Penjumlahan

Pengurangan

Perkalian

Div

Pembagian

Mod

Sisa pembagian

Tipe data Real


Tipe data Real adalah bilangan yang mengandung pecahan, paling sedikit harus ada satu digit sebelum
dan sesudah titik decimal. Operator yang dapat digunakan pada tipe data real adalah:

Operator

Deskripsi

Penjumlahan

Pengurangan

Perkalian

Pembagian

Tipe data Char


Nilai data karakter adalah berupa sebuah karakter yang ditulis diantara petik tunggal, misalnya: A, B, @,
dan sebagainya. Karakter yang dapat diterima oleh kompter adalah:

Simbol Char

Keterangan

A, B, C, , Z/ a,
b, c, , z

Huruf besar/ huruf


kecil

0,1, 2, 3, , 9

Bilangan

$, @, { }, %, #

Symbol khusus
Spasi

Tipe Data String


Nilai data string adalah satu atau lebih karakter yang terletak antara tanda petik tunggal, misalnya:
SANDIKTA. Bila panjang dari suatu string di dalam deklarasi variable tidak disebutkan, maka dianggap
panjangnya 255 karakter.

Tipe Data Boolean


Data dengan tipe Boolean hanya memiliki dua nilai, yaitu true dan false.

1.6

Percobaan
Salinlah program berikut ini:
program P0101;{ program untuk menampilkan data diri }
uses Crt;
var
nama, alamat,hobby: string;
{

program utama

begin
Writeln('Program Penampil Data Diri');
Writeln('********************************');
Write('Masukkan Nama : ');
Readln(nama);
Write('Masukkan Alamat : ');
Readln(alamat);
Write('Masukkan Hobby : ');
Readln(hobby);
Writeln;
Writeln('Hallo ',nama,' !!! kamu tinggal di ', alamat, ' dan
Hobbymu adalah ',hobby);
Readln;

end.

Kompilasi program tersebut dengan menekan Alt+F9 dan jalankan program tersebut dengan menekan
Ctrl+F9, kemudian amati hasilnya bila dimasukkan masukan tertentu. Sekarang simpan program tersebut
dengan memilih menu File lalu pilih Save. Simpan dengan namaPrak1_01.PAS.Berikut ini akan
diperkenalkan penggunaan konstanta dalam program. Salinlah program berikut ini:
program P0102;{ program untuk Menghitung Luas Lingkaran }
uses Crt;
const
phi=3.14159;
var
luas, jejari: Real;
begin
program
P0103;{ program untuk Menampilkan Biodata Diri }
uses Crt;
Writeln('Program Menghitung Luas Lingkaran');
type
Writeln('**********************************');
str10
= string[10];
const
Write('Masukkan Jari-jari Lingkaran : ');
koma=',';
Readln(jejari);
var
nama1,nama2 : str10;
luas
:=:phi
* sqr(jejari);
alamat
string;
usia ,thn_lhr,thn_skr: Integer;
begin Writeln('Luas Lingkaran adalah : ', round(luas)); Readln;
end.
Write('Masukkan Nama Depan : ');
Readln(nama1);
KompilasiWrite('Masukkan
dan jalankan program
Nama tersebut,
Belakangkemudian
: '); amati hasilnya bila dimasukkan masukan tertentu.
Apa yangReadln(nama2);
terjadi bila nilai jejari sama dengan nol? Apa pula yang terjadi jika nilai jejari diisi dengan huruf?
: ');
SekarangWrite('Masukkan
simpan program Alamat
tersebut
dengan memilih menu File lalu pilih Save. Simpan dengan
Readln(alamat); lebih memahami pendeklarasian dari type, konstanta dan variabel serta
namaPrak1_02.PAS.Untuk
Write('Masukkan
Tahun statement,
Lahir : ');
penggunaannya
dalam pembuatan
salinlah program di bawah ini:
Readln(thn_lhr);
Write('Masukkan Tahun Sekarang : ');
Readln(thn_skr);
usia := thn_skr - thn_lhr;
Writeln;
Writeln('=== BIODATA DIRI ===');
Writeln(nama2,koma,nama1);
Writeln(alamat);
Writeln(usia,' tahun');
Readln;
end.

Kompilasi dan jalankan program di atas.Amati keluaran yang dihasilkan dan pahami logikanya. Pada
penghitungan usia jelas bahwa peubah yang berada pada ruas kiri suatu pernyataan pemberian akan
berubah nilainya sesuai dengan nilai ungkapan yang berada di ruas kanannya. Sekarang simpan program
tersebut dengan memilih menu File lalu pilih Save. Simpan dengan namaPrak1_03.PAS.

1.7

Latihan

Buatlah program untuk menghitung luas dan keliling persegi panjang, dengan inputan nilai panjang dan
lebarnya. Tampilkan hasilnya dalam bentuk seperti di bawah ini:
=====================================================
Program Menghitung Luas dan Keliling Persegi Panjang
=====================================================
Panjang Persegi Panjang = 20
Lebar Persegi panjang = 10
=====================================================
Luas Persegi Panjang = 200
Keliling Persegi Panjang = 60

Buatlah program untuk menghitung luas dan keliling segitiga sama sisi, dengan inputan nilai alas dan
tinggi dari segitiga. Tampilkan hasilnya dalam bentuk seperti di bawah ini:
=============================================
Program Menghitung Luas dan Keliling Segitiga
=============================================
Alas Segitiga = 15
Tinggi Segitiga = 10
=============================================
Luas Segitiga = 75
Keliling Segitga = 45

Buatlah program untuk menentukan mengkonversi suhu dari Celcius ke Fahrenheit dan dari Celcius ke
Reamur. dengan inputan suhu derajat Celcius !
(formula: Fahrenheit = Celcius x 1,8 + 32)
(formula: Reamur = Celcius x 1,8)

1.8

Tugas

Jelaskan perbedaan Antara:


a. Read dan Readln
b. Write dan Writeln

Buatlah program untuk menampilkan data siswa yang berupa:


- Nama
- No. Induk
- Nilai Tugas
- Nilai UTS
- Nilai UAS
- Total Nilai

2. Struktur Kendali Aliran

1.9

Tujuan

Bila diberikan kasus sederhana yang memerlukan alur terkondisi, siswa mampu membuat program untuk
memecahkan kasus tersebut dalam Bahasa Pascal.

1.10

Persiapan
Menjalankan Program Turbo Pascal, mengikuti percobaan yang diberikan sesuai dengan urutannya.
Mengerjakan latihan-latihan yang diberikan.

1.11

Pekerjaan
Mengetikkan coding dengan menggunakan struktur kendali if dan case, menjalankannya, dan menganalisa
hasil.

1.12

Pengenalan Pernyataan Kendali (Conditional Statement)


Struktur kendali aliran adalah suatu bentuk/struktur yang memiliki peranan khusus untuk mengatur aliran
urutan pengerjaan operasi atau beberapa operasi tertentu.
Pernyataan kendali terbagi menjadi dua, yaitu pernyataan if dan pernyataan case.

1.13

Pernyataan If (If Statement)


Pernyataan if (if statement) akan memeriksa suatu persyaratan dan menentukan apakah syarat tersebut
benar atau salah. Kemudian melakukan pekerjaan sesuai dengan nilai pernyataan tersebut. Berikut adalah
bentuk-bentuk pernyataan if yang sering digunakan:
1. If dengan satu pernyataan (statement)
If <kondisi> then <pernyataan>
2. If dengan dua atau lebih pernyataan (statement)
If <kondisi> then
Begin
<pernyataan1>;
<pernyataan2>;

End;
3. If dan else
If <kondisi> then
Begin
<pernyataan1>;
<pernyataan2>;

End
Else
<pernyataan1>;
<pernyataan2>;

Begin
End;
Dari bentuk bentuk pernyataan if di atas yang harus diperhatikan adalah untuk pernyataan if dan else,
pernyataan-pernyataan setelah then tanpa menggunakan ;. Dengan kata lain jika pernyataan setelah
then hanya terdiri dari satu pernyataan saja makan pernyataan tersebut tanpa menggunakan ;, namun
jika pernyataan setelah then terdiri dari lebih dari satu pernyataan makan setelah end tanpa menggunakan
;.

1.14

Program Sederhana dengan Pernyataan Kendali If


Berikut contoh program sederhana untuk menghitung luas segitiga dan lingkaran. Yang mana perhitungan
luas dua buah bangun tersebut digabung menjadi satu program, dan pemakai dapat memilih masalah
mana yang akan dipecahkan. Sebagaimana diketahui untukmenghitung luas segitiga adalah dengan:
L = x a. t
dan luas lingkaran adalah:
L = pi x r x r
Untuk lebih jelasnya salin program berikut :
program P0201;{ program untuk Menghitung Luas Segitiga dan Lingkaran }
uses Crt;
var
alas, tinggi, jejari, luas: Real;
pilih: Integer;
begin
Writeln('1. Segitiga 2. Lingkaran');
Readln(pilih);
ifpilih = 1 then
begin
Readln(alas, tinggi);
luas := 1/2 * alas * tinggi;
Writeln('Luas Segitiga : ', luas);
end
else
begin
Readln(jejari);
luas := pi * Sqr(jejari);
Writeln('Luas Segitiga : ', luas);
end;
Readln;
end.

Jalankan program tersebut.Pada program tersebut disajikan dua macam pilihan kepada pemakai untuk
menghitung luas segitiga atau luas lingkaran.Peubah pilih digunakan untuk pemakai guna menentukan
pilihannya.

1.15

Pernyataan Case (Case Statement)


Pernyataan case (case statement) berisi ungkapan pemilih (selector) dan sederetan pernyataan yang
masing-masing diawali dengan satu atau lebih tetapan (case constant) atau dengan kata kunci else.
Semua tetapan case harus khas dan tipe berurutan yang digunakan harus sesuai dengan tipe pemilih.
Sama halnya dengan pernyataan if, pada pernyataan case jika pernyataan yang akan dijalankan lebih dari
satu pernyataan maka sebelum pernyataan-pernyataan tersebut harus diawali dengan begin dan diakhiri
dengan end. Berikut bentuk pernyataan case :

case<peubah>of
tetapan1: pernyataan1;
tetapan2:
begin
pernyataan1;
pernyataan2;

end;
tetapan3, tetapan4: pernyataan1;
tetapan5 .. tetapan8: pernyataan1;
else pernyataan1;
end;

1.16 Program Sederhana dengan Pernyataan Kendali Case (Case


Statement)
Dengan contoh program yang sama untuk versi pernyataan case dapat dilihat pada program di bawah ini:
program P0202;{ program untuk Menghitung Luas Segitiga dan Lingkaran }
uses Crt;
var
alas, tinggi, jejari, luas: Real;
pilih: Integer;
begin
Writeln('1. Segitiga 2. Lingkaran');
programP0203;
Readln(pilih);
var
casepilih
of string;
nama,
alamat:
1:
nrp: string[8];
begin string[2];
keterangan:
, tinggi);
grade, pilih: Readln(alas
Char;
luas := 1 / 2 * alas * tinggi;
nilai: Integer;
Writeln('Luas Segitiga : ', luas);
begin
End; Memasukkan data mahasiswa 2. Keluar');
Writeln('1.
2:
Write('Pilihan
Anda : ');
begin
Readln(pilih);
casepilih of Readln(jejari);
luas := pi * Sqr(jejari);
'1':
begin Writeln('Luas Segitiga : ', luas);
end;
Write('Masukkan Nama Anda : ');
end;
Readln(nama);
Readln;
Write('Masukkan NRP Anda : ');
end.
Readln(nrp);
Write('Masukkan Alamat Anda : ');
Readln(alamat);
Write('Masukkan
Nilai
Anda : di');
Dari bentuk-bentuk struktur
kendali yang telah
dijelaskan
atas dapat terjadi dimana struktur kendali
Readln(nilai);
tertentu berada pada struktur kendali yang lain, yang dikenal dengan struktur kendali bersarang. Misalnya
{menentukan program studi}
didalam pernyataan if terdapat
pernyataan
lagi atau dalam
if(copy(nrp,
3,if 2)='11')
then pernyataan case terdapat pernyataan if dan
seterusnya. Untuk lebih jelasnya salin
program di
keterangan
:=bawah
'S1' ini
else
if(copy(nrp, 3, 2)='31') then
keterangan := 'D3';
{menentukan grade}
if(nilai >= 80) then
grade := 'A'
else
if(nilai >= 70) then
grade := 'B'
else
if(nilai >= 60) then
grade := 'C'
else
grade := 'D';
Writeln('Data mahasiswa yang diinputkan');
Writeln('Nama : ',nama);
Writeln('NRP : ',nrp);
Writeln('Program Studi : ',keterangan);
Writeln('Alamat : ',alamat);
Writeln('Nilai : ',nilai);
Writeln('Grade : ',grade);
end;
'2':
begin
Writeln('Anda mengakhiri program !');
Exit;
end;
else
begin
Writeln('Pilihan Anda salah !');
Exit;
end;
end;
Readln;
end.

1.17

Latihan

Ubah program P0203, tambahkan sehingga :


- Nilai yang diinputkan ada tiga macam yaitu : nilai Tugas, nilai UTS dan Nilai UAS.
- Untuk perhitungan grade didapatkan dari nilai akhir dengan perhitungan :
Nilai akhir = (2 * nilai UAS + nilai Tugas + nilai UTS) / 4
- Data mahasiswa yang ditampilkan dalam huruf besar, meskipun dalam pengisian awal menggunakan
huruf kecil.
- Tampilkan juga apakah mahasiswa tersebut LULUS atau TIDAK LULUS dengan ketentuan jika grade
dari mahasiswa "D" maka iaTIDAK LULUS selain itu maka ia LULUS.

Buatlah program untuk menentukan apakah nilai/ bilangan yang diinputkan adalah bilangan genap atau
ganjil

1.18

Tugas
Buatlah program untuk menentukan bilangan terbesar dan bilangan terkecil dari tiga buah masukkan
angka !
Buatlah program kalkulator sederhana dengan memberikan pilihan bagi pengguna. Operasi-operasinya
meliputi : penjumlahan, pengurangan, perkalian, dan pembagian !

3. Struktur Perulangan

1.19

Tujuan
Bila diberikan kasus sederhana yang memerlukan alur berulang, mahasiswa akan mampu membuat
program untuk memecahkan kasus tersebut dalam Bahasa Pascal, untuk setiap perulangan.

1.20

Persiapan
Menjalankan program Turbo Pascal, mengikuti percobaan yang diberikan sesuai dengan urutannya, dan
mengerjakan latihan-latihan yang diberikan

1.21

Pengenalan Pernyataan Perulangan (loop statement)


Pernyatan perulangan memiliki tiga pernyataan, yaitu repeat, whule, dan for. Pernyataan perulangan
digunakan untuk melakukan proses berulang terhadap pernyataan sederhana atau pernyataan terstruktur.

1.22

Pernyataan Repeat (Repeat statement)


Pernyataan repeat (repeat statements) digunakan untuk melakukan perulangan terhadap suatu
pernyataan, dimana proses pemeriksaan syaratnya berada pada akhir pernyataan repeat tersebut.
Pernyataan-pernyataan yang ada pada repeat akan dijalankan (diulang terus) sampai kondisi yang
diseleksi di until tidak terpenuhi. Format penulisan repeat until ini adalah:
Repeat<aksi>Until<kondisi>

1.23

Pernyataan While (While statement)


Pernyataan while (while statements) hampir sama dengan pernyataan repeat, dengan sedikit perbedaan
bahwa pernyataan while melakukan pengujian syarat pada awal proses berulang (pernyataan repeat
melakukannya di akhir proses). Pengujian awal digunakan untuk agar program dapat menyeleksi kondisi,
sehingga program dapat menentukan tindakan apa yang harus dikerjakan, tergantung dari kondisi yang
diseleksi tersebut. Pada pernyataan-pernyataan yang ada pada while tidak akan dijalankan jika kondisi
tidak terpenuhi. Format penulisan While Do ini adalah:
While <kondisi> Do <aksi>

1.24

Pernyataan For Do (For Do statement)


Pernyataan for (for statements) juga digunakan untuk melakukan proses perulangan. Hanya saja proses
perulangan pada pernyataan for langsung dikendalikan oleh suatu peubah yang disebut peubah kendali
(control variables) yang harus bertipe berurutan. Jadi pada pernyataan for pada dasarnya sudah diketahui
jumlah perulangannya.Perulangan dengan pernyataan for dapat berupa perulangan positif ('to') dan
perulangan negatif ('downto'). Jika pernyataan yang akan mengalami perulangan lebih dari satu
pernyataan, maka harus diawali dengan begin dan diakhiri dengan end;. Format penulisan For Do ini
adalah:
For<variable> = <nilai_awal>to<nilai_akhir>Do<aksi>
For<variable> = <nilai_awal>downto<nilai_akhir>Do<aksi>

1.25

Pengendalian Perulangan
Adakalanya pemrogram menginginkan suatu keadaan dimana dalam proses perulangan, perulangan dapat
dihentikan atau dilanjutkan tanpa selalu harus melalui pengujian syaratnya. Untuk keperluan itu, Pascal
telah menyediakan dua prosedur bawaan, yaitu Break dan Continue.
Untuk menghentikan proses perulangan ketika proses belum mencapai pengujian syaratnya, dapat
digunakan prosedur Break. Sedangkan untuk meneruskan proses perulangan ke proses selanjutnya ketika
proses belum mencapai pengujian syaratnya, dapat digunakan prosedur Continue.

1.26

Program Perulangan dengan Pernyataan Perulangan


Berikut ini akan disajikan pemecahan masalah menggunakan struktur perulangan. Contoh yang disajikan
adalah membalik sebuah untai karakter yang dimasukkan pemakai dan menampilkan hasilnya. Algoritma
yang digunakan adalah dengan memasukkan satu demi satu karakter ke dalam suatu peubah hasil
dengan urutan dari depan ke belakang, yang diambil dari peubah masukan dengan urutan yang
berlawanan. Peubah hasil adalah yang akan ditampilkan.
Salin program berikut ini :
programP0301;
var
I, Panjang: Integer;
Kata, Balik: string;
begin
Writeln('Balik Kalimat');
Writeln('=============');
Write('Masukkan kalimat : ');
Readln(Kata);
Panjang := Length(Kata);
Balik := '';
forI := Panjang downto 1 do
Balik := Balik + Kata[I];
Writeln('Hasil pembalikannya : ', Balik);
Readln;
end.

Berikut contoh program untuk menampilkan bilangan genap dari 2 sampai sampai dengan 100. Salin
program berikut ini :
programP0302;
var
i: Integer;
begin
Writeln('Bilangan genap');
i := 1;
repeat
Inc(i);
if i mod 2 = 0 then Write(i:4);
until(i=100);
Readln;
end.

Sama halnya dengan struktur kendali yang telah dibahas sebelumnya, pada struktur perulangan dapat
terjadi kasus dimana di dalam struktur perulangan tertentu terdapat struktur perulangan yang lain dan
seterusnya. Program berikut akan menerapkan struktur perulangan dengan menggunakan while. Salin
program berikut :
programP0303;
var
i, j: Integer;
M: Char;
Begin
Write('Masukkan sembarang karakter : ');
Readln(M);
i := 1;
whilei <= 10 do
begin
j := 1;
whilej <= i do
begin
Write(M);
Inc(j);
end;
Writeln;
Inc(i);
end;
Readln;
end.

Salin program berikut :


programP0304;
usesCrt;
var
Hasil: Real;I, pilih, A, X, N: Integer;Status: Boolean;
begin
Repeat
Clrscr;
Writeln('1. Pemangkatan 2.Faktorial 3. Keluar');
Write('Masukkan Pilihan Anda : ');Readln(pilih);
casepilih of
1 :begin
Write('Masukkan Sembarang angka : ');Readln(X);
Write('Akan dipangkatkan berapa : ');Readln(A);
Hasil := 1;
forI := 1 to A do Hasil := X * Hasil;
Writeln('Jadi ', X,' dipangkatkan ', A,' : ',Hasil:5);
Status := False;
end;
2 :begin
Write('Masukkan Sembarang angka : ');
Readln(N);
ifN <= 1 then Hasil := 1
else
begin
Hasil := 1;
forI := 2 to N do Hasil := Hasil * I;
end;
Writeln('Jadi factorial ', N,' (', N,'!) : ',
Hasil:5);
Status := False;
end;
3 : Status := True;
else
begin
Writeln('Pilihan Anda salah !');Status := True;
end;
end;
Readln;
untilStatus;
end.

1.27

Latihan

Buat program untuk menampilkan deret kuadrat 1, 4, 9, 16, 25, 36, 49, 64, 81, 100
Buat program untuk menampilkan angka sebagai berikut:

1
22
333
4444
55555
Buat program untuk menampilkan angka sebagai berikut:
55555
4444
333
22
1

1.28

Tugas
Buat program untuk menampilkan segitiga Pascal !
1
1
1
1
1

1
2
3
4

1
3
6

1
4

Buat program untuk menghitung gaji pegawai dengan ketentuan sebagai berikut :
- Terdapat dua buah golongan yaitu : A dengan gaji pokok 500.000 dan B dengan gaji pokok 1.000.000
- Pegawai akan mendapatkan tunjangan jika sudah menikah sebesar 10% dari gaji pokok. Untuk status
tidak menikah, janda, dan duda tunjangan=0.
- Jika pemakai memasukkan inputan baik itu untuk status dan golongan tidak sesuai dengan yang
diminta ulang terus sampai yang diinputkan benar.
- Tampilkan nama, alamat, status, gaji pokok dan total gajinya

Daftar Pustaka

Kristian Trias Yulianto, Eko Agung Winarto, Adhis Mahaswi Dewi, Modul Praktikum Pemrograman
Pascal, Sekolah Tinggi Ilmu Komputer dan Teknologi Indonesia, 2006.

Adi, Lab Sheet Algoritma Pemrograman, Fakultas Teknik Universitas Negeri Yogyakarta, 2008