DOSEN PENGAMPU:
Rita Wiryasaputra, ST., M. Cs.
A. ALGORITMA
Sebelum melangkah dalam pembuatan program dengan bahasa
pemrograman PASCAL, maka terlebih dahulu harus dimengerti beberapa
hal yang meliputi:
Identifikasi masalah (input,proses,output)
Algoritma
Implementasi dengan bahasa pemrograman
Definisi algoritma adalah urutan langkah dari awal hingga akhir disusun
secara sistematis dan bersifat logis untuk menyelesaikan suatu masalah.
Asal kata:
Penulis buku Arab Al-Khowarizmi (dibaca algorism)
Kitab Al-jabar wal-muqabala (buku pemugaran dan
pengurangan)
Tidak ada notasi baku dalam penulisan teks algoritma (notasi algoritmik)
sebagaimana pada notasi bahasa pemrograman. Namun, agar notasi
algoritmik mudah ditranslasikan ke dalam notasi bahasa pemrograman,
sebaiknya notasi algoritmik tersebut berkoresponden dengan notasi
bahasa pemrograman secara umum.
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
2
Ciri-ciri algoritma :
1. input-terdapat nol masukkan atau lebih yang diberikan
secara eksternal
2. output-sedikitnya terdapat 1 keluaran yang dihasilkan
3. definite-harus secara sempurna menyatakan apa yang
dilakukan
4. efective-setiap instruksi harus dapat dilakukan secara
manual dalam jumlah waktu yang terhingga
5. terminate-harus berhenti setelah sejumlah terbatas operasi
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
3
B. PASCAL
Pascal merupakan salah satu dari beberapa Bahasa Pemrograman
Tingkat Tinggi (High Level Language) yang terstruktur (tidak ada
loncatan/berurut, adanya blok yang mempunyai batas yang jelas)
dirancang oleh Professor Niklaus Wirth. Nama Pascal terambil dari ahli
matematika dan philosophi Perancis (Blaise Pascal).
Aplikasi Pascal biasa digunakan untuk menyelesaikan persoalan-
persoalan Scientific/Matematika yang memerlukan ketelitian perhitungan
yang akurat, database, game, bisnis, teknik. Praktikum ini menggunakan
compiler Turbo Pascal 7.0 yang dikeluarkan oleh Borland International.
Directori Turbo Pascal yang ada pada komputer berbeda-beda, tapi pada
umumnya seperti berikut :C:\Tp7\Bin\TPX
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
4
3. TIPE DATA
Dalam Pascal, semua peubah(variabel) yang akan dipakai harus
sudah ditentukan tipe datanya, setelah itu tentukan batasan nilai peubah
dan jenis operasi yang bisa dilaksanakan atas peubah tersebut.
Pemilihan tipe data harus memperhatikan faktor penghematan memori.
Secara lengkap, tipe data dalam Turbo Pascal 7.0 dapat digambarkan
pada gambar 2.
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
5
8. CARA MENCETAK
1. Tekan tombol F10
2. Pilihlah menu FILE kemudian Enter
3. Pilihlah PRINT kemudian Enter
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
6
Tipe data
Integer
ShorInt
LongInt
Boolean
Char
Byte
Word
Subjangkauan (Subrange)
Terbilang (Enumerated)
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
7
Praktikum 1
Pengenalan Turbo Pascal
Tujuan:
Mempelajari sistem operasi DOS dan Windows
Mempelajari cara pemakaian (set-up) bahasa pemrograman
Turbo Pascal
Mempelajari cara menulis program pada editor Turbo Pascal
Mempelajari kesalahan yang telah dibuat dan mengoreksinya
Mempelajari cara mengedit program Turbo Pascal
Mempelajari cara menjalankan (eksekusi) Turbo Pascal
Mempelajari pemakaian fungsi clrscr
Mempelajari posisi kursor
Mempelajari format output di layar
Cara Kerja:
1. Salinlah program I.1 untuk mencetak Saya mahasiswa Teknik
Informatika UNIVERSITAS IGM kemudian jalankan
2. Simpan program I.1 dengan mengaktifkan menu file lalu pilih
save (F2) dan tuliskan nama file tersebut.
3. Salinlah program I.2 dengan mengaktifkan menu File lalu pilih
new, kemudian jalankan (CTRL+F9)
4. Simpan program I.2 dengan mengaktifkan menu file lalu pilih
save (F2) dan tuliskan nama file tersebut
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
8
Praktikum 2
Statement Input/Output
Tujuan:
Mempelajari cara menempatkan data dlm memori (variabel,konstanta)
Mempelajari tipe integer dan string
Mempelajari cara menuliskan output ke layar
Mempelajari cara membaca data (input) dari keyboard
Contoh 2.1 : Tulislah sebuah program yang dapat membaca bilangan dari
keyboard, lalu menuliskan kembali bilangan tersebut ke layar monitor.
Masukan : bilangan
Keluaran : bilangan yang dimasukkan.
Program Bilangan
Masukkan bilangan = ?
Bilangan yang dimasukkan tersebut adalah bilangan ?
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
9
Program 2.1
{Program Keduaku}
Uses crt;
Var
Nilai : integer;
Begin
Clrscr;
Writeln(„ Program Bilangan „);
Write(„ Masukkan bilangan = „);
Readln(nilai);
Write(„ Bilangan yang dimasukkan tersebut adalah bilangan „, nilai);
Readln;
End.
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
10
Nama : XXXXX
{proses output, bersihkan layar terlebih dahulu}
Selamat pagi, XXXXX
Selamat mengerjakan praktikum.
5. Perusahaan telepon di kota „X‟ mempunyai tarif Rp. 100 per pulsa.
Setiap langganan dikenakan biaya langganan sebesar Rp. 3000
perbulan. Buatlah program untuk menghitung tagihan langganan.
Masukan: nama langganan, banyaknya pulsa
Keluaran : jumlah tagihan
Petunjuk : buatlah biaya langganan dan tarif pulsa sebagai konstanta
( karena untuk semua langganan dianggap sama)
Program Tagihan Langganan
Nama Langganan : X
Banyak pulsa : …
Tagihan Langganan X adalah sebesar Rp…
6. Bila bentuk bumi dianggap sebagai bola dengan jari-jari 6370 km,
hitunglah keliling, luas permukaan, dan isi bumi.
Masukan : tidak ada
Keluaran : keliling,luas, isi
Program Perhitungan Bumi
Keliling : 40004
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
11
Luas : 1082148051300
Isi : 127057
Petunjuk : buatlah jari – jari bumi sebagai konstanta, utk perpangkatan 3
maka rumus nilai perpangkatan = exp(ln(jari)*3) dimana nilai perpangkatan
adlh real
Rumus :
Keliling = 2 * phi * r
Luas permukaan = 4/3 * phi * r3
Isi = 4 * phi * r2
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
12
Rumus :
Fahrenheit = 1.8 * celcius + 32
Kelvin.= Celcius + 273
Program Konversi Suhu
Nilai suhu dalam derajat celcius : XXX
XXX oC = XXX.XX oF
XXX oC = XXX.XX oK
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
13
Tugas : Nilai :
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
14
Praktikum 3 dan 4
Statement Kontrol Pengkondisian IF
Tujuan:
Mempelajari pengkondisian IF
Contoh 3.1 : Tulislah sebuah program yang dapat membaca bilangan dari
keyboard, lalu menuliskan apakah bilangan yang dimasukkan tersebut
merupakan bilangan genap atau ganjil.
Masukan : bilangan
Keluaran : GENAP / GANJIL
Program Bilangan Genap Ganjil
Masukkan bilangan = ?
Bilangan yang dimasukkan tersebut merupakan bilangan ?
Program 3.1
{Program Genap/Ganjil}
Uses crt;
Var bilangan : integer;
Ket : string;
Const genap = „GENAP‟;
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
15
Ganjil = „GANJIL‟;
Begin
Clrscr;
Write („ Program Bilangan Genap Ganjil ‟);
Write („ Masukkan bilangan = „);
Readln(bilangan);
If (bilangan mod 2) = 0 then ket := Genap
Else ket = Ganjil;
Writeln;
Write („ Bilangan yang dimasukkan tersebut merupakan bilangan „,ket);
Readkey;
End.
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
16
Upah buruh per jam untuk hari Senin hingga Jumat adalah sebesar Rp. 3000,-
Sedangkan upah buruh untuk hari Sabtu adalah 1.5 kali tarif biasa dan untuk
hari Minggu adalah 2 kali tarif biasa. Buatlah program untuk menghitung Upah
yang diterima seorang buruh untuk sehari kerja.
Masukan : Nama Buruh, Kode Hari, Jam kerja
Keluaran : Upah total.
Program Perhitungan Upah Buruh
{proses input}
Nama Buruh : Tuti
Kode Hari [1-7] :2
Jam kerja : 12 jam
{proses output, sebelumnya bersihkan layar dulu}
Buruh Tuti bekerja pada hari Selasa dengan total upah adalah Rp.
36000,-
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
17
Tugas : Nilai :
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
18
Praktikum 5
Statement Kontrol Pengkondisian CASE
Tujuan:
Mempelajari pengkondisian CASE
Untuk masalah dengan dua kasus atau lebih, struktur CASE dapat
menyederhanakan penulisan IF-THEN-ELSE yang bertingkat-tingkat. Pada
Case, nilai1..nilaiN adalah nilai yang bertipe integer, char atau boolean.
Operator kondisi yang digunakan pada CASE adalah operator „ = „
Contoh 5.1 : Tulislah sebuah program menu yang dapat membaca nomor menu
pilihan dari keyboard, lalu menuliskan menu apakah yang dimasukki.
Program CaseOfEnd;
Uses crt;
Var
pilih : byte;
Begin
Clrscr;
Write(„ Masukkan pilihan Anda = „); readln(pilih);
Case pilih of
1 : writeln(„Anda telah memilih menu 1‟);
2 : writeln(„Anda telah memilih menu 2‟);
3 : writeln(„Anda telah memilih menu 3‟);
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
19
else
writeln(„Masukan anda salah „);
end;
readln;
end.
Tiap – tiap merk dijual dalam ukuran besar, sedang dan kecil.
Harga satuannya adalah :
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
20
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
21
Tugas : Nilai :
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
22
Praktikum 6 dan 7
Statement Pengulangan FOR
Tujuan:
Mempelajari pengulangan For menaik dan menurun
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
23
Program Kuadrat_bilangan;
Uses crt;
Var i,bil,kuadrat : integer;
Begin
Clrscr;
Writeln(„Program Kuadrat Bilangan‟);
Write („Masukkan bilangan = „);
Readln(bil);
Write(„Kuadrat Bilangan adalah„);
For i := 1 to bil do
Begin
Kuadrat := i * i;
Write(i,‟-„,kuadrat,‟;‟);
End;
Readkey;
End.
N=10
100 98 96 94 92 90 88 86 84 82
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
24
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
25
Tugas : Nilai :
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
26
Praktikum 8
Statement Pengulangan While
Tujuan:
Mempelajari pengulangan While
While kondisi DO
Begin
……………
aksi
……………
end; {endwhile}
Contoh 8.1 : Tulislah program naik turun berikut yang tidak menerima input
dari keyboard. Program akan menampilkan hasil sebagai berikut: 0 5, 1 4 , 2 3,
3 2, 4 1,5 0
{Program while}
Uses crt;
Var X,Y : integer;
Begin
Clrscr;
Writeln („Program Naik Turun‟);
Y := 5;
X := 0;
While X <= 5 do
Begin
Write ( X, Y,‟,‟);
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
27
Y := Y - 1;
X := X + 1;
End; {endwhile}
Readkey;
End.
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
28
Masukan : bilangan
Keluaran : bilangan yang habis dibagi 3, jumlah bilangan
Program Perhitungan Bilangan Habis Dibagi 3
Bilangan tersebut adalah …
Jumlah bilangan yang habis dibagi 3 : …
Hitung lagi ? [Y/T] …
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
29
Tugas : Nilai :
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
30
Praktikum 9
Statement Pengulangan Repeat
Tujuan:
Mempelajari pengulangan Repeat
Perintah perulangan repeat – until mirip dengan perintah while – do. Tetapi
pada perintah repeat – until, pengujian kondisi dilakukan di akhir perulangan.
Dan perulangan dilakukan selama kondisi belum dipenuhi.
Penulisan dalam Pascal :
Repeat
……………
aksi
……………
Until kondisi;
Contoh 9.1 : Program menghitung banyak proses yang diulang pada badan
statement repeat_until. Program ini tidak menerima masukkan apapun tetapi
akan menghasilkan banyaknya proses yang dikerjakan oleh statement
repeat_until.
{Program repeat}
uses crt;
var A,N : integer;
Begin
Clrscr;
Writeln („Perhitungan Proses Repeat‟);
A := 0;
N := 0;
Repeat
A := A + 5;
N := N + 1;
Until A > 10 ;
Write(„Banyak proses : „,N);
Readkey;
End.
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
31
Tugas :
Nilai :
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
32
Praktikum 10 dan 11
Statement Array
Tujuan:
Mempelajari representasi fisik struktur data array
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
33
Xi 71 53 82 67 56
Yi 354 313 322 334 247
Masukan : Xi danYi
Keluaran : Nilai B
Program Menghitung Nilai B :
Xi Yi
… …
… …
… …
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
34
Ordo matriks II
Banyaknya baris :…..
Banyaknya kolom :…..
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
35
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
36
Data Masukan:
Algoritma Pancasila
Nama Nilai Nilai Nilai Nilai Nilai Nilai
1 2 Sum 1 2 Sum
Tony 50 80 40 80 60 65
Susi 50 90 55 40 80 80
Lastri 85 80 90 50 80 35
Melly 70 90 90 60 50 52
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
37
7. Sebuah toko kue menjual 4 jenis kue yaitu kue bolu, kue lapis, kue
keju, kue coklat dengan ketentuan sebagai berikut untuk tiap jenis kue
yang dibeli:
Pembelian kue sebanyak 1-10 buah tidak mendapatkan potongan
harga
Pembelian kue sebanyak 11-50 buah mendapatkan potongan Rp.
100/buah
Pembelian kue sebanyak 51-100 buah mendapatkan potongan Rp
500/buah
Pembelian kue diatas 100 buah mendapatkan potongan Rp2000/buah
Selain itu setiap pembelian kue diatas 50 buah mendapatkan tambahan kue
sebanyak 5 buah kue sejenis, hadiah ini hanya diberikan sekali untuk tiap
pembelian kue sejenis.
Pembeli dapat membeli lebih dari satu jenis kue, perhitungan transaksi
pembelian dilakukan per satu jenis kue.
Masukan : Nama kue yang dibeli, jenis kue, jumlah pembelian kue, harga
satuan kue per buah
Keluaran :
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
38
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
39
Tugas : Nilai :
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
40
Praktikum 12 dan 13
Statement Procedure
Tujuan:
Mempelajari modul procedure
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
41
Jumlah Jurusan
TI(S1) = xx orang
MI(D1) = xx orang
MI(D3) = xx orang
TK(D3) = xx orang
AKT(D3) = xx orang
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
42
Tugas : Nilai :
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
43
Praktikum 14 dan 15
Statement Function
Tujuan:
Mempelajari modul function
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
44
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs
45
Tugas : Nilai :
Modul Praktikum
Algoritma dan Pemrograman 1 (Pascal)
Rita Wiryasaputra,ST., M. Cs