Download - Modul Algoritma Dan Pemrograman 1
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
1
Di Susun Oleh :
H. M. Muflih
Yusri Ikhwani
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS ISLAM KALIMANTAN
MUHAMMAD ARSYAD AL-BANJARY
2012
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
2
PRAKTIKUM
PENGENALAN PROGRAM
A. Tujuan Praktikum
Diharapkan mahasiswa dapat mengena l, memahami, dan mengerti
Struktur Pemograman Pascal, mengenal program sederhana, dan mengetahui
teknik penulisan program.
B. Dasar Teori
Bahasa Pemrograman Pascal yang dirancang pertama kali oleh Niklaus
With pada tahun 1970 ini merupakan salah satu bahasa pemrograman yang
memiliki struktur program yang cukup baik. Struktur program yang dimiliki ini
sangat membantu untuk mengetahui dan memahami ali ran proses eksekusi dari
tiap-tiap statemen-statemen maupun sub routine dari program yang telah dibuat.
Rangka Penulisan Program Pascal
Program namaProgram;
{Penjelasan Tentang Program, yang berisi uraian singkat mengenai apa
yang dilakukan oleh program}
{ * DEKLARASI * }
Const {untuk mendifinisikan nama dan harga tetapan}
……………….
Type {untuk mendifinisikan tipe data bentukan}
……………….
Var {untuk mendifinisikan nama variable dan tipe data dari masing -
masing variable}
……………….
Komentar atau Keterangan padaProgram memakai tanda kurung
kurawal ({komentar})
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
3
{ * DESKRIPSI * }
Begin
{semua instruksi program di tulis disini}
End.
Cara Memulai Praktikum
1. Sekarang silahkan buka Folder Praktek Pascal yang sudah di
copy di laptop masing-masing.
2. Kemudian cari file yang bernama TPX.EXE, seperti gambar di
bawah ini
3. Klik 2x TPX.EXE hingga nanti tampil seperti gambar di bawah ini
4. Kemudian Tekan Tombol OK yang ada pada gambar di atas dan
siap untuk di mulai prakteknya.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
4
Beberapa Tombol Penting pengoperasian program :
F1 : Berguna untuk mengaktifkan jendela pertolongan
F2 : Saving File Current (tanpa merubah nama file yang ada
dilayar editor).
F3 : Memanggil (LOAD) file program ke editor.
F4 : Eksekusi program sampai posisi kursor
F7 : Melacak hasil program ke dalam sub routine (program
bagian).
F8 : Melompati memanggil sub routine.
Alt + F1 : Memanggil jendela pertolongan yang terakhir dibaca.
Alt + F5 : Memperlihatkan hasil eksekusi.
Alt + F9 : Menterjemahkan program (Compiling).
C. Latihan Praktikum 1
1. Salin Program Latihan 1 berikut ini :
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
5
2. Kemudian Klik file, pilih save seperti gambar di bawah ini , untuk
menyimpan hasil yang kita praktekkan :
3. Kemudian akan muncul gambar seperti di bawah ini, dan silahkan kita beri
nama file yang kita praktekkan, misalkan kita beri nama latihan1.pas dan
kita pilih ok. Maka file tersebut akan tersimpan di folder praktek pascal
yang sudah di copykan di laptop masing-masing.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
6
4. Setelah selesai baru kita lakukan eksekusi terhadap program, dengan
memilih run run atau tombol Ctrl+F9 pada keyboard.
5. Sehingga akan muncul hasil program yang ada tulis di atas seperti berikut
ini (hasil eksekusi):
6. Tekan tombol enter untuk kembali ke layar biru atau apabila tidak tampil
seperti gambar di atas, berarti coding yang anda tulis terjadi kesalahan dan
silahkan teliti lagi.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
7
D. Latihan Praktikum 2
Silahkan modifikasi hasil latihan 1, menjadi sep erti di bawah ini dan simpan
(save) dengan nama file latihan2.pas (ketika menyimpan, nama file jangan
pakai spasi):
Dan akan menghasilkan hasil eksekusi seperti gambar di bawah ini
E. Latihan Praktikum 3
Buat program seperti di atas den gan mengganti menjadi nama & npm anda
masing-masing, kemudian tambahkan kelas beserta nomor hp anda. Kemudian
di simpan (save) dengan nama latihan3.pas
program latihan2;uses crt;begin clrscr; writeln('Latihan Pertama ku'); writeln('=================='); writeln; writeln('======================='); writeln('= Algoritma & Pemrograman ='); writeln('= Nama : Yusri Ikhwani ='); writeln('= NPM : 00.00.0000 ='); writeln('======================= '); readln;end.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
8
PRAKTIKUM
PENGENALAN TIPE DATA
A. Tujuan Praktikum
Diharapkan mahasiswa bisa mengenal, memahami dan menge rti jenis-
jenis data dan variabel dalam Turbo Pascal, sehingga mengetahui bahwa tiap -tiap
data yang diinputkan harus sesuai dengan tipe variabelnya.
B. Dasar Teori
Data adalah penggambaran fakta secara umum dan dilukiskan dalam bentuk
symbol, tulisan atau angka.
1. Tipe Integer
Merupakan tipe data yang nilainya tidak mempunyai titik desimal. Ada 5
tipe data yang termasuk dalam kelompok ini, yaitu :
2. Tipe Boolean
Merupakan tipe data yang memiliki 2 (dua) buah nilai logika yaitu True
(benar) dan False (salah). Ini penting untuk pengambilan keputusan dalam
suatu program.
3. Tipe Char
Merupakan tipe data yang berupa sebuah huruf / karakter tertentu, seperti :‘L’ , ‘A’ , ‘B’ , ‘/’ .
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
9
4. Tipe String
Merupakan data yang berisi sederetan karakter yang banyaknya dap at
berubah-ubah sesuai kebutuhan, yaitu dari 1 sampai 255 karakter. Sebagai
contoh : ‘LAB KOMPUTER’, merupakan contoh tipe data string dengan
panjang 12.
5. Tipe subjangkauan
Merupakan tipe data yang memiliki batas nilai awal dan akhir tertentu.
Sebagai contoh :
Type
Nilai = 0..100;
Ini menunjukkan nilai integer dari angka nol (0) sampai dengan seratus
(100).
6. Tipe Real
Merupakan tipe data yang memiliki nilai numeric dengan disertai minimal
satu angka decimal
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
10
C. Latihan Praktikum 4
Buatlah Program seperti di bawah ini, dengan nama file latihan4.pas
Hasil eksekusi program seperti gambar di bawah ini & masukan nama anda,
alamat anda dan hobby anda :
program latihan4;uses crt;var
nama, alamat, hobby : string;
begin clrscr;
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.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
11
D. Latihan Praktikum 5
Buatlah Program seperti di bawah ini, dengan nama file latihan5.pas
Hasil eksekusi program seperti gambar di bawah ini & masukan angka
pertama (19), angka kedua (3) :
program latihan5;uses crt;var
angka1, angka2, hasil : integer;
begin clrscr;Writeln(' Program Menghitung ');Writeln(' ****************** ');Writeln;Write('Ketik Angka Pertama : '); Readln(angka1);Write('Ketik Angka kedua : '); Readln(angka2);Writeln;
hasil := angka1 + angka2; Writeln(angka1,' + ',angka2,' = ',hasil); Readln;
end.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
12
E. Latihan Praktikum 6
Buatlah Program seperti di bawah ini, dengan nama file latihan6.pas
Hasil eksekusi program seperti gambar di bawah ini & masukan jari -jari
lingkaran (8) :
program latihan6;uses crt;
const phi = 3.14;var luas, jejari : Real;
begin clrscr; Writeln(' Program Menghitung Luas Lingkaran '); Writeln(' ############################## ');
Writeln; Write('Masukkan Jari-jari Lingkaran : '); Readln(jejari);
luas := phi * sqr(jejari);
Writeln('Luas Lingkaran adalah : ', luas:0:2); Readln;end.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
13
F. Latihan Praktikum 7
Buatlah Program seperti di bawah ini, dengan nama file latihan7.pas
Hasil eksekusi program seperti gambar di bawah ini & masukan suhu derajat
celcius (9) :
program latihan7;uses Crt;var C, F : real;
begin clrscr; writeln(' Program Konversi Suhu'); writeln(' #####################'); writeln; write('Ketik besaran derajat Suhu celcius : '); readln(C); F := 1.8 * C + 32; writeln; writeln('Hasil Konversi ke fahreinhe it = ',F:0:2);readln;end.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
14
G. Latihan Praktikum 8
Lengkapi (modifikasi) program latihan6.pas untuk menghitung keliling
lingkaran seperti gambar di bawah ini dan simpan (save) file dengan nama
latihan8.pas.
Rumus : sqr(phi) * sqr(jejari);
H. Latihan Praktikum 9
Lengkapi (modifikasi) program latihan7.pas dengan menambahkan konversi
suhu celcius ke reamur, seperti gambar di bawah ini dan simpan (save) file
dengan nama latihan9.pas.
Rumus : 0.8 * C
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
15
PRAKTIKUM
IF THEN ELSE (PERCABANGAN BERSYARAT)
A. Tujuan Praktikum
Mengetahui syarat logika yang merupakan ungkapan sebagai kondisi
untuk mengatur pengeksekusian terhadap pernyataan yang mengikuti pernyataan
IF THEN ELSE.
B. Dasar Teori
Statemen kendali IF akan mengecek suatu kondisi dan menentukan
apakah kondisi tersebut benar atau salah, kemudian melaskukan kegiatan sesuai
dengan nilai kondisi retsebut. Jika kondisinya salah maka statemen yang lainnya
atau statemen setelah kata cadangan ELSE yang akan dikerjakan (ELSE tidak
boleh diawali dengan titik koma, karena titik koma menunjukkan akhir dari suatu
statemen).
Bentuk umum dari statemen IF adalah sebagai berikut :
IF <kondisi> THEN <statemen1> ELSE <statemen2> ;
Dengan kondisi : kondisi yang ditest untuk menentukan apakah statemen 1 atau
statemen 2 yang akan dikerjakan.
Statemen 1 : statemen (-statemen) yang akan dikerjakan jika kondisi
bernilai true.
Statemen 2 : statemen (-statemen) yang akan dikerjakan jika kondisi
bernilai false.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
16
C. Latihan Praktikum 10
Buatlah Program seperti di bawah ini, dengan nama file latihan10.pas
Hasil Eksekusi program, dimana program dapat menentukan bilangan positif
atau bilangan ganjil.
Program latihan10;uses crt;var x : integer; ulang : char;
begin clrscr; writeln('Program Menentukan Ganjil atau Genap'); writeln(' *********************************** ********** '); writeln; write('Masukan bilangan = '); readln(x);
if x > 0 then writeln( X,' adalah bilangan positif') else writeln( X,' adalah bilangan negatif');
readln;end.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
17
D. Latihan Praktikum 11
Buatlah Program seperti di bawah ini, dengan nama file latihan11.pas
Hasil eksekusi program seperti gambar di bawah ini :
Program latihan11;uses crt;var
a, b, c : integer;
beginclrscr;writeln('Program Menetukan Bilangan yang Terbesar');writeln;write('masukkan bilangan ke 1 = ');readln(a);write('masukkan bilangan ke 2 = ');readln(b);write('masukkan bilangan ke 3 = ');readln(c);writeln;
if (a > b) and (a > c) then writeln('bilangan ke 1 paling besar')elseif (b > a) and (b > c) then writeln('bilangan ke 2 paling besar')elseif (c > a) and (c > b) then writeln('bilangan ke 3 paling besar')else writeln('ada dua atau tiga masukan memiliki nilai sama');
readln;end.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
18
E. Latihan Praktikum 12
Buatlah Program seperti di bawah ini, dengan nama file latihan12.pas
Hasil eksekusi program seperti gambar di bawah ini :
Program latihan12;uses crt;var
bilangan : integer;ulang : char;
beginclrscr;writeln('Program Seleksi Ganjil Atau Genap');writeln('===========================');writeln;write('masukkan bilangan = ');readln(bilangan);
if (bilangan mod 2) = 1 then writeln ('bilangan ganjil') else writeln('bilangan genap');
readln;end.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
19
F. Latihan Praktikum 13
Buatlah Program seperti di bawah ini, dengan nama file latihan13.pas
Sambungan Coding di halaman selanjutnya.
program latihan13;uses crt;var lebar, panjang, jari, pilihan, a, t : integer; luas: real;
beginclrscr;writeln('Program Menghitung Luas');writeln(' ***************************** ');writeln;writeln('Pilih Menu');writeln('=============> 1. Luas Lingkaran');writeln(' 2. Luas Persegi');writeln(' 3. Luas Segitiga');writeln;write('Masukan Pilihan = '); readln(pilihan);writeln;
if pilihan = 1 thenbeginwriteln(' Program Lingkaran');
writeln(' ============== ');writeln;write('Masukan Jari-jari = '); readln(jari);luas := 3.14 * jari * jari;writeln('Luas adalah = ',luas:0:2);end
else if pilihan = 2 then
beginwriteln(' Program Persegi Panjang');writeln(' ==================== ');writeln;write('Masukan Panjang = '); readln(panjang);write('Masukan Lebar = '); readln(lebar);luas := panjang * lebar;writeln('Luas adalah = ',luas:0:0);end
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
20
Hasil eksekusi program seperti gambar di bawah ini :
else if pilihan = 3 then
begin writeln(' Program Segitiga '); writeln(' ============= ');
writeln;write('Masukan Alas = ' ); readln(a);write('Masukan Tinggi = '); readln(t);luas := 0.5 * a* t;writeln('Luas adalah = ',luas:0:2);end
else writeln('Pilihan Menu Tidak Ada');readln;end.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
21
G. Latihan Praktikum 14
Buatlah program untuk menentukan nilai terkecil bilangan dari 3 bilangan
yang di input, dan simpan (save) file dengan nama latihan14.pas.
H. Latihan Praktikum 15
Buatlah program untuk menghitung gaji karyawan dengan aturan :
Jika MASA KERJA > 5 tahun memperoleh BONUS 15 % dari GAJI
POKOK
Jika PEGAWAI TETAP memperoleh UANG TRANSPORT sebesar
Rp. 50.000,-
Jika SUDAH BERKELUARGA memperoleh TUNJANGAN sebesar
10 % dari GAJI POKOK
Sedangkan GAJI BERSIH dihitung de ngan rumus : GAJI POKOK +
BONUS + TUNJANGAN + UANG TRANSPORT.
Dan simpan (save) file program dengan nama latihan15.pas
I. Latihan Praktikum 16
Buatlah program kalkulator sederhana dengan memberikan pilihan bagi
pengguna (menggunakan IF THEN ELSE) . Operasi-operasinya meliputi :
penjumlahan, pengurangan, perkalian, pembagian.
Dan simpan (save) file program dengan nama latihan16.pas
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
22
PRAKTIKUM
CASE OF (PERCABANGAN BERSYARAT)
A. Tujuan Praktikum
Untuk mengetahui statemen CASE yang berisi ungkapan (pemilih) dan
sederetan statemen yang masing-masing diawali dengan satu atau lebih konstanta
(disebut konstanta CASE) atau dengan kata ELSE.
B. Dasar Teori
Pernyataan CASE merupakan pernyataan bersyarat yang memiliki
bentuk :
CASE <syarat-pemilih> OF
<daftar-label 1> : statemen1;
<daftar-label 2> : statemen2;
……………..
[ELSE statemen-statemen lain;]
END.
Syarat pemilih dapat berupa sembarang ungkapan, variabel atau fungsi
yang bertipe scalar, kecuali REAL. Daftar label 1 boleh berupa satu atau lebih dari
satu nilai yang merupakan kemungkinan dari syarat pemilih. Semua pernyataan
yang berhubungan dengan daftar label ataupun ELSE boleh berupa sembarang
pernyataan. Pernyataan I yang bersangkutan dengan daftar label 1 di eksekusi bila
nilai dari syarat pemilih tercantum dalam daftar label tersebut. Apabila suatu
pernyataan telah dieksekusi, pengeksekusian berikutnya dilakukan terhadap
pernyataan yang terletak sesudah kata baku END, yang merupakan penutup
pernyataan CASE. Perlu diketahui, ELSE dalam pernyataan CASE disertakan,
pernyataan yang mengikuti ELSE akan dieksekusi h anya dengan nilai dari syarat
pemilih tidak ada dalam semua daftar label.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
23
C. Latihan Praktikum 17
Buatlah Program seperti di bawah ini, dengan nama file latihan17.pas
Hasil eksekusi program seperti gambar di bawah ini :
program latihan17;uses crt;var tgl : integer;
begin clrscr; writeln('Program memeriksa hari dalam bulan Maret 2012'); writeln(' ******************************************* *********** '); writeln; write('Masukkan tanggal = '); readln(Tgl);
case tgl of5,12,19,26 : writeln ('Hari Senin');6,13,20,27 : writeln ('Hari Selasa');7,14,21,28 : writeln ('Hari Rabu');1,8,15,22,29 : writeln ('Hari Kamis');2,9,16,23,30 : writeln ('Hari Jumat');3,10,17,24,31 : writeln ('Hari Sabtu');4,11,18,25 : writeln ('Hari Minggu');
elseBeginwriteln ('Maaf tidak ada tanggal tersebut');end;
end; readln;end.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
24
D. Latihan Praktikum 18
Buatlah Program seperti di bawah ini, dengan nama file latihan18.pas
Hasil eksekusi program seperti gambar di bawah ini :
Program latihan18;uses crt;var
beli, disc : integer;
beginclrscr;writeln('Program Jual Disc');writeln(' ******************* ');writeln;write('Total Pembelian : '); readln(beli);
case beli of0..1000 : disc := 100;1001..10000 : disc := 500;10001..30000 : disc := 2000;
end;
writeln; writeln('jumlah pembelian = Rp. ',beli);writeln('discount = Rp. ',disc);
writeln(' ');writeln('jumlah yang dibayar : Rp. ',beli -disc);readln;
end.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
25
E. Latihan Praktikum 19
Buatlah Program seperti di bawah ini, dengan nama file latihan19.pas
Sambungan Coding di halaman selanjutnya.
program latihan19;uses crt;var
a, t, panjang,lebar, jari, luas : Real;pilih: Integer;
beginclrscr;writeln('Program Menghitung Luas');writeln(' ***************************** ');writeln;writeln('Pilih Menu');writeln('=============> 1. Luas Lingkaran');writeln(' 2. Luas Persegi');writeln(' 3. Luas Segitiga');writeln;write('Masukan Pilihan = '); readln(pilih);writeln;
case pilih of1: begin
writeln(' Program Lingkaran');writeln(' ============== ');writeln;write('Masukan Jari-jari = '); readln(jari);
luas := 3.14 * jari * jari;writeln('Luas adalah = ',luas:0:2);
End;
2: beginwriteln(' Program Persegi Panjang');writeln(' ==================== ');writeln;write('Masukan Panjang = '); readln(panjang);write('Masukan Lebar = '); readln(lebar);luas := panjang * lebar;writeln('Luas adalah = ',luas:0:0);
end;
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
26
Hasil eksekusi program seperti gambar d i bawah ini :
3: beginwriteln(' Program Segitiga ');writeln(' ============= ');
writeln; write('Masukan Alas = '); readln(a); write('Masukan Tinggi = '); readln(t); luas := 0.5 * a* t;writeln('Luas adalah = ',luas:0:2);
end;end;
Readln;end.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
27
F. Latihan Praktikum 20
Buatlah program kalkulator sederhana dengan memberikan pilihan bagi
pengguna (menggunakan CASE OF) . Operasi-operasinya meliputi :
penjumlahan, pengurangan, perkalian, pembagian.
Dan simpan (save) file program dengan nama latihan20.pas
G. Latihan Praktikum 21
Diketahui toko buah “SEGAR MANIS” yang menjual 4 jenis buah -buahan
dalam jumlah kiloan. Untuk setiap buah-buahan yang dijual jika melebihi 5
Kg mendapat potongan :
Kiwi : 5 %
Mangga : 2,5 %
Alpukat : 7 %
Apel : 10 %
dari total penjualan :
Untuk buah-buahan Kiwi dan Mangga jika lebih dari 20 Kg mendapat
korting lagi hingga 7 % dari total penjualan
Untuk buah-buahan Alpukat jika lebih dari 10 Kg dapat hadiah payung
dan untuk buah-buahan Apel jika lebih dari 15 Kg dapat hadiah tas
Dari persoalan diatas buatlah program pemecahannya dan simpan (save)
dengan nama file latihan21.pas.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
28
PRAKTIKUM
FOR..TO..DO (PERULANGAN / LOOPING)
A. Tujuan Praktikum
Untuk mengetahui proses pengulangan yang berfungsi untuk
mengeksekusi suatu pernyataan lain secara berulang -ulang, dengan jumlah
pengulangan tergantung pada persyaratan yang diberikan.
B. Dasar Teori
Pernyataan FOR memungkinkan pengulangan eksekusi terhadap suatu
pernyataan, baik berupa pernyataan yang sederhana maupun pernyataan majemuk.
Pengendalian pengulangan eksekusi dilakukan oleh variabel kendali. Jumlah
pengulangan eksekusi ditentukan oleh nilai awal dan ni lai akhir dari variable
kendali.
Statemen FOR menpunyai bentuk umum :
FOR perubah := ungkapan1 to ungkapan2 do
Statemen;
dan
FOR perubah := ungkapan1 downto ungkapan2 do
Statemen;
Dengan perubah : suatu perubah y ang disebut perubah kendali, dapat
berupa pengenal dari tipe integer, char, atau terbilang.
Ungkapan1 : adalah nilai awal perubah
Ungkapan2 : nilai akhir perubah
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
29
C. Latihan Praktikum 22
Buatlah Program seperti di bawah ini, dengan nama file latihan22.pas
Hasil eksekusi program seperti gambar di bawah ini :
program latihan22;uses crt;var
jumlah, i : integer;rerata : real;
beginclrscr;jumlah := 0;for i := 1 to 25 do begin
jumlah := jumlah + i;end;rerata := jumlah / 25;writeln(' Jumlah : ', jumlah);writeln(' Rata-rata : ', rerata:0:2);readln;
end.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
30
D. Latihan Praktikum 23
Buatlah Program seperti di bawah ini, dengan nama file latihan23.pas
Hasil eksekusi program seperti ga mbar di bawah ini :
program latihan23;uses crt;var
bil1, bil2, i, hasil : integer;
beginclrscr;writeln(' Program Hitung ');writeln(' ****************** ');writeln;write('ketik bilangan pertama : ');readln(bil1);write('ketik bilangan kedua : ');readln(bil2);
hasil := 0;for i := 1 to bil1 do
hasil := hasil + bil2;
bil2 := bil2 - 1;for i := 1 to bil2 dowrite(bil1,' + ');
write(bil1,' = ',hasil);readln;
end.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
31
E. Latihan Praktikum 24
Buatlah Program seperti di bawah ini, dengan nama file latihan24.pas
Hasil eksekusi program seperti gambar di bawah ini :
program latihan24;uses crt;var
a, b, c : real;i, n : integer;
beginclrscr;writeln(' Program Nilai kurs ');writeln;write('Masukkan nilai kurs 1 $ = Rp. ');readln(a);
b := 0;n := 5;for i := 1 to n dobegin
b := b + a;writeln('Kurs ',i,' $ = Rp. ',b:8:2);
end;
c := b / n;writeln('Rata-rata 1$ = Rp. ',c:8:2);writeln;if c > 9000 thenwriteln('Jual Dollar')elseif c < 6500 thenwriteln('Dollar disimpan');readln;
end.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
32
F. Latihan Praktikum 25
Buatlah Program seperti di bawah ini , dengan nama file latihan25.pas
Hasil eksekusi program seperti gambar di bawah ini :
program latihan25;uses crt;
var karakter : char;
begin clrscr; for karakter := 'Z' downto 'A' do write(karakter,' '); readln;end.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
33
G. Latihan Praktikum 26
Buatlah Program seperti di bawah ini, dengan nama file latihan26.pas
Hasil eksekusi program seperti gambar di bawah ini :
uses crt;var
i : integer;kata, balik: string;
beginclrscr;writeln('Program Membalik Kata dari Belakang');writeln(' ******************************************* ');writeln;write('Tulis kata yang akan dibalik = ');readln(kata);
balik := ' ';
for i := length(kata) downto 1 do balik := balik + kata[i];
writeln('Hasilnya : ',balik);readln;
end.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
34
H. Latihan Praktikum 27
Buatlah Program seperti di bawah ini, dengan nama file latihan27.pas
Hasil eksekusi program seperti gambar di bawah ini :
program latihan27;uses crt;var
baris, kolom, bintang : integer;
begin clrscr;writeln(' Program Menampilkan Bintang ');
writeln(' +++++++++++++++++++++++ '); writeln; write('masukkan banyaknya bintang : ');readln(bintang);
for baris := 1 to bintang dobegin
for kolom := 1 to bintang dobegin
write(' * ');end;writeln(' ');
end; readln;end.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
35
I. Latihan Praktikum 28
Lengkapi (modifikasi) program latihan27.pas menjadi tampilan seperti
gambar di bawah ini dan simpan (save) file dengan nama latihan28.pas.
J. Latihan Praktikum 29
Buat program untuk membuat daftar Harga Bahan Bakar(B), Solar(S), dan
Pertamax(P).
Dimana yang di input adalah besaran Liter(L) dan file disimpan (save) dengan
nama latihan29.pas
Keterangan :
Harga Bensin : Rp. 4500/L
Harga Solar : Rp. 5000/L
Harga Pertamax : Rp. 7500/L
K. Latihan Praktikum 30
Buat program untuk menampilkan angka ganjil dari angka 1 – 100, dan file
disimpan (save) dengan nama latihan30.pas
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
36
PRAKTIKUM
WHILE DAN REPEAT (PERULANGAN / LOOPING)
A. Tujuan Praktikum
Untuk memhami suatu proses perulangan pada while dan repeat dalam
suatu program terstruktur.
B. Dasar Teori
Pernyataan WHILE – DO
Instruksi WHILE berarti selama atau sementara. Jadi selama sebuah
kondisi terpenuhi maka proses perulangan tersebut akan berjalan terus. Dengan
kata lain, satu atau lebih statemen akan dikerjakan terus selama kondisi bernilai
benar.
Bentuk Umum :
WHILE Kondisi DO Statemen
Pernyataan REPEAT – UNTIL
Cara kerja statemen REPEAT –UNTIL merupakan kebalikan dari
statemen WHILE
Bentuk Umum :
REPEAT Statemen UNTIL Kondisi
Dengan Statemen : adalah ststemen tunggal atau statemen majemuk yang
akan diproses ulang
Kondisi : adalah ungkapan Boolean sebagai syarat statemen perulangan
Perbedaan antara struktur “ repeat until “ dengan “ while do “ adalah :
a. Paling sedikit statemen-statemen dalam repeat until diproses sekali,
karena seleksi kondisi ada pada statemen until yang terletak dibawah.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
37
b. Pada while do paling sedikit dikerjakan nol kali, karena seleksi kondisi
ada pada statemen while yang terletak diatas, sehingga apabila kondisi
tidak terpenuhi maka tidak akan masuk ke dalam lingkungan
perulangannya.
c. Pada repeat until dapat tidak menggunakan blok statemen ( BEGIN
dan END ) untuk menunjukan batas perulangannya, karena batas
perulangannya sudah ditunjukkan oleh repeat sampai dengan until.
C. Latihan Praktikum 31
Buatlah Program seperti di bawah ini, dengan nama file latihan31.pas
Hasil eksekusi program seperti gambar di bawah ini :
program latihan31;uses crt;Var
angka : integer;
Beginclrscr;angka := 0;While angka < 5 doBegin
Writeln(angka:8);angka := angka + 1;
end;readln;
End.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
38
D. Latihan Praktikum 32
Buatlah Program seperti di bawah ini, dengan nama file latihan32.pas
Hasil eksekusi program seperti gambar di bawah ini :
program latihan32;uses crt;
Varangka : integer;
Beginclrscr;angka := 0;
Repeatangka := angka + 1;
Writeln(angka);Until angka = 5;
readlnEnd.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
39
E. Latihan Praktikum 33
Buatlah Program seperti di bawah ini, dengan nama file latihan33.pas
Hasil eksekusi program seperti gambar di bawah ini :
program latihan33;uses crt;var
bil1, bil2, hasil : integer;ulang : char;
beginREPEATclrscr;writeln('Program Perhitungan Menggunakan PErulangan');
writeln(' +++++++++++++++++++++++++++++++++++ + ');writeln;write('Ketik Bilangan Pertama = ');readln(bil1);
write('Ketik Bilangan Kedua = ');readln(bil2);
hasil := 0;WHILE bil1 >= bil2 DO
beginbil1 := bil1 - bil2;hasil := hasil + 1;
end;write('hasil perhitungan = ',hasil);writeln;write('Mau ulang Program Tekan [Y] / Keluar [T] = ');readln(ulang);
UNTIL upcase (ulang) <> 'Y';end.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
40
F. Latihan Praktikum 34
Buatlah Program seperti di bawah ini, dengan nama file latihan34.pas
Hasil eksekusi program seperti gambar di bawah ini :
program latihan34;uses crt;var
a, b : real;
constc = 1.609344;
beginclrscr;writeln('Program Konversi Kilometer ==> Mil');
writeln; a := 0;while a < 20 dobegin
a := a + 1;b := c * a;writeln(a:5:2,' Km = ',b:5:4,' Mil');
end;readln;
end.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
41
G. Latihan Praktikum 35
Buatlah Program seperti di bawah ini, dengan nama file latihan35.pas
Hasil eksekusi program seperti gambar di bawah ini :
program latihan35;uses crt;var
a : integer;b : char;
beginclrscr;randomize; {perintah untuk menghasilkan angka acak}b := 'N';writeln(' PROGRAM ANGKA ACAK ');writeln(' ++++++++++++++++++++ ');writeln;while b <> 'Y' dobegin
a := random (1000);write('Angka Sekarang : ',a);writeln;writeln('Tekan Sembarang Tombol untuk mulai mengac ak');
writeln('Tekan Y untuk berhenti');b := readkey;b := upcase(b);
writeln;end;writeln;writeln('PENGACAKAN BERHENTI');
readln;end.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
42
H. Latihan Praktikum 36
Lengkapi (modifikasi) program latihan33.pas menjadi tampilan seperti
gambar di bawah ini dan simpan (save) file dengan nama latihan36.pas.
L. Latihan Praktikum 37
Buat Program seperti tampilan eksekusi program di baw ah ini, dan simpan
(save) file dengan nama latihan37.pas
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
43
PRAKTIKUM
PROCEDURE DAN FUNGSI
A. Tujuan Praktikum
Mahasiswa mengenal, memahami, dan mampu membuat sub program.
B. Dasar Teori
Bahasa Pascal adalah bahasa pemrograman yang mendukung konsep
pemrograman terstruktur. Salah satu cirri pemrograman terstruktur adalah
modular. Pengertian terstruktur antara lain, pada bahasa pemrograman tersebut
deklarasi dari variabel, konstanta, tipe dari variabel, dan sub program dilakukan
dengan rinci, terurut dan tegas.
Sedangkan pengertian modular adalah membagi penyelesaian masalah
menjadi beberapa unsur langkah penyelesaian. Prosedur adalah suatu program
terpisah dalam blok sendir yang berfungsi sebagai sub program. Prosedure diawali
dengan kata PROCEDURE pada bagian eklarasi. Prosedur dipanggil dan
digunakan didalam blok program lainnya dengan cara menyebut nama
prosedurnya. Blok fungsi hampir sama dengan prosedur hanya fungsi harus
dideklarasikan dengan tipenya. Tipe deklarasi akan menunjukkan nilai yang
dihasilkan fungsi. Fungsi diawali dengan kata FUNCTION.
Dalam kerangka program secara utuh, sering terjadi proses pertukaran
informasi yang berupa data konstanta atau variabel diantara prosedur dan fungsi
dengan blok lain dari program. Cara yang paling mudah untuk mengatasi proses
pertukaran informasi antar prosedur atau fungsi adalah dengan menggunakan
variabel global.
Penggunaan variabel global sebagai tempat menampung perubahan
informasi, akan sangat riskan apabila diterapkan dalam program yang besa r
dengan sejumlah prosedur dan fungsi karena akan terjadi kesulitan didalam
mengontrol perubahan informasi yang terjadi. Untuk mengatasi hal tersebut maka
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
44
digunakan variabel local di tiap prosedur atau fungsi dan untuk proses pertukaran
data digunakan pengertian paramater.
Paramater yang dikirim dari modul utama ke prosedur atau fungsi
disebut sebagai parametr nyata (actual parameter) dan parameter yang ada dan
ditulis pada judul prosedur atau fungsi disebut parameter formal. Parameter nyata
dan parameter formal harus menggunakan tipe data yang sama. Didalam Pascal,
parameter dapat dikirim secara nilai atau secara acuan.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
45
C. Latihan Praktikum 38
Buatlah Program seperti di bawah ini, dengan nama file latihan38.pas
Hasil eksekusi program seperti gambar di bawah ini :
program latihan38;Uses crt;Var X, Y, Z : integer;
Procedure Operasi_hitung(A, B, C :integer); Begin
C := A + B; Writeln; Writeln('Hasil Penjumlahan adalah : ',C);C := A * B;writeln('Hasil Perkalian adalah : ',C);C := A - B;writeln('Hasil Pengurangan adalah : ',C);
readln; end;
begin {Program Utama} clrscr; Z := 0; writeln('Program Hitung Menggunakan Procedure');
writeln(' +++++++++++++++++++ ++++++++++ '); writeln; Write('Input nilai X : '); readln(X); Write('Input nilai Y : '); readln(Y); Operasi_Hitung(X,Y,Z); readln;End.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
46
D. Latihan Praktikum 39
Buatlah Program seperti di bawah ini, dengan nama file latihan39.pas
Hasil eksekusi program seperti gambar di bawah ini :
Program latihan39;Uses crt;Type
huruf = string[100];Var
N :integer;Nama : Huruf;
Procedure Hitung_Panjang (var karakter : Huruf; var panjang : integer);Begin
Panjang := length(karakter);End;
Begin {Program Utama}Clrscr;writeln('Program Hitung Huruf Nama');writeln(' +++++++++++++++++++++++ ');writeln;
write('Siapakah Nama Lengkap Anda ? : '); readln(nama);Hitung_Panjang(Nama,N);
writeln; writeln('Panjang nama anda adalah : ',N,' Karakter');
writeln('Catatan : ');writeln('Spasi dalam nama dianggap Satu Karakter');Readln;
End.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
47
E. Latihan Praktikum 40
Buatlah Program seperti di bawah ini, dengan nama file latihan40.pas
Lanjutan coding di halaman selanjutnya
Program latihan40;Uses crt;Var
A, Hasil : real;N : integer;
Procedure A_Pangkat_N_Positif;Var
I : integer;Begin
If (N = 0) then hasil := 1Else if (N = 1) then hasil := AElseBegin
Hasil := 1;For I := 1 to N doHasil := hasil * A;
End;End;
Procedure Pangkat_Positif;Begin
Write('A pangkat N = ');A_pangkat_N_Positif;Writeln(hasil:0:2);
End;
Procedure Pangkat_Negatif;Begin
Write('A pangkat N = ');A_pangkat_N_Positif;Writeln(1/hasil:0:2);
End;
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
48
Hasil eksekusi program seperti gambar di bawah ini :
Procedure masukan_Data;Begin
Clrscr;Writeln('Menghitung A pangkat N dengan A riil & N
integer');Writeln('A dan N boleh bilangan negatif');
Writeln(' ++++++++++++++++++++++++++++ '); Writeln;
Write('masukan Nilai A : ');readln(A);Write('masukan nilai N : ');readln(N);
End;
Begin {Program Utama}clrscr;Masukan_data;If (n > 0) or (n < 0) then Pangkat_PositifElse Pangkat_Negatif;Readln;
End.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
49
F. Latihan Praktikum 41
Buatlah Program seperti di bawah ini, dengan nama file latihan41.pas
Hasil eksekusi program seperti gambar di bawah ini :
program latihan41;uses crt;var
bil1, bil2 : integer;lagi : char;
function tambah(a,b:integer) : integer;begin
tambah := a + b; end;
function kali(a,b:real) : real;begin
kali := a * b; end;
beginrepeatclrscr;writeln('Program Hitung Menggunakan Function');
writeln(' ++++++++++++++++++++++++++++ ');writeln;write('Masukan bilangan pertama = '); readln(bil1);write('Masukan bilangan kedua = '); readln(bil2);writeln(bil1,' + ',bil2,' = ',tambah(bil1,bil2));writeln(bil1,' * ',bil2,' = ',kali(bil1,bil2):0:2);
writeln; write('tekan [Y] Ulang program / [N] Keluar : '); readln(lagi);until UPCASE(lagi) <> 'Y';
end.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
50
PRAKTIKUM
ARRAY
A. Tujuan Praktikum
Setelah menyelesaikan modul ini, mahasiswa diharapkan :
mengetahui beberapa tipe bentukan dalam bahasa Pascal, yaitu Array
& Record
Mampu membuat dan menggunakan tipe data bentukan tersebut
dalam masalah yang sesuai dan mengimplementasikannya dalam
bahasa Pascal
B. Dasar Teori
Dalan bahasa Pascal terdapat bermacam -macam tipe data. Tipe data –
tipe data tersebut dikelompokkan ke dalam dua jenis, yaitu : tipe data dasar dan
tipe data bentukan. Tipe data dasar meliputi integer, real, Boolean, character, dan
string. Tipe data bentukan antara lain : tipe enumerated, subrange, rccord dan
array.
Tipe Enumerated
Contoh :
Warna = (merah, hijau, biru);
Bentuk = (segitiga, bujursangkar, lingkaran);
Warna dan bentuk adalah nama tipe enumerated yang masing-
masing mempunyai elemen-elemen sesuai dengan yang dituliskan.
Tipe Subrange
Contoh :
Alpabet = ‘a’ . . ‘z’
Digit = 0 . . 9
Alpabet dan digit adalah nama tipe subrange yang masing -masing
mempunyai rentang nilai atau elemen. Elemen alpabet adalah
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
51
semua elemen mulai dari ‘a’ sampai ‘z’ dan elemen digit adalah
semua elemen mulai dari 0 sampai dengan 9.
Tipe Record
Contoh :
Titik = record
X : integer;
Y : integer;
End;
Anggota = record
Nama : string;
Alamat : string;
Telp : string;
End;
Titik adalah sebuah record yang elemennya terdiri dari x dan y,
yang digunakan untuk merepresentasikan posisi titik pada s umbu
kartesian. Anggota adalah record yang terdiri dari tiga elemen,
yang masing-masing menunjukkan nama, alamat, dan nomor
telpon.
Record hanya dapat diakses melalui elemen -elemennya. Pengaksesan
menggunakan bantuan . (titik). Sebelum record digunakan har us dideklarasikan
atau dibuat instansinya dalam bagian VAR.
Tipe Array
Contoh :
Tabint = array[1..100] of integer;
Tabfrek = array[alpabet] of integer;
Dataanggota = array[1..1000] of anggota;
Alpabet bertipe subrange dan anggota bertipe record. Array h anya dapat
diakses jika diketahui nilai indeknya, yang dituliskan dalam kurung siku, dan nilai
tersebut masih berada dalam domain harganya yang dituliskan dengan tipe
subrange.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
52
C. Latihan Praktikum 42
Buatlah Program seperti di bawah ini, dengan nama file latihan42.pas
program latihan42;uses crt;
varnama : array[1..20] of string;
tugas, uts, uas : array[1..20] of integer; rata : array[1..20] of real; a, jd : byte;
beginclrscr;writeln(' Program Nilai Mahasiswa ');
writeln(' #################### '); writeln;write('Masukkan Jumlah Data Mahasiswa : ');readln(jd);writeln;
for a := 1 to jd do begin writeln('ENTRY NILAI UJIAN MAHASISWA '); writeln('---------------------------'); write('Masukkan Nama : '); readln(nama[a]); write('Masukkan Nilai Tugas : '); readln(tugas[a]); write('Masukkan Nilai UTS : '); readln(uts[a]); write('Masukkan Nilai UAS : '); readln (uas[a]); writeln; rata[a] := (0.30 * tugas[a]) + (0.30 * uts[a]) + (0.40 * uas[a]); end;
clrscr;writeln('LAPORAN UJIAN MAHASISWA');
writeln('-----------------------');writeln('No':2,'Nama':10,'Tugas':10,'UTS':10,'UAS':10,'Nilai Akhi r':15);for a := 1 to jd dowriteln(a:2,nama[a]:10,tugas[a]:10,uts[a]:10,uas[a]:10,rata[a]:15:2);readln;
end.
Modul Praktikum Algoritma & pemrograman I
PASCALMenggunakan Turbo Pascal versi 7.1
53
Hasil eksekusi program seperti gambar di bawah ini :
D. Latihan Praktikum 43
Buatlah sembarang Program Array / mengkombinasikan latihan praktikum
sebelum dengan konsep array, dan simpa n dengan nama file latihan43.pas