Logika dan Algoritma

Modul Matakuliah

Logika dan Algoritma

Muhammad Romzi

KATA PENGANTAR

Logika dan Algoritma merupakan matakuliah yang mengajarkan tentang
bagai mana cara penyelesaian suatu masalah berdasarkan tahapan-tahapan
yang sistematis dan logis. Suatu algoritma dapat dibuktikan kebenarannya
melalui komputer setelah algoritma tersebut ditranslasikan kedalam bahasa
pemrograman. Bahasa pemrograman yang digunakan pada modul ini
menggunakan turbo pascal 1.5 yang berjalan pada sistem operasi windows.
Modul ini membahas secara ringkas tentang algoritma dan pascal,
sebagai dasar bagi mahasiswa bagaimana cara membuat program komputer.
Dipilihnya bahasa pascal disamping kemudahan penggunaan dan juga sebagai
bekal bagi mahasiswa yang mempelajari pemrograman visual dengan
menggunakan Borland Delphi.
Akhir kata, penulis mengucapkan syukur Alhamdulillah modul ini dapat
diselesaikan dengan baik, walaupun masih banyak kekurangan disana-sini yang

perlu perbaikan dimasa yang akan datang. Oleh karena itu penulis menerima
masukan dan saran dari rekan-rekan dosen pengajar matakuliah algoritma
maupun masukan dari mahasiswa yang menggunakan modul ini. Mudahmudahan modul ini dapat bermanfaat baik bagi penulis sendiri maupun bagi
pengguna.

Baturaja, Sya‟ban 1433H /
Juni 2012 M

Penulis

.:: Muhammad Romzi

2

DAFTAR ISI

KATA PENGANTAR
DAFTAR ISI
BAB 1. Mengenal Logika dan Algoritma
A. Pengertian Logika dan Algoritma……………………………………………..

B. Syarat-Syarat Algoritma………………….………………………………………
C. Struktur Dasar Algoritma…………………………………………………………
D. Penulisan Algortima………………………………………………………………..
E. Teks Algoritma………………………………………………………………………

3
3
5
5
6
7

BAB 2. Mengenal Pascal (TPW 1.5)…………………………………………………………
A. Sejarah………………………………………………………………………………..
B. Struktur Bahasa Pascal………………………………………………………….

9
9
9


BAB 3. Mengenal Flow chart………………………………………………………………….
A. Flow Chart…………………………………………………………………………….
B. Simbol Flow chart…………………………………………………………………..

15
15
15

BAB 4. Pemrograman pada Pascal.………………………………………………………….
A. Translasi Teks Algoritma kedalam Pascal……………….…………………
B. Penulisan Kode Program pada TPW 1.5……………………………………
C. Statement Input/Output…………………………………………………………
D. Struktur Perulangan……………………………………………………………….
E. Struktur Percabangan…………………………………………………………….
F. Array…………………………………………………………………………………….
G. Prosedur……………………………………………………………………………….
H. Fungsi…………………………………………………………………………………..

19
19

20
26
26
32
35
35
36

Daftar Pustaka……………………………………………………………………………………….
Penulis………………………………………………………………………………………………….

37
38

.:: Muhammad Romzi

3

MENGENAL
LOGIKA ALGORITMA

A. PENGERTIAN LOGIKA DAN ALGORITMA
Logika berasal dari dari bahasa Yunani yaitu LOGOS yang berarti ilmu.
Logika dapat diartikan ilmu yang mengajarkan cara berpikir untuk melakukan
aksi dengan tujuan tertentu.
Algoritma berasal dari nama seorang Ilmuwan Arab yang bernama
Abu Ja‟far Muhammad Ibnu Musa Al Khuwarizmi penulis buku berjudul
Al Jabar Wal Muqabala (Buku
Pemugaran
dan
Pengurangan).
Kata Al Khuwarizmi dibaca orang barat menjadi Algorism yang
kemudian lambat laun menjadi Algorithm diserap dalam bahasa
Indonesia menjadi Algoritma. Algoritma dapat diartikan urutan langkahlangkah (instruksi-instruksi / aksi-aksi) terbatas untuk menyelesaikan suatu
masalah.
Dari pengertian diatas maka dapat diartikan Logika dan Algoritma adalah
ilmu yang mempelajari cara penyelesaian masalah berdasarkan langkahlangkah terbatas yang logis dan sistematis dengan tujuan tertentu.
Contoh Algoritma:
Permasalahan:
Diberikan dua gelas (A dan B), gelas A berisi air kopi dan gelas B berisi air
teh. Pertukarkan isi gelas tersebut sehingga menghasilkan gelas A semula

berisi air kopi menjadi berisi air teh dan gelas B yang semula berisi air teh
menjadi berisi air kopi.
Penyelesaian:
Untuk mempertukarkan isi gelas dengan benar, maka diperlukan gelas
tambahan yang kita namakan gelas C sebagai tempat penampungan
sementara. Berikut Algoritmanya:

