Modul Dasar Pemrograman
Modul Dasar Pemrograman
DASAR PE MROGRAMAN
Disusun oleh:
1. Dia n Ra c hm a wa ti, S.Si., M.Kom .
2. Ilm a Sa kina h Pa rind uri
3. Fitri Aulia
4. Fa ra d hilla Cha ira ni
5. Wa hyu Fra nc esc o Told o Huta b a ra t
6. And rew Bened ic tus Ja m esie
7. John Tri Putra Sihom b ing
S- 1 ILMU KOMPUTER
FASILKOM- TI
USU
No. Dokumen : IK-GKM-ILK-Fasilkom-TI-001-KDP
Edisi : 01
MODUL
Revisi : 09
PRAKTIKUM
Berlaku Efektif : 20 September 2021
Halaman : i dari ii
KATA PENGANTAR
Puji syukur ke hadirat Allah SWT. Tuhan Yang Maha Esa karena atas berkat dan rahmat-
Nya sehingga penyusun dapat menyelesaikan buku penuntun praktikum ini. Sholawat dan salam
kepada Nabi Muhammad saw. Sosok manusia teladan bagi hidup dan kehidupan manusia sampai
akhir zaman.
Modul praktikum ini disusun berdasarkan silabus mata kuliah praktikum Program Studi S1
Ilmu Komputer Fasilkom-TI USU. Buku ini terdiri 8 modul atau judul percobaan yang terdiri dari
tujuan, teori, latihan dan tugas praktikum dengan harapan mahasiswa dapat membuat jurnal sebagai
tolak ukur bagi keberhasilan pencapaian tujuan praktikum. Buku penuntun praktikum ini merupakan
buku pedoman dasar dan bahan ajar dalam pelaksanaan praktikum.
Atas tersusunnya buku ini, penyusun mengucapkan terima kasih kepada Ketua dan
Sekretaris Program Studi S1 Ilmu Komputer, Bapak/Ibu Dosen, Staf Tata Usaha Program Studi S1
Ilmu Komputer dan semua pihak yang telah membantu dalam penyusunan buku penuntun
praktikum ini. Buku penuntun praktikum digunakan oleh Program Studi S1 Ilmu Komputer
Fasilkom-TI USU dan merupakan implementasi dari pelaksanaan Sistem Manajemen Mutu
Perguruan Tinggi.
Buku penuntun ini adalah revisi dari buku penuntun praktikum terdahulu. Penyusun
menyadari buku ini masih jauh dari kesempurnaan oleh karena itu penyusun sangat mengharapkan
kritik dan saran dari para pembaca demi menyempurnakan buku penuntun praktikum ini. Dengan
adanya buku penuntun praktikum diharapkan dapat membantu mahasiswa dalam pelaksanaan
praktikum dan bermanfaat secara maksimal bagi semua pihak.
Nama :
NIM :
MODUL I
PENGENALAN PEMROGRAMAN DAN BAHASA
PEMROGRAMAN PASCAL
I. Tujuan
1. Praktikan dapat memahami apa itu Algoritma, Program, dan Bahasa Pemrograman.
2. Praktikan dapat memahami apa itu Bahasa Pemrograman Pascal.
3. Praktikan dapat memahami apa Tipe Data dan Jenis Tipe Data dalam Pascal.
II. Teori
1. Algoritma dan Program
Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara
sistematis dan logis. Kata logis merupakan kata kunci dalam algoritma. Langkah-langkah
dalam algoritma harus logis dan harus dapat ditentukan bernilai salah atau bernilai benar.
Algoritma tidak selalu identik dengan ilmu komputer saja. Dalam kehidupan sehari-hari
pun banyak terdapat proses yang dinyatakan dalam suatu algoritma. Cara-cara membuat kue
atau masakan yang dinyatakan dalam suatu resep juga dapat disebut algoritma. Pada setiap
resep selalu ada urutan langkah-langkah membuat masakan. Bila langkah-langkahnya tidak
logis atau tidak berurutan, maka tidak dapat dihasilkan masakan yang diinginkan. Algoritma
bisa ditampilkan dalam bentuk bahasa ilmiah, pseudocode, atau flowchart.
Contoh Algoritma
1. Menghitung luas dan keliling lingkaran
- Baca atau tentukan nilai jari-jari lingkaran
- Phi merupakan konstanta dengan nilai 3.14
- Menghitung luas dan keliling
L = phi * r * r
K = 2 * phi * r
- Mencetak atau menampilkan nilai luas dan keliling
2. Menghitung rata-rata 3 buah bilangan
- Baca atau tentukan nilai bilangan 1, bilangan 2, dan bilangan 3
- Jumlahkan ketiga bilangan tersebut
- Bagi jumlahnya dengan 3
- Tulis hasilnya
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 1 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
1. Definisikan Masalah
Berikut hal-hal yang harus diketahui dalam menganalisis suatu masalah:
- Kondisi awal, input yang tersedia
- Kondisi akhir, output yang diinginkan
- Data dan operator yang tersedia
- Syarat dan kendala yang harus dipenuhi
2. Buat Algoritma dan Struktur Cara Penyelesaian
3. Menulis Program Dalam Suatu Bahasa Pemrograman Tertentu
4. Mencari Kesalahan
5. Uji dan Verifikasi Program
6. Dokumentasi Program
7. Pemeliharaan Program
b) <daftar unit> berisi daftar unit yang akan digunakan di dalam program. Untuk
membatasi unit satu dengan yang lainnya, gunakan tanda koma (,). Contoh:
uses crt;
c) <bagian deklarasi> berisi macam-macam deklarasi yang dibutuhkan oleh program, yang
meliputi hal-hal berikut:
• Deklarasi tipe data
• Deklarasi konstanta
• Deklarasi variabel
• Deklarasi prosedur
• Deklarasi fungsi
• Deklarasi label
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 2 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
4. Komentar Program
Ada dua macam cara untuk membuat komentar program pada bahasa Pascal:
- Menggunakan tanda (*…*)atau {…}
Digunakan untuk menuliskan komentar yang banyaknya lebih dari satu baris.
- Menggunakan tanda //…
Digunakan untuk menuliskan satu baris komentar.
NB: Jangan menuliskan sintaks program di sebelah kanan // karena sintaks akan dianggap sebagai komentar
Contoh:
begin // ini komentar 1 baris di kanan sintaks program
clrscr;
{ini komentar 2 baris, yang berada di dalam kurung kurawal}
writeln(‘S-1 Ilmu Komputer USU’);
end.
5. Variabel
Adalah suatu pengenal yang didefinisikan oleh programmer untuk menyimpan nilai atau
data tertentu yang dibutuhkan dalam program pada saat program sedang berjalan (run time).
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 3 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
var
x : integer;
nama : string[25];
6. Konstanta
Konstanta adalah tetapan yang nilainya tidak dapat diubah selama program berjalan.
Bentuk umum konstanta:
const
NamaKonstanta1 : nilaiKonstanta1;
NamaKonstanta2 : nilaiKonstanta2;
7. Tipe Data
a) Bilangan Bulat
Berikut ini tipe yang termasuk ke dalam tipe bilangan bulat di dalam bahasa Pascal:
Alokasi
Tipe Data Penjelasan
Memori
Shortint Tipe data dengan nilai bilangan bulat mulai (1 Byte)
dari –128 hingga 127
b) Bilangan Riil
Adalah bilangan yang mengandung angka di belakang koma. Tipe data yang termasuk
ke dalam tipe bilangan riil:
Tipe Data Rentang (Jangkauan) Nilai
Real 2.9 × 10−39 𝑠𝑎𝑚𝑝𝑎𝑖 1.7 × 1038
Single 1.5 × 10−45 𝑠𝑎𝑚𝑝𝑎𝑖 3.4 × 1038
Double 5.0 × 10−324 𝑠𝑎𝑚𝑝𝑎𝑖 1.7 × 10308
Extended 3.4 × 10−4932 𝑠𝑎𝑚𝑝𝑎𝑖 1.1 × 104932
Comp −9.2 × 10−18 𝑠𝑎𝑚𝑝𝑎𝑖 9.2 × 1018
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 4 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
c) Karakter
Tipe ini direpresentasikan dengan menggunakan tipe char. Berguna untuk
merepresentasikan nilai-nilai karakter seperti ‘A’, ‘B’, ‘C’, ‘D’, ‘E’.
d) String
Tipe ini direpresentasikan dengan menggunakan tipe string. String merupakan
kumpulan dari karakter yang terangkai menjadi satu kata ataupun kalimat, misalnya
‘ILKOM JAYA’.
e) Tipe Logika
Tipe yang hanya memiliki dua buah nilai yaitu true dan false. Pascal menyediakan
tipe khusus untuk mendefinisikan data-data logic tersebut, yaitu tipe Boolean.
8. Penulisan Identifier
Identifier merupakan suatu nama yang digunakan sebagai pengenal dari suatu variabel,
fungsi, konstanta, struct, objek dan sebagainya. Penulisan identifier yang sah harus mengikuti
aturan berikut:
1. Gabungan dari huruf – huruf. Contoh: nama, saya, aku, satu dan sebagainya.
2. Gabungan dari huruf dan angka dimana harus diawali dengan huruf terlebih dahulu.
Contoh : N01, N4ma, Say4, s4t0 dan sebagainya.
3. Dimulai dengan tanda underscore. Contoh: _aku, _kamu, _dia, _1satu
4. Apabila lebih dari satu kata digunakan tanda underscore. Contoh: saya_makan,
aku_cinta_dia, fungsi_satu, konstanta_1 dan sebagainya.
5. Tidak berupa sintaks/prosedur bawaan dari PASCAL. Contoh: write, read, for, case, if,
dll.
III. Tugas
1. Buatlah program untuk menampilkan “Belajar Pascal”!
2. Buatlah program untuk menampilkan daftar nama hari!
*Catatan: output diurutkan ke bawah.
3. Buat program untuk menampilkan biodata pribadi Anda, data-data Anda diinputkan terlebih
dahulu setelah itu ditampilkan!
Contoh :
Input :
Masukkan Nama Anda : Dwi Puspita Sari
Masukkan NIM Anda : 161401086
Masukkan Kom Anda : B
Masukkan Alamat Anda : Jalan Bunga Asoka
Output :
Hallo, Nama saya Dwi Puspita Sari, NIM saya 161401086, saya di kom B,
alamat saya di Jalan Bunga Asoka. Salam Kenal
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 5 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 6 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
MODUL II
OPERATOR
I. Tujuan
1. Praktikan memahami operator-operator serta dapat menggunakan operator dalam
pemrograman Pascal.
III. Teori
Tanda operasi (operator) dalam Pascal dikelompokkan ke dalam 9 kategori, yaitu: assignment,
binary, unary, bitwise, relational, logical, address, set, dan string operator.
1. Assignment Operator
Assignment operator digunakan untuk memberikan nilai. Operator ini menggunakan simbol
titik dua diikuti oleh tanda sama dengan :=
Contoh: A := B;
2. Binary Operator
Operator ini digunakan untuk mengoperasikan dua buah operand. Operand dapat berbentuk
konstanta/variabel. Operator ini digunakan untuk operasi aritmatika yang berhubungan
dengan nilai tipe data integer dan floating point.
Operator Operasi
* Perkalian
DIV Pembagian bulat
/ pembagian real
MOD Modulus
+ Pertambahan
− Pengurangan
3. Unary Operator
Operator ini hanya menggunakan sebuah operand saja. Operand dapat berbentuk konstanta
atau variabel. Unary operator dapat berupa unary minus atau plus.
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 7 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
4. Bitwise Operator
Operator ini digunakan untuk operasi bit per bit pada integer. Operasi yang dipergunakan
antara lain: NOT, AND, OR, XOR, Shl, dan Shr.
Operator Operasi
NOT bitwise negation
AND bitwise and
OR bitwise or
XOR bitwise xor
SHL shift left
SHR shift right
5. Relational Operator
Operator ini digunakan untuk membandingkan hubungan antara dua buah operand dan
menghasilkan tipe boolean, yaitu true atau false.
Operator Operasi
= sama dengan
<> tidak sama dengan
> lebih besar dari
>= lebih besar sama dengan dari
< lebih kecil dari
<= lebih kecil sama dengan dari
IN seleksi dari anggota himpunan
6. Logical Operator
Logical operator terdapat empat operator, yaitu: not, and, or, dan xor. Bentuk operator ini
sama dengan bitwise operator, tetapi penggunaannya lain. Operator ini bekerja dengan nilai-
nilai logika true dan false.
7. Address Operator
Operator ini khusus berhubungan dengan alamat di memori, yaitu address of operator (@)
dan inderiction operator (^). Operator @ akan menghasilkan alamat dari suatu nilai variabel
dan operator ^ akan memberikan nilai di alamat yang ditunjukkan.
8. Set Operator
Set operator digunakan untuk operasi himpunan.
Operator Operasi
+ union / sum
− set difference
* intersection
9. String Operator
Operator ini digunakan untuk operasi string. Hanya ada sebuah operator string saja, yaitu
operator + yang digunakan untuk menggabungkan string.
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 8 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
IV. Latihan
begin
writeln(25 * 3);
writeln(14 / 4);
writeln(14 div 4);
writeln(14 mod 4);
end.
Program 2.1 Penggunaan binary operator
begin
writeln(not 3);
writeln(4 or 3);
writeln(not -3);
writeln(3 and 2);
writeln(2 xor 3);
writeln(6 shl 4);
writeln(160 shr 6);
end.
Program 2.2 Penggunaan bitwise operator
var
a,b : integer
begin
a := 5;
b := 2;
writeln(a = b);
writeln(a = 5);
writeln(a <> b);
writeln(a > b);
writeln(a < b);
end.
begin
writeln(not True);
writeln(True and False);
writeln(False or True);
writeln(True xor False);
end.
Program 2.4 Penggunaan logical operator
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 9 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
var
nilai : integer;
pointer : ^integer;
begin
nilai := 80;
pointer := @nilai;
writeln(pointer^);
end.
var
lab1, lab2, lab3, lab : string[20];
begin
lab1 := ‘Konsep ‘;
lab2 := ‘Dasar ‘;
lab3 := ‘Pemrograman’;
lab := lab1 + lab2 + lab3;
Writeln(‘Lab : ‘, lab);
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 10 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
V. Tugas
1. Buatlah program untuk menghitung jumlah gaji yang diterima seorang karyawan dalam
sebulan dengan ketentuan sebagai berikut :
a. Inputan : nama karyawan, gaji pokok banyak hari lembur, banyak hari tidak bekerja.
b. Syarat untuk menghitung jumlah gaji yang diterima dalam sebulan adalah :
• Gaji lembur = Rp100.000 x banyak hari lembur
• Potongan gaji = - Rp20.000 setiap 1 hari tidak bekerja
• Gaji total merupakan jumlah dari Gaji pokok + Gaji lembur – Potongan gaji
Input Output
Nama Karyawan : Putra Gaji Total : Rp 5280000
Gaji Pokok : 5000000
Lembur (hari) :3
Tidak Bekerja (hari) :1
2. Buatlah program untuk menghitung nilai akhir seorang mahasiswa dengan ketentuan sebagai
berikut:
a. Inputan : nama mahasiswa, nilai keaktifan, nilai tugas dan nilai ujian.
b. Proses yang dilakukan untuk mendapatkan nilai murni dari masing-masing nilai adalah:
• Nilai murni keaktifan = Nilai keaktifan x 30%
• Nilai murni tugas = Nilai tugas x 30%
• Nilai murni ujian = Nilai ujian x 40%
• Nilai akhir adalah Nilai murni keaktifan + Nilai murni tugas + Nilai murni ujian.
Input Output
Nama Mahasiswa : Amanda Nilai Akhir : 87.50
Nilai Keaktifan : 80
Nilai Tugas : 85
Nilai Ujian : 95
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 11 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
MODUL III
PENGGUNAAN OPERASI KONDISI
I. Tujuan
1. Praktikan dapat memahami penggunaan operasi kondisi dan operasi logika dalam
pembuatan program kondisi.
2. Praktikan dapat mengaplikasikan Operasi Kondisi dalam sebuah program.
III. Teori
Operasi kondisi adalah menjalankan suatu perintah pada program dengan output yang
berbeda sesuai dengan hasil dari kondisi-kondisi. Output akan ditampilkan apabila kondisi yang
ditetapkan terpenuhi (true), atau akan menghasilkan output yang berbeda saat kondisi tidak
terpenuhi (false) atau langsung keluar dari blok operasi.
1. Statement If
Statement if akan diikuti oleh kondisi yang akan diperiksa, dan disusul oleh kata kunci
then. Setelah kata kunci then, tulis perintah yang akan dijalankan jika hasil kondisi yang
diperiksa sebelumnya bernilai 1 (true).
1.a Statement if Satu Kasus
Statement if satu kasus berarti perintah akan dijalankan hanya jika kondisi yang
diperiksa sebelumnya bernilai benar. Apabila kondisi yang diperiksa bernilai salah,
maka perintah tidak akan dijalankan.
Bentuk umumnya adalah:
if (kondisi yang diperiksa) then
perintah yang dijalankan;
begin
clrscr;
write ('Masukkan sebuah bilangan bulat: '); readln(x);
readln;
end.
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 12 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
begin
clrscr;
write('Masukkan sebuah huruf: '); readln(huruf);
writeln;
readln;
end.
NB: Bentuk di atas berlaku jika statemen di setiap kondisi HANYA satu baris saja, jika lebih dari satu
baris maka:
if (kondisi) then
begin
perintah_1;
...
perintah_x;
end
else
begin
perintah_y;
end;
NB: Perlu diingat, jika ada perintah sebelum else, perintah end tersebut TIDAK BOLEH diakhiri dengan
titik koma (;). Misalnya pada bentuk umum pertama, sebelum else (...terpenuhi/TRUE) tidak ada
tanda titik koma (;), sama juga pada bentuk umum yang kedua, perintah end di dalam if tidak ada
titik koma (;) karena program masih dilanjutkan oleh else.
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 13 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
begin
clrscr;
write('Masukkan bilangan bulat: '); readln(bil);
readln;
end.
begin
clrscr;
write('Masukkan bilangan bulat: '); readln(bil);
readln;
end.
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 14 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 15 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
2. Statement Case
Apabila kondisi yang didefinisikan di dalam statement if semakin banyak maka hal
tersebut tentu akan menjadi hal yang cukup kompleks. Oleh karena itu, bahasa Pascal
menyediakan alternatif lain untuk melakukan pemilihan yang didasarkan pada nilai-nilai
konstanta tertentu, yaitu dengan menggunakan statement case.
Bentuk umum statement case:
case (ekspresi) of
nilai_konstan1 : statement_1;
nilai_konstan2 : statement_2;
...
nilai_konstan2 : statement_2
else
statemen_default;
end;
begin
clrscr;
readln;
end.
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 16 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
begin
clrscr;
readln;
end.
IV. Tugas
1. Dengan menggunakan operasi kondisi, buatlah sebuah program untuk mengurutkan 3 buah
angka yang di-input-kan secara menaik (ascending).
Input :
Masukkan Nilai 1 : 5
Masukkan Nilai 2 : 2
Masukkan Nilai 3 : 3
Output :
Urutan : 2 3 5
2. Buatlah sebuah program untuk memilih menu makanan yang tersedia. Dengan ketentuan
sebagai berikut:
• Minimal terdapat 5 menu makanan yang dapat dipilih pengguna
• Input program berupa kode menu
• Output program merupakan menu yang dipilih, serta biaya yang harus dibayar
• Menu serta kode yang digunakan tiap praktikan tidak boleh sama
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 17 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
MODUL IV
PERULANGAN DAN PELONCATAN
I. Tujuan
1. Praktikan dapat memahami penggunaan operasi perulangan.
2. Praktikan dapat membuat program yang menggunakan peloncatan dengan benar dalam
program.
III. Teori
Blok pengulangan merupakan suatu blok program yang memiliki mekanisme untuk
melakukan statement secara berulang. Hal ini tentu akan membuat program yang ditulis menjadi
lebih efisien.
1. Statement For
Konstruksi pengulangan for pada umumnya digunakan untuk melakukan pengulangan
yang banyaknya sudah diketahui secara pasti.
Bentuk umum dari statement for:
for variable_index := batas_awal to batas_akhir do
statement_yang_akan_diulang;
NB: Jika statement yang ingin diulang hanya 1 baris, tidak perlu menggunakan begin-end; Tetapi jika statement
yang ingin diulang lebih dari 1 baris, statement harus diletakkan di dalam begin-end.
for variable_index := batas_awal to batas_akhir do
begin
statement_looping_1;
statement_looping_2;
...
Statement_looping_x;
end;
begin
clrscr;
for i := 0 to 4 do
writeln('ILMU KOMPUTER USU ');
readln;
end.
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 18 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
begin
clrscr;
readln;
end.
begin
clrscr;
for i := 5 downto 1 do
begin
writeln(i);
end;
readln;
end.
begin
clrscr;
for i := 1 to 5 do
begin
for j := 1 to 5 do
write(i);
writeln;
end;
writeln;
for i := 1 to 5 do
begin
for j := 1 to 5 do
write(j);
writeln;
end;
readln;
end.
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 19 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
2. Statement While
Berbeda dengan bentuk pengulangan for, pada konstruksi pengulangan while ini terdapat
suatu kondisi yang harus diperiksa terlebih dahulu. Apabila kondisi bernilai true, maka
statement di dalam blok while akan dikerjakan, sedangkan jika false maka program tidak akan
melakukan perulangan.
Bentuk umum statement while:
while (kondisi) do
statement;
NB: Jika statement yang ingin diulang hanya 1 baris, tidak perlu menggunakan begin-end; Tetapi jika statement
yang ingin diulang lebih dari 1 baris, statement harus diletakkan di dalam begin-end.
while (kondisi) do
begin
statement_1;
statement_2;
...
statement_x;
end;
i := 1;
while (i <= 5) do
begin
writeln('Ilmu Komputer USU');
i := i + 1;
end;
readln;
end.
Latihan 4.6 while Cetak Angka 1 sampai 20 yang Ganjil dengan Fungsi inc (increment)
program cetak_1_sampai_20_Ganjil_while_inc;
uses crt;
var
i : integer;
begin
clrscr;
i := 1;
while (i <= 20) do
begin
write(i, ' ');
inc(i,2); //sama dengan i:=i+2;
end;
readln;
end.
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 20 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
3. Statement Repeat-Until
Pernyataan repeat-until digunakan untuk mengulang (repeat) suatu pernyataan atau
blok pernyataan terus-menerus sampai (until) kondisi ungkapannya tidak terpenuhi (false).
Struktur penggunaan perulangan repeat-until.
repeat
pernyataan yang diulang;
until (ekspresi logika);
begin
clrscr;
i := 0;
repeat
i := i + 1;
writeln(i);
until (i = 5);
readln;
end.
begin
clrscr;
writeln('Statement pertama');
goto destination;
writeln('Statement kedua');
writeln('Statement ketiga');
destination: writeln('Ini adalah statement yang akan dituju');
readln;
end. //what happen??
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 21 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
begin
clrscr;
for i := 1 to 100 do
begin
if (i > 3) then
break;
writeln('Statement ke-',i);
end;
writeln;
writeln('Apa yang terjadi??');
readln;
end.
begin
clrscr;
while (true) do
begin
write('Masukkan bilangan bulat negatif: '); readln(x);
if (x > -1) then
continue
else
writeln('Anda telah memasukkan bilangan: ',x);
end;
readln;
end. //apa yang terjadi? :D
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 22 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
procedure contoh;
begin
writeln('Statement 1 di dalam prosedur');
exit;
writeln('Statement 2 di dalam prosedur');
end;
begin
clrscr;
readln;
end.
begin
clrscr;
readln;
end.
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 23 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
IV. Tugas
1. Buatlah sebuah program untuk menghitung jumlah nilai dari 1 sampai n!
Masukan Keluaran
n = 4 1 2 3 4 = 10
1 2 3 = 6
1 2 = 3
1 = 1
2. Buatlah sebuah program untuk membuat tampilan seperti berikut!
*
2 2
* * *
4 4 4 4
* * * * *
3. Buatlah sebuah program untuk membuat tampilan seperti berikut!
*
* * *
* * * * *
* * * * * * *
* * * * *
* * *
*
4. Buatlah sebuah program untuk menghitung rumus kombinasi (𝐶𝑟𝑛 = 𝑛! )
𝑟!(𝑛 −𝑟 )!
5. Di Kota Medan masih belum terlalu banyak orang sakit jiwa, yang ada hanyalah orang yang
sangat dengan KORUPSI. Tetapi berbeda halnya dengan TOGU, dia adalah seorang anak
Siantar yang jumpa orang langsung main tembak langsung. Dia adalah seseorang yang sangat
suka dan sangat teguh dengan apa yang dinamakan dengan integritas. Berjumpalah dia dengan
seorang yang baru dikenalnya yang bernama Putra dan menantang si Togu. Cukup sengit
perdebatan mereka. Mereka berdebat mulai dari Biologi, Fisika, Kimia, Pendidikan,
Kehutanan, Permasalahan Jomblo di Indonesia. Perdebatan mereka sampai ke puncak
klimaks, Si Putra menantang Togu untuk menyelesaikan permasalahan matematika, Si Togu
dipaksa menyelesaikan masalah dengan membuat sebuah segitiga siku-siku di bawah kiri.
Tetapi segitiga itu terbuat dari penjumlahan dari decrement input-an yang input-an dan nilai
awal bernilai satu dan increment 1 ke bawahnya.
Input: Output:
Sebuah baris n (1 ≤ n ≤ 30) Segitiga siku bawah kiri angka menaik
Masukan Keluaran
3 1
2 4
3 5 6
5 1
2 6
3 7 10
4 8 11 13
5 9 12 14 15
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 24 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
MODUL V
ARRAY
I. Tujuan
1. Praktikan memahami array dan penggunaanya.
2. Praktikan dapat membuat program yang menggunakan array.
Var
X : array[1..50] of Integer
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 25 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
Contoh Program :
Program Contoh_Array_Input;
Uses Crt;
Var Bilangan : array[1..20] of Integer;
Begin
ClrScr;
Bilangan[1]:=3;
Bilangan[2]:=29;
Bilangan[3]:=30;
Bilangan[4]:=31;
Bilangan[5]:=23;
Output
Nilai variabel bilangan ke 3 = 30
Nilai variabel bilangan ke 5 = 23
Var
X : array[1..50,1..20,1..5] of integer;
Dalam Larik multi dimensi diatas terdapat tiga indeks. Pengaksesan larik diatas :
X[indeks1] [indeks2] [indeks3];
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 26 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
1. Struktur matriks
program strukturMatriks(input,output);
uses crt;
type
larik = array[1..10,1..10] of integer;
var
matriks1,matriks2 : larik;
begin
matriks1[1,1]:=2;
matriks1[1,2]:=4;
matriks2[2,1]:=9;
matriks2[2,2]:=5;
clrscr;
write(matriks1[1,1],’ ‘);
writeln(matriks1[1,2]);
write(matriks2[2,1],’ ‘);
writeln(matriks2[2,2]);
readln;
end.
2. Penjumlahan matriks
program penjumlahanMatriks(input,output);
uses crt;
type
larik = array[1..10,1..10] of integer;
var
matriks1,matriks2,hasil : larik;
jum,i,j,k : integer;
begin
matriks1[1,1]:=2;
matriks1[1,2]:=4;
matriks1[2,1]:=8;
matriks1[2,2]:=6;
matriks2[1,1]:=7;
matriks2[1,2]:=1;
matriks2[2,1]:=9;
matriks2[2,2]:=0;
clrscr;
writeln(‘ Program Penjumlahan Matriks ‘);
writeln;
writeln(‘Matriks pertama ‘);
for i:=1 to 2 do
begin
for j:=1 to 2 do
begin
write(matriks1[i,j],’ ‘);
end;
writeln;
end;
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 27 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
{proses penjumlahan }
for i:=1 to 2 do
begin
for j:=1 to 2 do
begin
hasil[i,j]:=matriks1[i,j]+matriks2[i,j];
end;
end;
Perkalian matriks
program perkalianMatriks(input,output);
uses crt;
type
larik = array[1..10,1..10] of integer;
var
matriks1,matriks2,hasil2 : larik;
i,j,k : integer;
begin
matriks1[1,1]:=2;
matriks1[1,2]:=4;
matriks1[2,1]:=8;
matriks1[2,2]:=6;
matriks2[1,1]:=7;
matriks2[1,2]:=1;
matriks2[2,1]:=9;
matriks2[2,2]:=0;
clrscr;
writeln(‘ Program Perkalian Matriks ‘);
writeln;
writeln(‘Matriks pertama ‘);
for i:=1 to 2 do
begin
for j:=1 to 2 do
begin
write(matriks1[i,j],’ ‘);
end;
writeln;
end;
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 28 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
{Proses perkalian }
for i:=1 to 2 do
begin
for j:=1 to 2 do
begin
for k:=1 to 2 do
begin
hasil2[i,j]:=hasil2[i,j]+matriks1[i,k]*matriks2[k,j];
end;
end;
end;
1. Buatlah program penjumlahan matriks, dengan jumlah kolom dan baris matriks ke-1 dan ke-2
ditentukan oleh user. Program juga dapat menentukan apakah kedua matriks tersebut dapat
dijumlahkan atau tidak.
2. Buatlah program perkalian matriks, dengan jumlah kolom dan baris matriks ke-1 dan ke-2 ditentukan
oleh user. Program juga dapat menentukan apakah operasi perkalian dapat dilanjutkan atau tidak.
3. Buatlah program untuk menentukan matriks transpose, dengan jumlah baris dan kolom matriks
ditentukan oleh user.
4. Buat program untuk menampung nilai IPK dari n buah mahasiswa, dimana nilai dari n ditentukan oleh user,
kemudian menampilkan semua data tersebut beserta rata-rata IPK, IPK tertinggi dan terendah!
5. Buatlah program untuk membalikkan susunan angka dalam matriks yang dimasukkan.
Input : Terdiri dari banyak angka (n), kemudian diikuti dengan input angka sebanyak n.
Output : Baris angka yang telah dibalikkan susunannya.
INPUT OUTPUT
5 10 8 6 4 2
2 4 6 8 10
7 31 11 10 23 54 45 19
19 45 54 23 10 11 31
No. Dokumen: IK-GKM-ILK-Fasilkom-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 29 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
MODUL VI
PROSEDUR DAN FUNGSI
I. Tujuan
1. Praktikan memahami pembuatan dan pemakaian suatu Prosedur dan Fungsi
2. Praktikan dapat membuat program dengan menggunakan Prosedur dan Fungsi
3. Praktikan dapat membedakan Prosedur dengan Fungsi
Begin
Stars;
Writeln(‘Hello Pascal!’);
Stars;
End.
No. Dokumen: IK-GKM-ILK-FASILKOM-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 30 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
Latihan 5.2
Program ProsedurDenganParameter;
uses crt;
Type
Huruf = String[15];
Var
Nama : Huruf;
Begin
Write(‘Nama Anda = ‘);
Readln(Nama);
Stars(Nama);
Writeln(‘Hello ‘, Nama, ‘!’);
Stars(Nama);
readln();
End.
Begin
{kode program yang akan ditulis}
….
NamaFungsi:=nilai_kembalian;{bagian ini harus diINGAT!}
End;
Beberapa contoh pendefinisian fungsi sederhana yang akan mengalikan dua buah bilangan bulat:
Function Kali(x,y:integer):longint;
Begin
Kali:=x*y;
End;
No. Dokumen: IK-GKM-ILK-FASILKOM-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 31 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
1. Parameter
Parameter merupakan suatu nilai atau referensi yang dilewatkan ke dlam rutin tertentu dan
kehadirannya akan mempengarui proses maupun nilai yang terdapat di dalam rutin itu
sendiri. Parameter ditempatkan di dalam tanda kurung setelah nama rutin bersangkutan.
Setiap parameter yang dilewatkan harus memiliki tipe data tersendiri.
Menurut fungsinya, parameter dibedakan menjadi tiga jenis yaitu sebagai masukan,
keluaran, masukan/keluaran.
2. Parameter Masukan
Secara default parameter yang digunakan di dalam sebuah rutin akan berperan sebagai
masukan, artinya nilai yang disimpan di dalam parameter tersebut akan dijadikan sebagai
input(masukan) untuk melakukan proses yang terdapat di dalam rutin bersangkutan.
Perhatikan contoh:
Latihan 5.3
Program parametermasukan
Uses crt;
End;
Var
a,b,hasil: integer;
begin
a=100;
b=200;
hasil:=jumlahkan(a,b);
writeln(‘Hasil= ‘,hasil);
readln;
end.
3. Parameter Keluaran
Parameter ini berfungsi sebagai penampung nilai hasil proses yang dilakukan oleh suatu
subrutin. Parameter jenis ini biasanya diimplementasikan di dalam sebuah prosedur
sebagai nilai kembalian. Hal ini disebabkan karena prosedur tidak dapat mengembalikan
nilai secara langsung seperti yang dilakukan oleh fungsi.
No. Dokumen: IK-GKM-ILK-FASILKOM-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 32 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
Perhatikan contoh:
Latihan 5.4
Program parameterkeluaran;
Uses crt;
Var
a,b,c: integer;
begin
a:=3; b:=5;
kali(a,b,c);
writeln(‘Hasil= ‘,c);
readln;
end.
4. Parameter Masukan/keluaran
Parameter jenis ini merupakan gabungan dari jenis pertama dan kedua, yaitu berperan
sebagai masukan sekaligus sebagai keluaran. Untuk mendefinisikan parameter sebagai
parameter masukan/keluaran maka kita harus melewatkannya berdasarkan referensi.
Perhatikan contoh:
Latihan 5.5
Program parametermaskel;
Uses crt;
var
a: integer;
begin
a:=10;
tambahsatu(a);
writeln(a);
readln();
end.
V. Tugas
1. Buat program menghitung luas segitiga dengan menggunakan fungsi dengan parameter
masukan!
Input Output
Alas :4 Luas Segitiga : 12
Tinggi : 6
No. Dokumen: IK-GKM-ILK-FASILKOM-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 33 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
2. Buat program menghitung rata-rata dari sejumlah bilangan yang diinputkan operator dengan
fungsi!
Input Output
Banyak Data : 5 Rata – Rata : 3.00
12345
Input Output
Input Output
3 1,1,2
1,2,4
1,4,9
2,6,12
6 1,1,2,3,5,8
1,2,4,8,16,32
1,4,9,16,25,31
2,6,12,20,30,42
No. Dokumen: IK-GKM-ILK-FASILKOM-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 34 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
MODUL VII
RECORD
I. Tujuan
1. Praktikan memahami konsep dasar record dalam Pascal
2. Praktikan dapat menggunakan record dalam pemrograman
II. Tugas Persiapan
1. Tuliskan dengan bahasamu sendiri, apa yang kamu ketahui tentang record !
2. Tuliskan beberapa fungsi dan kegunaan record !
3. Tuliskan fungsi pernyataan WITH pada record, dan jelaskan kelebihan dan kerurangannya!
4. Apa yang anda ketahui tentang array record dan nested record serta tuliskan kegunaannya
masing-masing menurut pendapat kalian!
III. Teori
Record adalah jenis tipe data terstruktur yang berisi beberapa data, yang masing-masing dapat
berlainan tipe. Suatu tipe Record dideklarasikan dengan bentuk sebagai berikut :
Type Identifier = RECORD
Nama_field1 : tipe1;
Nama_field2 : tipe2;
...
Nama_fieldn : tipen;
End;
Masing-masing data field dapat berupa satu atau beberapa nama pengenal dan masing-masing
dinamakan field.
Contoh Penggunaan Record dalam Pascal :
Latihan 7.1
program Record1;
Uses CRT;
Var
data : biodata;
begin
clrscr;
Write(‘ Masukkan Nama Anda : ‘);
readln(data.nama);
Write(‘ Masukkan NIM Anda : ‘);
readln(data.NIM);
Write(‘ Masukkan Umur Anda : ‘);
readln(data.umur);
No. Dokumen: IK-GKM-ILK-FASILKOM-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 35 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
clrscr;
Writeln(‘ Nama Anda : ‘,data.nama);
Writeln(‘ NIM Anda : ‘,data.NIM);
Writeln(‘ Umur Anda : ‘,data.umur);
Readln;
End.
Contoh di atas merupakan contoh record sederhana untuk menginput data mahasiswa. Dalam
record, penampilan data tidak boleh dilakukan secara langsung, Contohnya Writeln(nama),
yang harus kita lakukan adalah kita harus menuliskan variabel dan field yang akan ditampilkan,
contoh Writeln(mahasiswa.nama).
IV. Penugasan Antar Record
Penugasan antar record merupakan penyalinan yang dilakukan dari record satu ke record
yang lain, tetapi record yang disalin dan yang menyalin bertipe yang sama.
Contoh :
Latihan 7.2
Type recBio = RECORD
Nama : String[25];
NIM : Integer;
NoHp : String[12];
End;
Var
Bio1,Bio2 : RecBio;
Begin
Bio1.Nama := ‘ Nama Saya ‘;
Bio1.NIM := ‘ NIM Saya ‘;
Bio1.NoHP := ‘ No.HP Saya ‘;
{ Menampilkan Data }
Writeln(‘ Nama : ‘,Bio2.Nama);
Writeln(‘ NIM : ‘,Bio2.NIM);
Writeln(‘ NO. HP : ‘,Bio2.NoHP);
Readln;
End.
V. Pernyataan With
Pernyataan with di dalam record berfungsi untuk menyederhanakan atau menyingkat
penulisan pernyataan. Bentuk penulisan :
WITH nama_record Do
Begin
Pernyataan
End;
No. Dokumen: IK-GKM-ILK-FASILKOM-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 36 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
Contoh :
Latihan 7.3
Bio2:=Bio1;
{ Menampilkan Data }
With bio2 do
begin
Writeln(‘ Nama : ‘,Nama);
Writeln(‘ NIM : ‘,NIM);
Writeln(‘ NO. HP : ‘,NoHP);
End;
Readln;
End.
Dalam penulisan program di atas, kita melakukan penulisan pernyataan yang lebih singkat
daripada yang sebelumnya dengan menggunakan statement with.
No. Dokumen: IK-GKM-ILK-FASILKOM-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 37 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
Uses CRT;
matkul : String[25];
SKS : integer;
Kode : String[10];
Var
data : array[1..10] of K R S ;
n,i : integer;
begin
clrscr;
clrscr;
for i:=1 to n do
begin
begin
clrscr;
end;
end;
No. Dokumen: IK-GKM-ILK-FASILKOM-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 38 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
clrscr;
begin
end; writeln;
end;
Readln;
End.
Record2 = Record
Nama1 : Reord1;
Nama2 : identifier1;
Nama3 : Identifier2;
End;
Var
Variabel : record;
No. Dokumen: IK-GKM-ILK-FASILKOM-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 39 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
Var
data : album;
Begin
Readln;
End.
No. Dokumen: IK-GKM-ILK-FASILKOM-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman: 40 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
VIII. Tugas
---------------------------------------------
| No | Matakuliah | SKS | Nilai | Skor |
---------------------------------------------
| 1 | Algoritma | 3 | B+ | 10.5 |
| 2 | Kalkulus | 3 | B | 9 |
| 3 | Logika Komputer | 3 | A | 12 |
---------------------------------------------
| TOTAL | 31.5 |
-------------------------------
-------------- Jumlah SKS : 9
IP : 3.50
No. Dokumen: IK-GKM-ILK-FASILKOM-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman 41 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
MODUL VIII
POINTER
I. Tujuan
1. Praktikan memahmi konsep dasar pointer dan penggunaannya.
2. Praktikan bisa mebuat program yang menggunakan pointer.
III. Teori
Pointer merupakan jenis perintah yang disediakan oleh bahasa pemrograman untuk melakukan
operasi terhadap suatu alamat memori seperti penunjukan alamat, pengaksesan alamat dan sebagainya.
Tipe data pointer bersifat dinamis, variable dapat diletak ke variabel pointer hanya pada saat dibutuhkan
dan sesudah tidak dibutuhkan lagi isi dari variabel pointer tersebut dapat dihapus. Setiap kita membuat
sebuah variabel, pascal akan membuat sebuah ruang di memory komputer. Ruang ini memiliki sebuah
alamat yang dapat kita tampilkan dengan variabel pointer. Pendeklarasian variabel pointer tidak berbeda
jauh dengan pendeklarasian variable biasa, hanya perlu menambahkan simbol “^” sebelum tipe datanya.
Blok A Blok B
Analogi Pointer
Di Analogikan sebagai lemari
yang memiliki stempel alamat
dimana stempel alamat tersebut
Blok C Blok D
adalah alamat pointer dan dalam
lemari adalah isi nilai dari tiap
Pointer
Blok E Blok F
Blok G Blok H
No. Dokumen: IK-GKM-ILK-FASILKOM-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman 42 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
<nama_var> : ^<tipe_data>;
Perbedaan :
Contoh :
Var
Nama : ^string[30];
Type data : record
No : integer;
Pilihan : char;
End;
RecordData : ^data;
Contoh Program :
Program tipe_pointer;
uses crt;
var
angka: integer;
ptr : ^integer;
i : ^word;
begin
clrscr;
angka:= 15;
writeln(‘Nilai dari variable angka: ‘,angka);
ptr:=@angka;
writeln(‘Nilai dari pointer : ‘,ptr^);
i:= addr(ptr);
writeln (‘alamat memory yang digunakan adalah :’, i^);
readln;
end.
No. Dokumen: IK-GKM-ILK-FASILKOM-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman 43 dari 44
Laboratorium Pemrograman Modul Dasar Pemrograman
Menurut keadaan default, pointer hanya dapat menunjuk ke alamat yang tipe datanya sama
dengan tipe data yang dideklarasikan pada pointer. Seperti pada contoh program pointer1,
pointer ptr tersebut hanya dapat menunjuk ke alamat-alamat memori yang menyimpan data
dengan tipe integer saja, artinya, apabila kita memiliki variabel c yg bertipe data char, maka
kita tidak dapat memerintahkan pointer ptr untuk menunjuk ke alamat dari variabel c.
Untuk mengatasi kasus tersebut, bahasa Pascal telah menyediakan tipe generik untuk
pointer sehingga pointer tersebut dapat menunjuk ke alamat yang berisi data dengan tipe
apa saja. Pointer yang dideklarasikan dengan tipe generik ini sering disebut dengan pointer
tanpa tipe. Contoh pointer tipe generik :
Var
Ptr : pointer;
X : Integer;
Y : real;
Z : char;
Begin
Ptr:=@x;
Ptr:=@y;
Ptr:=@z;
End.
IV. Tugas
1. Buatlah sebuah program yang menginputkan nama dan nilai mahasiswa, lalu
dengan menggunakan variable pointer carilah:
a. Nilai terbesar serta nama pemilik nilai terbesar
b. Nilai terkecil serta nama pemilik nilai terkecil
2. Buatlah sebuah program yang menunjukkan bahwa satu buah variabel
dapat ditunjuk oleh dua buah pointer yang berbeda.
No. Dokumen: IK-GKM-ILK-FASILKOM-TI-001-KDP Berlaku Efektif: 20 September 2021 Revisi: 09 Halaman 44 dari 44