.:: Muhammad Romzi

4

Algortima Tukar_Isi_Gelas
Ada dua gelas (gelas A dan gelas B), gelas A berisi Kopi dan gelas B
berisi Teh. Pertukarkan isi kedua gelas tersebut sehingga gelas A yang
semula berisi Kopi menjadi berisi Teh dan gelas B yang semula berisi Teh
menjadi berisi Kopi
Deskripsi
1. Tuangkan isi gelas A ke gelas C
2. Tungkan isi gelas B ke gelas A
3. Tuangkan isi gelas C ke gelas B


Gambar 1. Algoritma Tukar Isi Gelas
(Sumber Rujukan: Rinaldi Munir,Algoritma dan Pemrograman, Informatika Bandung )

Hasil akhir dari algoritma pertukaran isi gelas menjadi:
A : berisi Teh
B : berisi air Kopi
B. Syarat-Syarat Algoritma
Syarat-Syarat Algoritma menurtu Donald E. Knuth, yaitu:
1. Finiteness (Keterbatasan)
Algoritma harus berakhir setelah melakukan sejumlah langkah proses
2. Definiteness (Kepastian)
Setiap langkah algoritma harus didefinisikan dengan tepat dan tidak
menimbulkan makna ganda
3. Input (Masukan)
Sebuah algoritma memiliki nol atau lebih masukan (input) yang
diberikan kepada algoritma sebelum dijalankan
4. Output (Keluaran)
Setiap algoritma memberikan satu atau beberapa hasil keluaran
5. Effectiveness (Efektivitas)

Langkah-langkah algoritma dikerjakan dalam waktu yang “wajar”
C. Struktur Dasar Algoritma
Suatu Algoritma dapat terdiri dari tiga struktur dasar, yaitu runtunan,
pemilihan dan pengulangan. Berikut Penjelasan ringkas dari tiga struktur
tersebut :
1. Runtunan
Runtunan yaitu satu atau lebih
berurutan sesuai dengan urutan
menentukan hasil akhir dari suatu
berubah maka mungkin juga hasil

.:: Muhammad Romzi

instruksi yang dikerjakan secara
penulisannya. Urutan dari instruksi
algoritma. Bila urutan penulisan
akhirnya berubah.

5


Perhatikan contoh operasi aritmatika berikut:
A
(3 * 5) + 5 = 20

B
3 * (5 + 5) = 30

Dari contoh diatas dapat dilihat ternyata hasil akhirnya dapat berubah
apabila urutan pengerjaannya berbeda.
2. Pemilihan
Pemilihan yaitu instruksi yang dikerjakan dengan kondisi tertentu.
Kondisi adalah persyaratan yang dapat bernilai benar atau salah.
Instruksi hanya dilaksanakan apabila kondisi bernilai benar, sebaliknya
apabila salah maka instruksi tidak akan dilaksankan. Pernyataaan
kondisi menggunakan statemen If (jika) dan Then (maka).
Contoh pernyataaan kondisi
Jika suatu bilangan habis dibagi dua
Maka bilangan itu bilangan genap
3. Pengulangan
Pengulangan merupakan pengulangan sejumlah aksi yang sama sebanyak

jumlah yang ditentukan atau sesuai dengan kondisi yang diinginkan.
Beberapa statemen pengulangan yaitu:
 For … To ... Do
 While … Do
 Repeat ... Until

/ For ... Downto ... Do

D. Penulisan Algoritma
Algoritma dapat ditulis dengan cara berikut:
1. Menggunakan bahasa natural
2. Menggunakan kode semu (pseudo-code)
Teknik penulisan yang mendekati bahasa pemrograman tertentu
3. Menggunakan diagram alir (flow chart)
Teknik penyajian dengan menggunakan symbol-simbol.
Dari ketiga cara ditas untuk mempermudah translasi teks algoritma kedalam
teks program sebaiknya ditulis dalam bentuk notasi yang mendekati bahasa
pemrograman (pseudo-code).
Contoh:
Tulislah algoritma untuk mencari Luas Persegi Panjang, apabila diketahui nilai

panjang 8 dan nilai lebar 5.

.:: Muhammad Romzi

6

Bahasa Natural
1
2
3
4
5
7

Mulai
Masukkan Nilai Panjang Persegi Panjang
Masukkan Nilai Lebar Persegi Panjang
Hitung Luas Persegi (Luas = Panjang x Lebar)
Tampilkan Nilai Luas Persegi Panjang
Selesai

Pseude Code
1
2
3
4
5
7

Start
Input (Panjang)
Input (Lebar)
Luas  Panjang * Lebar
Output (Luas)
End

E. Teks Algoritma
Teks algoritma tersusun dalam tiga bagian, yaitu:
1. Bagian Kepala
2. Bagian Deklarasi
3. Bagian Deskripsi
Setiap bagian disertai dengan penjelasan tentang maksud penulisan teks.
Penjelasan ini ditulis dalam kurung seperti ini {
}
Algoritma nama_algoritma
{penjelasan singkat uraian yang dilakukan oleh algoritma}
Deklarasi
{semua nama yang digunakan, meliputi nama-nama: tipe, konstanta, variable
juga nama sub program dinyatakan dibagian ini}
Deskripsi
{semua langkah penyelesaian dituliskan disini}
(Sumber : Rinaldi Munir,Algoritma dan Pemrograman, Informatika Bandung )

.:: Muhammad Romzi

7

Algoritma Cetak_Ucapan
{mencetak ucapan „Selamat Belajar „ dan diikuti
dengan nama orang}
Deklarasi
nama : string;
Deskripsi
nama‟Ahmad‟
write(„Selamat Belajar‟, nama)

Gambar 2. Algoritma Cetak Ucapan

.:: Muhammad Romzi

8

MENGENAL
PASCAL (TPW 1.5)
A. Sejarah
Pascal merupakan pengembangan dari bahasa ALGOL 60 yang diperuntukkan
untuk sains dan komputasi. Pada tahun 1960 beberapa ahli komputer
mengembangkan bahasa ALGOL, salah satunya adalah Dr. Niklaus Wirth dari
Swiss Federal Institute of Technology (ETH-Zurich), yang merupakan anggota
group ALGOL. Nama PASCAL diambil dari nama seorang filsuf dan ahli
matematika dari Perancis. Pascal adalah bahasa pemrograman terstruktur
yang membedakan blok-blok pendeklarasian tipe, variable dan penulisan
kode program. Pascal memiliki keunggulan untuk dipelajari oleh pemula
karena struktur yang jelas serta tidak bersifat case sensitive (tidak
membedakan huruf besar dan huruf kecil). TPW 1.5 merupakan bahasa
pemrograman pasacal yang berjalan dibawah sistem operasi windows.

B. Struktur Bahasa Pascal
Struktur bahasa pascal terdiri dari:
1. Judul Program
2. Blok Program
a. Bagian Deklarasi
 Deklarasi Tipe
 Deklarasi Konstanta
 Deklarasi Variabel
 Deklarasi Label
 Deklarasi Prosedur
 Deklarasi Fungsi
b. Bagian Pernyataan
Keterangan:
1. Judul Program bersifat optional boleh disertakan boleh juga tidak, tapi
sebaiknya dituliskan untuk keperluan dokumentasi. Penulisan judul
program terletak pada awal penulisan dan diakhiri dengan tanda titik
koma. Contoh:
2. Bagian Deklarasi merupakan bagian untuk menuliskan pengenal
(identifier), yang dapat berupa label, konstanta, tipe, variabel dan fungsi.

.:: Muhammad Romzi

9

Identifier terdiri atas:
a. Identifier Umum
Identifier umum merupakan identifier yang didefenisikan sendiri oleh
pemrogram yang tidak boleh sama dengan identifier standard
maupun identifier “reserved word”
b. Identifier Standar
Identifier standar merupakan identifier yang terdapat pada library
compiler. Library berisi procedure, fungsi, unit yang siap pakai.
Contoh identifier standar:
Read, readln, write, writeln
c. Identifier “reserved word”
Identifier yang telah ada atau telah didefenisikan dan digunakan
bahasa Pascal.
Contoh identifier:
Begin, end, if, else
2.1. Deklarasi Variabel dan Konstanta
Variabel adalah suatu pengenal (identifier) yang digunakan untuk
mewakili suatu nilai tertentu didalam proses program. Berbeda
dengan konstanta yang nilainya selalu tetap, nilai dari suatu variabel
dapat berubah sesuai kebutuhan.
Deklarasi variabel didefenisikan sebagai berikut:
Var

contoh
Variabel : Tipe_Data;

var
Nama : string;

Deklarasi konstanta didefenisikan sebagai berikut:
Const
pengenal = Ekspresi;

contoh

const
phi = 3.14

2.2. Deklarasi Tipe
Tipe data dalam pascal dibedakan dalam dua macam, yaitu : tipe
data dasar dan tipe data bentukan. Tipe data dasar terdiri dari:
bilangan logic, bilangan bulat, bilangan Riil dan Karakter. Sedangkan
tipe data bentukan terdiri dari: string, Rekaman dan tipe bentukan
yang dibentuk dari tipe dasar.

.:: Muhammad Romzi

10

Bilangan Logik
Bilangan Bulat
Bilangan Riil
Karakter

Tipe Dasar
Tipe Data
TipeBentukan

String
Rekaman
Tipe Bentukan
Gambar 3. Tipe Data
2.2.1.

Bilangan Logika

Nama Tipe
Rentang Nilai

: Boolean
: Benar (True) atau salah (False)
Benar (1) atau salah (0)

Operasi

: Not, And, Or, Xor

Y
True
False

Not Y
False
True

X
True
True
False
False

Y
True
False
True
False

X and Y
True
False
False
False

X or Y
True
True
True
False

X xor Y
False
True
True
False

Keterangan:
Not
: kebalikan dari nilai yang diberikan
And
: bernilai benar apabila keduanya benar
Or
: bernilai benar apabila keduanya benar atau salah satunya benar
Xor
: bernilai benar apabila salah satunya saja yang benar

.:: Muhammad Romzi

11

Operator Not merupakan operator Unary (hanya 1 operand)
Operator AND, OR, XOR merupakan operator Binary
(operator yang memerlukan 2 operand)
Contoh:

X

AND

Y

OPEARATOR

OPERAND

2.2.2.

Bilangan Bulat (Integer)

Ada 5 tipe pada bilangan integer
TIPE
Shortint
Integer
Longint
Byte
Word

RENTANG NILAI
-128 .. 127
-32768 .. 32767
-2147483648 .. 2147483647
0 .. 255
0 .. 65535

UKURAN
Signed 8 bit
Signed 16 bit
Signed 32 bit
Unsigned 8 bit
Unsigned 16 bit

Operasi pada bilangan bulat, terdiri dari operasi aritmatika dan operasi
perbandingan.
Operator Aritmatika
+
Penjumlahan
Pengurangan
*
Perkalian
Div Pembagian Bulat
Mod Sisa hasil bagi

.:: Muhammad Romzi

Operator Perbandingan
=
Sama dengan
<
Lebih kecil dari
>
Lebih besar dari
=
Lebih besar sama dengan

Tidak sama dengan

12

2.2.3 Bilangan Real (Pecahan)
Bilangan Real merupakan bilangan pecahan yang dinyatakan dalam bentuk
eksponensial. Bilangan real memiliki beberapa macam tipe, yaitu:

TIPE
Real
Single
Double
Extended

2.9
1.5
5.0
3.4

x
x
x
x

RENTANG NILAI
10-39 .. 1.7 x 1038
10-45 .. 3.4 x 1038
10-324 .. 1.7 x 10308
10-4932 .. 1.1 x 104932

UKURAN
6 byte
4 byte
8 byte
10 byte

Operasi pada bilangan bulat, terdiri dari operasi aritmatika dan operasi
perbandingan.
Operator Aritmatika
+
Penjumlahan
Pengurangan
*
Perkalian
/
Pembagian

Operator Perbandingan
<
Lebih kecil dari
>
Lebih besar dari
= Lebih besar sama dengan
Tidak sama dengan

2.2.4 CHAR
Char adalah semua character yang terdapat pada tombol keyboard atau
semua karakter yang terdapat dalam kode ASCII.
Operasi yang ada pada tipe ini hanya operasi perbandingan
Operator Perbandingan
=
Sama dengan
<
Lebih kecil dari
>
Lebih besar dari
=
Lebih besar sama dengan

Tidak sama dengan
Contoh
„a‟ = „a‟ Hasil : True
„M‟ = „m‟ Hasil : False
„m‟ < „z‟ Hasil : True

.:: Muhammad Romzi

13

2.2.5. STRING
String adalah deretan karakter dengan panjang tertentu
Operasi yag terdapat pada tipe string, yaitu:
a. Operasi Penyambungan (Concatenation)
Operasi penyambungan menggunakan operator „+‟
Contoh : „AKMI‟ + „ Baturaja‟

hasilnya:

„AKMI Baturaja‟

b. Operasi Perbandingan
Operator Perbandingan
=
Sama dengan
<
Lebih kecil dari
>
Lebih besar dari
=
Lebih besar sama dengan

Tidak sama dengan
Contoh
„aku‟ = „akur‟ Hasil : False
„aku‟ < „AKU‟ Hasil : True

2.2.6. REKAMAN
Rekaman disusun oleh satu atau lebih field. Tiap field menyimpan data dari
tipe dasar tertentu yang sudah didefenisikan sebelumnya. Rekaman juga
disebut dengan tipe terstruktur.

2.2.7. TIPE BENTUKAN DARI TIPE DASAR
Nama baru untuk tipe bentukan dapat dibuat dengan kata kunci type.
Contoh :
Type Bulat

: Integer;

Keterangan : membuat tipe baru dengan nama bulat yang sama dengan
integer.

.:: Muhammad Romzi

14

MENGENAL
FLOW CHART
A. Flow Chart

Flowchart

adalah
bagan-bagan
yang
mempunyai
arus
yang
menggambarkan langkah-langkah penyelesaian suatu masalah. Flowchart
merupakan cara penyajian dari suatu algoritma.
Ada 2 jenis Flowchart :
1. System Flowchart
Menggambarkan urutan proses dalam system dengan menunjukkan alat
media input, output serta jenis media penyimpanan dalam proses
pengolahan data.
2. Program Flowchart
Menggambarkan urutan instruksi yang digambarkan dengan symbol
tertentu untuk memecahkan masalah dalam suatu program.

B. Simbol Flow Chart
Secara garis besar simbol Flowchart terdiri dari:

1. Simbolpenghubung alur (Flow Direction Symbols)
2. Simbol Proses (Processing Symbols)
3. Simbol Input-Output (Input-Output Symbols)
Bentuk umum dari symbol-simbol Flow Chart antara lain:

SIMBOL

.:: Muhammad Romzi

NAMA

KETERANGAN

Terminator

Simbol Awal (Start) /
Simbol Akhir (End)

Flow Line

Simbol aliran /
penghubung

Proses

Perhitungan /
pengolahan

15

.:: Muhammad Romzi

Input/Output Data

Pembacaan data (read) /
penulisan (write)

Decision

Simbol
pilihan

Preparation

Inisialisasi/pemberian
nilai awal

Predefined Process
(subprogram)

Proses
menjalankan
subprogram

On Page Connector

Penghubung Flow chart
pada satu halaman

Off Page Connector

Penghubung Flow chart
pada halaman berbeda

pernyataan

16

Contoh Flow Chart

START

INPUT (PANJANG)

INPUT (LEBAR)

LUAS = PANJANG * LEBAR

OUTPUT (LUAS)

END

Gambar 4. Flow Chart Luas Persegi Panjang

.:: Muhammad Romzi

17

START

INPUT
UNIT, JML

BYAWAL =
UNIT*JML

IF
BYAWAL
>=100000

YES

POT=
(BYAWAL*10)/100

NO

POT=0

PRINT
POT

BYRAKHIR=
BYAWAL-POT

PRINT
BYRAKHIR

END

Gambar 5. Flow Chart Diskon Pembayaran

.:: Muhammad Romzi

18

PEMROGRAMAN
PADA PASCAL
A. Translasi Teks Algoritma kedalam Pascal
Teks Algoritma dapat dijalankan pada komputer setelah ditranslasi kedalam
bahasa pemrograman tertentu. Bahasa pemrograman yang digunakan pada
bahasan ini adalah bahasa pascal.
Sebagai contoh perhatikan algoritma berikut ini:

Algoritma Cetak_Ucapan
{mencetak ucapan „Selamat Belajar „ dan diikuti dengan nama}
Deklarasi
nama : string;
Deskripsi
nama‟Ahmad‟
write(„Selamat Belajar‟, nama)

Translasi ke dalam Pascal

Program Cetak_Ucapan;
Var
nama : string;
Begin
End.

nama:=’Ahmad’;
write(‘Selamat Belajar ’, nama);

.:: Muhammad Romzi

19

Penjelasan Program

1.
2.
3.
4.
5.
6.
7.
8.

Program Cetak_Ucapan;
Uses wincrt;
Var
Nama : string;
Begin
Nama := ‘Ahmad’;
Write (‘Selamat Belajar ‘,nama);
End.

1.

Judul algoritma menjadi judul program dan diakhiri dengan tanda
titik koma (;).
File library untuk unit tampilan layar
Tulisan Deklarasi menjadi Var yang menandakan adanya
pendeklara-sian variabel pada program.
Deklarasi diatas mendeklarasikan variabel „nama‟ dengan tipe
„string‟ diikuti dengan tanda titik koma (;).
Blok awal program
Pemberian nilai pada variabel nama dengan nilai „Ahmad‟
Menampilkan tulisan Selamat Belajar dengan disertai pemanggilan
variabel nama
Blok akhir program

2.
3.
4.
5.
6.
7.
8.

B. Menuliskan Kode Program pada TPW 1.5
1. Menjalankan TPW 1.5
Cara menjalankan TPW 1.5 adalah sebagai berikut:
1.
Klik Start Program TPW 1.5TPW 1.5

Gambar 6. Memulai TPW 1.5
2.

Tampil Jendela Progam TPW 1.5

Klik tanda X
untuk menutup
jendela welcome

Gambar 7. Jendela Welcome

.:: Muhammad Romzi

20

3.

Klik menu
FileNew untuk
menampilkan
jendela baru

Gambar 8. Menampil Editor Baru
4.

Tuliskan kode Program pada jendela baru tersebut

Gambar 9. Menuliskan Kode Program
5.

Jalankan dengan menekan tombol Ctrl dan F9 secara
bersamaan atau klik menu run untuk menjalankan program

Gambar 10. Menjalankan Program

.:: Muhammad Romzi

21

2. Program Error
Ada kemungkinan pada saat program dijalankan akan terdapat pesan
kesalahan disebabkan kesalahan penulisan program dan sebagainya.
Untuk mengatasinya, perhatikan pesan kesalahan yang ditampilan yang
terdapat pada bagian bawah editor program dan juga perhatikan tanda
blok hitam berada. Untuk lebih jelasnya perhatikan contoh program
berikut:
1.

Blok
Hitam

Error 85: ‘;”
expected

Gambar 11. Error Program
Keterangan:
Saat program dijalankan terdapat tanda blok hitam, maka
pusatkan perhatian dibaris mana blok hitam itu berada,
perhatikan apa yang kurang pada baris tersebut, apabila tidak
ada yang kurang alias sudah benar, maka perhatikan baris
program yang terdapat diatas blok hitam itu.
Pada baris program diatas blok hitam itu ternyata memiliki
error, apa errornya…?. Ternyata sesuai dengan pesan
kesalahan (Error 85: ‘;” expected) errornya yaitu kurang tanda
titik koma (;) setelah ‘Ahmad’ .
2

Lakukan perbaikan dengan cara menambahkan tanda titik koma
(;) pada bagian yang dimaksud, setelah itu jalankan ulang
kembali program dengan cara menekn tombol CTRL+F9 atau
melalui Menu Run
Berikut hasil program yang telah diperbaiki

.:: Muhammad Romzi

22

Gambar 12. Jendela Output Progam
3. Menyimpan Program
Untuk memudahkan pencarian program, biasakan menyimpan program
pada folder yang telah ditentukan. Untuk itu sebelum menyimpan
program, buatlah folder terlrbih dahulu dengan nama folder bebas asal
mudah diingat. Sebagai contoh pada modul ini forlder dibuat dengan
nama „LATIHAN’ yang dibuat pada drive D.
Langkah Peyimpanan Program sebagai berikut:
1.
2.

Buat sesuai dengan nama dimaksud yaitu „LATIHAN‟ pada drive
D (D:\LATIHAN)
Klik menu FileSave

Gambar 13. Menu Simpan Program

.:: Muhammad Romzi

23

3.

Arahkan lokasi penyimpanan pada Drive D

Drive
D:\

Gambar 14. Jendela Simpan Program
4.

Double klick pada drive D:\ , hingga posisi Path berubah seperti
pada gambar 16.

Double
Klick
Disini

Gambar 15. Klick Drive
5.

Gambar 16. Path Drive D

.:: Muhammad Romzi

24

6.

Setelah posisi path drive menjadi D:\ , kemudian cari folder
LATIHAN pada drive D:\ selanjutnya Klik ganda pada folder
tersebut, sehingga posisi seperti gambar berikut:

Lokasi Path

Gambar 17. Path Drive D:\Latihan
7.

Beri nama File dengan nama „latih1.pas‟ pada kotak File name

Gambar 18. Nam File
8.

Klik OK untuk simpan program dan sekligus menutup jendela
penyimpanan program.

Gambar 18. Tombol OK
9

Nama File pada Title Bar

Gambar 19. Nama File Pada Title Bar

.:: Muhammad Romzi

25

C. Statement Input/Otput
1.

Write/Writeln
Write
: Menampilkan data dalam satu baris
Writeln
: Menampilkan data disertai dengan penambahan
baris baru
Contoh:
Statemen

Hasil

Write(„Selamat „);
Write(„Belajar‟)

Selamat Belajar

Writeln(„Selamat „);
Writeln(„Belajar‟)

Selamat
Belajar

Read/Readln
Statemen untuk membaca data yang diinputkan
Write(„Masukkan Nama : „);readln(nm);
Keterangan: membaca nilai yang disimpan dalam variabel nm

D. Struktur Perulangan
1.

For..To..Do
For to do, merupakan bentuk perulangan positip.
Bentuk umum perulangan For adalah
FOR [varibel perulangan] := [nilai awal] TO [nilai akhir] DO
contoh:
Program 1
1.
2.
3.
4.
5.
6.
7.
8.

.:: Muhammad Romzi

program perulangan;
uses wincrt;
Var
a : integer;
Begin
For a:= 1 to 5 do
writeln('AKMI’);
End.

26

Output Program 1
AKMI
AKMI
AKMI
AKMI
AKMI
Keterangan :
Program diatas menghasilkan tulisan „AKMI‟ sebanyak 5 kali
Program 2
1. program perulangan;
2. uses wincrt;
3. Var
4. a : integer;
5. Begin
6. For a:= 1 to 5 do
7. writeln('a’);
8. End.
Output Program 2
a
a
a
a
a
Keterangan :
Program diatas menghasilkan huruf „a‟ sebanyak 5 kali
Program 3
1. program perulangan;
2. uses wincrt;
3. Var
4. a : integer;
5. Begin
6. For a:= 1 to 5 do
7. writeln('a’);
8. End.
Output Program 3
1
2
3
4
5

.:: Muhammad Romzi

27

Keterangan :
Program diatas menghasilkan deret angka dari 1 s.d 5
Pertanyaan:
Apa perbedaan antara program 2 dengan program 3 diatas?
Apa pendapat anda tentang kedua program diatas?
2.

For..DownTo..Do
For Downto do, merupakan bentuk perulangan negatip.
Bentuk umum perulangan For..DownTo..Do adalah
FOR [varibel perulangan] := [nilai akhir] DOWNTO [nilai awal] DO

contoh:
Program A
1. program perulangan;
2. uses wincrt;
3. Var
4. a : integer;
5. Begin
6. For a:= 5 Downto 1 do
7. writeln('AKMI’);
8. End.
Output Program A
AKMI
AKMI
AKMI
AKMI
AKMI
Keterangan :
Program diatas menghasilkan tulisan „AKMI‟ sebanyak 5 kali
Program B
1. program perulangan;
2. uses wincrt;
3. Var
4. a : integer;
5. Begin
6. For a:= 5 downto 1 do
7. writeln('a’);
8. End.

.:: Muhammad Romzi

28

Output Program B
a
a
a
a
a
Keterangan :
Program diatas menghasilkan huruf „a‟ sebanyak 5 kali
Program C
1. program perulangan;
2. uses wincrt;
3. Var
4. a : integer;
5. Begin
6. For a:= 5 downto 1 do
7. writeln(a);
8. End.
Output Program C
5
4
3
2
1
Keterangan :
Program diatas menghasilkan deret angka dari dari besar ke
kecil (descending) atau perulangan negatif
Pertanyaan:
Apa perbedaan antara program B dengan program C diatas?
Apa perbedaan antara program 3 dengan program C diatas?
Jelaskan perbedaan antara program A dengan program 1!
Jelaskan perbedaan antara program B dengan program 2!
Jelaskan perbedaan antara program C dengan program 3!
3.

While..Do
While Do merupakan perulangan positip. Dengan menggunakan
statemen ini perulangan dilakukan selagi kondisinya terpenuhi
atau kondisi Benar (True).
Contoh Program, Apabila kondisinya terpenuhi:

.:: Muhammad Romzi

29

Program 4
program perulangan;
1.
2.
uses wincrt;
Var
3.
4.
a : integer;
Begin
5.
6.
a :=1;
7.
while a < 5 do
Begin
8.
9.
writeln(a);
10.
a := a + 1;
11. End;
12. End.
Output Program 4
1
2
3
4
Keterangan:
Program diatas menghasilkan deret angka 1 s.d 4
Pemberian nilai awal
Contoh Program, Apabila kondisinya tidak terpenuhi:
Program 5
program perulangan;
1.
2.
uses wincrt;
Var
3.
4.
a : integer;
Begin
5.
6.
a :=5;
7.
while a < 5 do
Begin
8.
9.
writeln(a);
10.
a := a + 1;
11. End;
12. End.
Program 5 tidak dapat menampilkan output.
4.

Repeat..Until
Repeat..Until merupakan perulangan positip. Perulangan akan
dilakukan hingga kondisi tidak terpenuhi.
Contoh Program, Apabila kondisinya tidak terpenuhi:

.:: Muhammad Romzi

30

Program 5
1.
Program perulangan;
2.
uses wincrt;
3.
Var
4.
a : integer;
5.
Begin
6.
a :=1;
7.
Repeat
8.
Begin
9.
writeln(a);
10.
a := a + 1;
11. End;
12.
until a > 5
13. End.
Output Program 5
1
2
3
4
5
Contoh Program, Apabila kondisinya terpenuhi:

Program 6
1.
Program perulangan;
2.
uses wincrt;
3.
Var
4.
a : integer;
5.
Begin
6.
a :=10;
7.
Repeat
8.
Begin
9.
writeln(a);
10.
a := a + 1;
11. End;
12.
until a > 5
13. End.
Output Program 6
10

.:: Muhammad Romzi

31

Program 7
1.
Program perulangan;
2.
uses wincrt;
3.
Var
4.
a : integer;
5.
Begin
6.
a :=1;
7.
Repeat
8.
Begin
9.
writeln(a);
10.
a := a + 1;
11. End;
12.
until a < 5
13. End.
Output Program 7
1

Keterangan:
Perulangan Repeat..Until akan melakukan perulangan minimal
satu kali, berbeda dengan perulangan menggunakan while..do,.
Perulangan while..do tidak akan melakukan perulangan apabila
kondisinya tidak terpenuhi.

E. Struktur Percabangan
Percabangan
kondisi yang
aksi. Pada
percabangan
percabangan
1.

adalah bentuk penyeleksian aksi yang dilaksanakan berdasarkan
ditentukan. Biasanya aksi yang diberikan terdiri lebih dari satu
sebagian program yang komplek, kadangkala terdapat
didalam percabangan (percabangan tersarang). Jenis
yang umum digunakan antara lain:

IF..Then..Else
Percabangan yang menyeleksi suatu kondisi yang saling
berkaitan. Bentuk umum percabangan dengan statemen ini
adalah:
a. Satu Kondisi Dua Aksi
IF THEN

ELSE


.:: Muhammad Romzi

32

b. Lebih dari satu kondisi

IF THEN

ELSE
IF THEN

ELSE
IF THEN

ELSE


IF suatu bilangan habis dibagi dua Then
Bilangan itu bilangan genap
Else
Bilangan itu bilangan ganjil
Contoh Program:
Menentukan apakah genap atau ganjil, berdasarkan bilangan
yang dimasukkan.
Program 8
1.
Program percabangan;
2.
uses wincrt;
3.
Var
4.
bil : integer;
Begin
5.
6.
Write(‘Masukkan Bilangan : ‘);
7.
Readln(bil);
If bil mod 2 = 0 then
8.
9.
Writeln(‘Bilangan Genap’)
10. Else
11.
Writeln(‘Bilangan Ganjil’);
12. End.

2.

Case..OF
Percabangan yang menyeleksi suatu kondisi yang saling
berlepasan. Bentuk umum percabangan dengan statemen ini
adalah:

.:: Muhammad Romzi

33

Case Of
Case : statement;

Case : statement;
End
Atau
Case Of
Case : statement;

Case : statement;
Else
statement
End
Contoh Program:
Menentukan predikat nilai berdasarkan masukan nilai huruf
berikut:
Nilai Huruf
A
B
C
D
E

Prdikat
Istimewa
Baik
Cukup
Buruk
Buruk Sekali

Program 8
1.
program percabangan;
2.
uses wincrt;
3.
var
4.
nh
: char;
5.
pre : string;
6.
Begin
7.
write('Nilai Huruf :');
8.
readln(nh);
9.
case nh of
10. 'A' : pre := 'Istimewa';
11. 'B' : pre := 'Baik';
12. 'C' : pre := 'Cukup';
13. 'D' : pre := 'Buruk';
14. 'E' : pre := 'Buruk sekali';
15. end;
16. writeln('Predikat Nilai : ',pre);
17. end.

.:: Muhammad Romzi

34

F. ARRAY
Array adalah tipe data terstruktur yang dapat menyimpan lebih dari satu nilai
yang sejenis. Tipe data pada array dapat berupa integer, real, char dan
string. Berikut, contoh pendeklarasian array

1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.

program percabangan;
uses wincrt;
var
Nmhari : array[1..7] of string;
a
: integer;
Begin
for a:= 1 to 7 do
begin
write('Nama Hari Ke-',a,' :');
readln(nmhari[a]);
end;
CLRSCR;
writeln('================');
writeln('NAMA-NAMA HARI');
writeln('================');
for a:= 1 to 7 do
writeln(a,'
',nmhari[a]);
end.

G. Prosedur
Prosedur adalah program terpisah atau subprogram yang dibuat dengan
tujuan untuk menyederhanakan program. Prosedur ditulis dalam satu blok
program yang cukup ditulis satu kali tetapi dapat dipanggil berulang kali.
Berikut contoh penggunaan prosedur dalam program.

1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.

.:: Muhammad Romzi

program prosedur1;
uses wincrt;
procedure judul;
begin
writeln('----------------------');
writeln(' PERKALIAN BILANGAN ');
writeln('======================');
end;
var
a, b : integer;
begin
write('Masukkan Bilangan Pertama : ');

35

14.
15.
16.
17.
18.
19.
20.
21.

readln(a);
write('Masukkan Bilangan Kedua
: ');
readln(b);
judul;
writeln('Billangan Pertama : ',a);
writeln('Billangan Kedua
: ',b);
writeln('Hasil Perkalian
: ',a*b);
end.

H. Fungsi
Fungsi hampir sama dengan prosedur, perbedaannya fungsi harus
dideklarasikan dengan tipenya. Tipe deklarasi menunjukkan tipe hasil dari
fungsi. Cara penulisan function adalah:
FUNCTION identifier(parameter) : type
Contoh:
function perkalian (var a,b :integer):integer;
Berikut contoh penggunaan fungsi dan prosedur dalam program.
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.

program prosedur1;
uses wincrt;
procedure judul;
begin
writeln('----------------------');
writeln(' LUAS PERSEGI PANJANG ');
writeln('======================');
end;
function perkalian (var a,b : integer): integer;
begin
perkalian := a * b;
end;
var
pj, lb : integer;
begin
write('Masukkan Nilai Panjang : ');
readln(pj);
write('Masukkan Nilai Lebar
: ');
readln(lb);
judul;
writeln('Nilai Panjang
: ',pj);
writeln('Nilai Lebar
: ',lb);
writeln('Luas Persegi Panjang

:

',perkalian(pj,lb));

end.

.:: Muhammad Romzi

36

DAFTAR PUSTAKA
Jogiyanto H.M. 1997. Turbo Pascal. Andi Offset Yogyakarta
Rinaldi Munir. 2001. Algoritma dan Pemrograman Dalam Bahasa
Pascal dan C, Buku 1. Informatika Bandung

.:: Muhammad Romzi

37

PENULIS

Muhammad Romzi, mengajar di AMIK AKMI Baturaja sejak tahun 2002 dengan
riwayat sebagai berikut:
Amanah Jabatan:
1.
2.
3.
4.
5.

Ka.
Ka.
Ka.
Ka.
Ka.

LPPM AKMI Baturaja, tahun 2004
Perpustakaan AKMI Baturaja, tahun 2005
BAAK AKMI Baturaja, tahun 2007
Prodi MI, tahun 2008
BPM, tahun 2012

.:: Muhammad Romzi

38