Modul III

MODUL III
Tujuan :
• Memahami ciri umum program komputer
• Memahami pengertian deklarasi lebih lanjut
• Memahami pengertian ekspresi
• Memahami pengertian pernyataan sederhana dan pernyataan majemuk
• Memahami input dan output

3.1. Ciri Program Komputer
Umumnya setiap program komputer memiliki ciri-ciri berikut ini :
• dijalankan secara berurutan (sequence) dari atas ke bawah (awal dan akhir)
• memiliki pernyataan bersyarat (IF …. Then, IF .. Then .. Else…, Case… OF) dan
• memiliki pernyataan berulangan (For… Do, While….Do, Repeat … Until)

Untuk membentuk ke tiga syarat tersebut program memiliki tahap-tahap :
• Input
• Proses
• Output
Sistem Kerja Komputer Sistem Kerja Program

Anda perhatikan kembali modul I hal 1, diagram alir (flow chart) menjumlahkan dua buah bilangan seperti gambar di bawah ini :

Program Menjumlahkan(A,B);
Var
A, B : Integer;
Begin
A:=5;
B:=15;
C:=A+B;
Writeln(C);
End.

3.1. Kode Program dan Flow Chart Menjumlahkan Dua Buah Bilangan Integer
3.2. Deklarasi
Di modul II kita telah mempelajari pengenal (identifier). Mengapa kita mesti menggunakan pengenal ? Karena program Pascal mewajibkan kita mendeklarasikan pengenal sebelum digunakan. Pengenal dideklarasikan (dinyatakan) dibagian mana saja ? Pengenal dapat kita nyatakan di ketiga blok program pascal, yaitu : bagian judul, deklarasi, dan pernyataan.
Baiklah, untuk lebih memahami kapan harus mendeklarasikan suatu pengenal kita ambil contoh menghitung nilai akhir seorang mahasiswa, yang mana nilai akhir dinyatakan dengan rumus:
NA = ((3*NT+3*NM+4*NS)/100), dimana NA : Nilai Akhir
NT : Nilai Tugas
NM : Nilai Mid
NS : Nilai Semester
Menurut Anda, kira-kira apa yang harus kita inputkan untuk mendapatkan nilai akhir seorang mahasiswa ? Ya, jawaban yang pasti adalah Nilai Akhir, Nilai Tugas dan Nilai Mid. Dan Anda mungkin bertanya lagi apakah Nama, Nim, Alamat, Nama Orang Tua, Asal SMA, E-Mail dari mahasiswa tersebut tidak perlu diinput ? Bisa saja. Data-data pendukung tersebut bisa saja digunakan, tergantung dari informasi yang ingin kita sampaikan kepada pengguna/pembaca program kita. Misalkan untuk kasus di atas data nim ataupun ditambah Nilai Tugas, Nilai Mid, Nilai Semester dan Nilai Akhir mungkin sudah cukup. Kemudian apakah data Nilai Akhir tidak perlu diinput ? Tidak. Bila Nilai Akhir Anda input, maka sebenarnya fungsi komputer untuk membantu mempercepat pengolahan data tidak Anda manfaatkan denga benar. Lagi pula berdasarkan rumus, bahwa Nilai akhir merupakan perhitungan dari ketiga nilai input. Untuk itu, kita gunakan komputer untuk melakukan perhitungan tersebut. Namun yang jelas walaupun Nilai akhir tidak diinput, jika dia digunakan sebagai penampung hasil perhitungan, maka Nilai Akhir tersebut juga harus dideklarasikan.

3.2.1. Deklarasi Variabel
Data yang Anda inputkan mungkin puluhan, ratusan bahkan ribuah mahasiswa dengan menggunakan program yang sama. Karena tiap data mahasiswa selalu berubah, maka pengenal untuk data mahasiswa tersebut harus Anda deklarasikan di bagian Var (Variabel).
Deklarasi Variabel diletakkan setelah judul program. Bila terdapat pernyataan Uses maka deklarasi variabel juga diletakkan setelah deklarasi Uses (unit). Selain dari pada kedua aturan sebelumnya deklarasi variabel dapat Anda ubah-ubah posisinya dengan deklarasi constata, type, label, prosedur dan fungsi.
Berikut ini adalah kode program menghitung nilai akhir mahasiswa yang pengenalnya kita deklarasikan di bagian var (variabel) karena nilai pengenal tersebut akan berubah-ubah selama program berjalan (run).
Cara menyatakan pengenal di bagian Var adalah sebagai berikut : bila pengenal lebih dari satu maka antar pengenal harus dipisahkan oleh koma diikuti, kemudian diikuti karakter titik dua, tipe data dan harus diakhiri dengan karakter titik koma.
Kode Program Keterangan
{Program Hitung Nilai Akhir
Nama File : ProgNA
Oleh : Betra Ginting
Nim : 08133245
Tgl : 13 Oktober 2005
Sekolah : STTI Respati}

Program HitungNilaiAkhir;
Var
Nim : String[9];
Nama : String[25];
NT, NM, NS, NA : Real;
Begin
Write(‘Nim : ‘);readln(Nim);
Write(‘Nama : ‘);readln(Nama);
Write(‘Nilai Tugas : ‘);readln(NT);
Write(‘Nilai Mid : ‘);readln(NT);
Write(‘Nilai Semester : ‘);readln(NT);
NA:=((3*NT+3*NM*4*NS)/100);
Writeln(‘Nilai Akhir : ‘,NA);
End. Setiap karakter diantara kurung kurawal buka dan kurung kurawal tutup dianggap komentar. Komentar tidak diterjemahkan oleh penterjemah (compiler) pascal.

Judul program
Deklarasi variabel
Nim dengan tipe string dan panjang max.9 karakter
Nama dengan tipe string dan pajang max 25
NT, NM, NS, NA bertipe real (bilangan desimal)

Masukkan data Nim
Masukkan data Nama
Masukkan nilai Tugas
Masukkan nilai Mid
Masukkan nilai Tugas
Hitung Nilai Akhir
Cetak nilai akhir.

Gambar 3.2. Kode Program Menentukan Nilai Akhir-1

Di atas telah kita nyatakan bahwa, apakah perlu memasukkan data Nim dan Nama dala kode program ? Coba kita deklarasi Nim dan nama beserta input datanya di blok pernyataan, maka kode program sebelumnya akan terlihat seperti di bawah ini :

Kode Program
Keterangan
{Program Hitung Nilai Akhir
Nama File : ProgNA
Oleh : Betra Ginting
Nim : 081332445
Tgl : 13 Oktober 2005
Sekolah : STTI Respati}

Program HitungNilaiAkhir;
Var
NT, NM, NS, NA : Real;
Begin
Write(‘Nilai Tugas : ‘);readln(NT);
Write(‘Nilai Mid : ‘);readln(NT);
Write(‘Nilai Semester : ‘);readln(NT);
NA:=((3*NT+3*NM*4*NS)/100);
Writeln(‘Nilai Akhir : ‘,NA);
End. Setiap karakter diantara kurung kurawal buka dan kurung kurawal tutup dianggap komentar. Komentar tidak diterjemahkan oleh penterjemah (compiler) pascal.

Judul program
Deklarasi variabel
NT, NM, NS, NA bertipe real (bilangan desimal)

Masukkan nilai Tugas
Masukkan nilai Mid
Masukkan nilai Tugas
Hitung Nilai Akhir
Cetak nilai akhir.

Gambar 3.3. Kode Program Menentukan Nilai Akhir-2

Dimana letak perbedaan antara Gambar 3.3 dan Gambar 3.3 yang Anda perolah ? Kode program mana yang lebih jelas memberikan informasi ? Apakah kita juga perlu memasukan data orang tua, asal SMA ?🙂
Bagaimana kalau nilai tugas tidak diinput ? Bila Nilai Akhir diinput apakah ada masalah ?
Bila nilai tugas tidak diinput tentu saja program yang kita buat salah, karena nilai tugas perlu diinput untuk tiap orang mahasiswa. Bila nilai akhir diinput tentu saja tidak masalah, tetapi program Anda tentu tidak efektif, karena Anda telah menyia-nyiakan kemanfaatan dari komputer, yakni : pengolahan data.🙂

3.2.2. Deklarasi Konstanta
Bila suatu saat Anda ingin agar pengenal yang Anda deklarasikan tidak berubah-ubah selama program dijalankan (run), maka pengenal tersebut lebih baik Anda deklarasikan di bagian Const (konstanta). Kita ambil contoh nilai π (phi) = 3.14. Misalkan kita ingin menghitung keliling dan luas suatu lingkaran, maka rumus yang digunakan adalah :
K = 2πr
L = π r2, dimana K : Keliling lingkaran
L : Luas Lingkaran
π : nilai phi = 3.14 r
r : jari-jari lingkaran

Menurut Anda apa yang mesti kita input ? mungki saja jawaban Anda adalah phi dan jari-jari. Jawaban tersebut memang masuk akal, tetapi karena nilai phi telah kita ketahui adalah nilai konstata (tetap), maka nilai phi tersebut tidak perlu lagi kita input sewaktu program berjalan (run). Dengan demikian phi kita nyatakan di deklarasikan Const (konstata).
Deklarasi Const Anda deklarasikan setelah judul program bila tidak terdapat deklarasi Uses. Bila terdapat deklarasi Uses, maka deklarasi Const harus Anda lettakkan setelah dekalarasi Uses. Setelah kedua aturan urutan deklarasi yang lainnya (variabel, type, prosedur, fungsi, label) tidak menjadi permasalahan.
Bila dalam deklarasi variabel pengenal lebih dari satu dapat memiliki tipe yang sama, maka dalam deklarasi konstata diwajibkan bahwa hanya satu pengenal mewakili satu nilai. Nilai yang diwakili konstata dapat dalam bentuk ekspresi karena ekspresi menghasilkan nilai.
Deklarasi konstanta ditandai dengan kata cadang Const diikuti oleh pengenalnya kemudian tanda sama dengan dan nilai ataupun ekspresi. Berikut ini adalah kode program untuk menghitung keliling dan luas dari lingkaran.

Kode Program Keterangan
Program HitungKelilingDanLuasLingkaran;
Uses crt;
Const
Phi = 3.14;
Var
Jari2,K,L : Real;
Begin
Clrscr;
Write(‘Jari – Jari Lingkaran : ‘);readln(Jari2);
K:=2*phi*Jari2;
L:=phi*Jari2*Jari;
Writeln(‘Keliling Lingkaran : ‘,K);
Writeln(‘Luas Lingkaran : ‘,L);
Readln;
End. Judul program
Deklarasi unit crt (chatode ray tube)
Deklarasi konstata phi = 3.14

Deklarasi variabel

Mulai
Prosedur Clrscr yang terdapat di dalam unit Crt. Fungsinya untuk membersihkan output. di layar.
Masukkan nilai jari-jari
Hitung keliling
Hitung luas
Cetak keliling lingkaran
Cetak luas lingkaran
Readlan adalah suatu prosedur. Prosedur ini terdapat di dalam unit system. Fungsinya adalah menunggu penekanan tombol Enter.
Akhir
Gambar 3.4. Kode Program Menghitung Keliling dan Luas Lingkaran

3.2.3. Deklarasi Label
Aturan nomor satu dari ciri program adalah bahwa urutan program harus dari atas ke bawah, namun dalam keadaan tertentu ciri tersebut dapat kita langgar (mis: untuk kasus keluar dari perulangan terdalam dalam suatu perulangan dalam perulangan / nested loop).
Pada saat masa awal berkembangnya pemrograman tingkat tinggi sekitar tahun 1970 (seperti : Basic, Cobol, Fortran) masih banyak menggunakan statement goto (loncat) ke suatu nomor statement yang lainnya. Lompatan ke suatu nomor tidak dibatasi. Karena keleluasaan ini dalam perawatannya banyak memakan waktu karena untuk penganalisaannya membutuhkan ketelitian. Coba Anda perhatikan statement berikut ini :

Kode Program Qbasic Output Keterangan
5 print “Mulai”
10 A = 5
15 B = 10
20 Goto 35
25 print C,“Selesai”
30 End
35 C = A + B
40 Goto 25 5
10
15
35

25

30 Cetak mulai
Nilai A = 5
Nilai B = 10
Lompat ke baris 35
Hitung nilai C = A+B (C = 5 + 10, C = 15)
Lompat ke baris 25
Cetak C dan string Selesai
Selesai

Gambar 3.5. Kode Program Label Dengan QBasic (Quick Basic)

Hal seperti di atas juga bisa kita lakukan di program Pascal, tetapi dengan syarat nomor lompatan (label) harus kita deklarasikan terlebih dahulu setelah kata Label diikuti oleh pengenal label. Pengenal label dapat dalam pengenal diawali huruf ataupun angka (pengecualian ini hanya berlaku untuk pengenal label). Angka yang dapat Anda tentukan bagi pengenal angka maksimum dapat terdiri dari 4 digit (9999).
Deklarasi Label harus dideklarasikan setelah deklarasi setelah judul program bila Ada atau setelah dekalrasi Uses (unit) diikuti oleh pengenal. Bila pengenal label lebih dari satu, maka antara pengenal tersebut harus ada tanda koma. Label tidak memiliki tipe.
Bila setelah judul program atau deklarasi unit antara label dengan deklarasinya lainnya (var, fungsi, prosedur, constanta, type) dapat Anda tukar-tukar.
Kode program dengan Qbasic di atas akan kita ubah ke program Pascal, seperti di bawah ini.

Kode Program Keterangan
Program Lompat2;
Uses Crt;
Label
Awal,Akhir,35,25;
Var
A, B : Integer;
Begin
Clrscr;
Awal :
writeln(‘Mulai’);
A:=5;
B:=10;
Goto 35;
25 :
Writeln(C,’Selesai’);
Exit;
35 :
C:=A+B;
Goto 25;
End. Judul Program
Deklarasi Unit Crt
Dekalrasi Label

Deklarasi Variabel

Mulai
Prosedur Clrscr yang terdapat di dalam unit Crt. Fungsinya untuk membersihkan output. di layar.
Label Awal
Cetak string mulai
Nilai A = 5
Nilai B = 10
Loncat Ke Label 35
C= A+ B (C = 5 + 10, C = 15)
Loncat ke Label 25
Cetak C (15) dan string Selesai
Exit adalah prosedur yang fungsinya untuk keluar dari blok program terdalam (begin .. end atau prosedur atau fungsi)

Gambar 3.6. Kode Program Contoh Deklarasi Label

Apa kesimpulan Anda tentang program 3.6. ?🙂 Coba Anda bandingkan dengan kode program 3.1. !. Kesimpulan Anda …?

3.2.4. Deklarasi Type
Pascal mengizinkan Anda untuk membuat tipe data yang baru. Untuk melakukan hal tersebut dapat Anda lakukan di bagian deklarasi Type. Tipe baru yang Anda nyatakan di bagian Type, selanjutnya suatu pengenal dengan tipe baru tersebut dapat Anda nyatakan di bagian konstanta, variabel, prosedur, dan fungsi.
Kode Program Dengan Deklarasi Type Keterangan
Program InputUmur;
Type
BatasUmur = 1..125;
Var
Umur : BatasUmur;
Begin
Write(‘Masukkan Umur Anda : ‘);
Readln(umur);
End. Judul program
Deklarasi Type denga nama pengenal BatasUmur dan batasan nilai yang dapat dimuatnya 0 s/d 125
Deklarasi variabel dengan nama pengenal Umur dengan tipe data BatasUmur, berarti pengenal Umur dapat menampung data antara 0 s/d 125.
Kode Program Dengan Deklarasi Variabel Keterangan
Program InputUmur;
Var
Umur : ShortInt;
Begin
Write(‘Masukkan Umur Anda : ‘);
Readln(umur);
End. Judul program
Deklarasi variabel Umur dengan tipe shorInt. Tipe ShortInt dapat menampung data antara -127 s/d +128. Anda perhatikan bahwa pengenal umur dapat menerima bilangan negatif, sedangkan seperti kita ketahui umur seseorang haruslah lebih besar dari 1. Memang kode program ini tidak salah hanya saja kurang tepat.
Kode Program Deklarasi Type Keterangan
Type
Rumah = (Mewah, Menengah, RS, RSS);
Phiku = 3.14;
Nilai = 0..100;
Const
Phi = Phiku;
Var
JenisRumah : Rumah;
NilaiUjian : Nilai;
Begin
Writeln(Ord(Menengah));
Writeln(Phiku);
NilaiUjian := 70;
Writeln(NilaiUjian);
End. Deklarasi Type
Tipe data terbilang (enumerated)
Tipe data bilangan desimal (real)
Tipe dengan jenis data subjangkauan (subrange)
Kode Program Deklarasi Type Keterangan
Type
Mahasiswa = Record
Nim : String[9];
Nama : String[25];
IPK : Real;
End;
Var
DafMahasiswa : Mahasiswa;
Begin
Mahasiswa.Nim:=’08122456’;
Mahasiswa.Nama:=’Esron Barus’;
Mahasiswa.IPK:=2.75;
Writeln(Mahasiswa.Nim,Mahasiswa.Nama,
Mahasiswa.IPK);
Readln;
End. Deklarasi Type
Tipe data rekord
Field nim dengan tipe string
Field nama dengan tipe string
Field ipk dengan tipe real

Deklarasi variabel DafMahasiswa dengan tipe Mahasiswa.

Data field record dimasukkan dengan mengetikkan terlebih dahulu pengenal record diikuti titik dan field.

Gambar 3.7. Beberapa Contoh Penggunaan Deklarasi Type

3.2.5. Deklarasi Prosedur
Clrscr (Clear Screen) adalah salah satu controh prosedur yang telah disediakan oleh Pascal (built in), yang gunakan untuk memebersihkan output di layar dan meletakkan posisi kursor di absis (X) 0 dan ordinat (Y) 0. Prosedur clrscr; merupakan salah satu contoh prosedur yang tidak memiliki parameter (nilai yang dilewatkan ke prosedur tersebut), namun adakalanya bahwa prosedur memiliki parameter (nilai yang mesti dinyatakan pada saat pemanggilan prosedur tersebut).
Prosedur dapat anda deklarasikan setelah judul program ataupun setelah deklarasi unit. Deklarasi prosedur diawali kata cadang procedure diikuti oleh pengenal prosedur bila tidak Ada parameter maka setelah pengenal Anda cukup menambang karakter titik koma. Bila parameter dibutuhkan maka setelah pengenal prosedur Anda harus memulainya dengan kurung buka dan dikuti parameter beserta tipenya dan diakhiri dengan kurung tutup. Setelah deklarasi judul prosedur berikutnya pernyataan yang Anda tulis di harus diantara begin dan end, layaknya seperti blok pernyataan. Di dalam prosedur dapat juga anda dekalrasikan prosedur, yang disebut dengan prosedur tersarang (nested procedure).

Berikut adalah contoh prosedur tanpa parameter.
Contoh prosedur tanpa parameter Keterangan
Program CetakUcapan;
Uses crt;
Procedure Cetak;
Begin
Writeln(‘=========================’);
Writeln(‘Selamat Datang di STTI Respati’);
Writeln(‘=========================’);
End;
Begin
Clrscr;
Cetak;
Cetak;
Cetak;
Cetak;
End. Judul program
Deklarasi unit CRT
Deklarasi prosedur tanpa parameter
Awal prosedur
Cetak string
Cetak string
Cetak string
Akhir prosedur
Awal program utama
Bersihkan layar
Panggil prosedur cetak
Panggil prosedur cetak
Panggil prosedur cetak
Panggil prosedur cetak
Akhir program utama
Contoh prosedur tanpa parameter Keterangan
Program JumlahBilAB;
Uses crt;
Var
C : Real;
Procedure InputAB(Var A,B : Real);
Begin
Write(‘Nilai A ‘);readln(A);
Write(‘Nilai B ‘);readln(B);
End.

Prosedur JumlahAB(A,B : Real);
Begin
C:=A+B;
End.

Var
A,B : Real;
Begin
Clrscr;
InputAB(A,B);
Jumlah(A,B);
Writeln(A,’ + ‘,B,’ = ‘,C);
Readln;
End. Judul program
Deklarasi unit CRT
Deklarasi variabel global. Deklarasi global adalah deklarasi yang diletakkan di atas deklarasi yang lainnya dan pengenal dengan variabel global akan dikenal oleh seluruh statement di bawahnya.
Deklarasi prosedur InputAB berparameter A,B dengan tipe real
Awal prosedur
Input A
Input B
Akhir prosedur

Deklarasi prosedur JumlahAB berparameter A,B dengan tipe real
Awal prosedur
Hitung C=A+B
Akhir prosedur

Deklerasi variabel yang akan dikenal di seluruh blok setelah pendeklarasiannya.
Awal program utama
Bersihkan layar
Panggil prosedur InputAB dengan parmeter A,B
Panggil prosedur JumlahAB dengan paramter A,B
Cetak pengenal A,B, dan C
Tungguk penekanan tombol enter
Akhir program utama
Gambar 3.8. Beberapa Contoh Penggunaan Deklarasi Prosedur

3.2.6. Deklarasi Fungsi
Contoh fungsi seperti : Sin, Cos, Length, dan lain-lain. Fungsi-fungsi tersebut telah didefenisikan oleh program Pascal, karena itu kita tinggal pakai saja. Ciri umum suatu fungsi adalah memiliki nilai keluaran. Nilai keluaran daripada fungsi langsung diberikan kenama fungsi . Pendeklarasian fungsi sama dengan dekalrasi prosedur hanya saja didahulu dengan kata cadang Function diikuti parameter (bila ada) dan diikuti titik dua dan tipe keluaran dari fungsi tersebut. Perhatikan contoh fungsi sederhana berikut ini :
Contoh fungsi tanpa parameter Keterangan
Program Jawab;

Funtion BS : Boolean;
Begin
BS:=True;
End.

Var
Jawaban : Boolean;
Begin
Jawaban:=BS;
IF Jawaban Then
Writeln(‘Anda Benar’);
End. Judul program

Deklarasi fungsi dengan nama pengenal BS tanpa parameter dan hasil keluaran fungsi adalah Boolean (TRUE atau FALSE).
Awal fungsi
Nama fungsi diberi nilai TRUE
Akhir fungsi

Deklarasi variabel Jawaban dengan tipe Boolean

Awal program utama
Pengenal jawaban memanggil fungsi BS
Jika jawaban TRUE maka cetak string Anda Benar

Akhir program
Gambar 3.9. Beberapa Contoh Penggunaan Deklarasi Fungsi

3.2.6. Deklarasi Unit
Unit merupakan kumpulan dari konstata, tipe data, variabel-variabel, prosedur-prosedur dan fungsi-fungsi. Sebelumnya kita telah menggunakan unit CRT dibagian deklarasi Uses Crt. Sebenarnya terdapat 9 unit standard yang disediakan oleh Turbo Pascal pada saat Anda merancang program. Unit-unit tersebut adalah :
 Crt
 Dos
 Graph
 Graph3
 Overlay
 Printer
 System
 Turbo3
 WinDos

Unit CRT
Unit CRT dapat digunakan untuk mengontrol mode layar, kode keyboard diperluas (extended keyboard codes), warna, window dan suara.
CRT hanya dapat digunakan dalam program yang berjalan di sistem operasi IBM PC, AT, PS/2s, dan yang sesuai (compatible).
Berikut ini adalah beberapa controh prosedur dan fungsi pada unit crt :
Nama Fungsi/Prosedur Keterangan
AssignCrt Proc Menghubungkan suatu file text dengan layar CRT
ClrEol Proc Menghapus semua karakter mulai dari posisi kursor
ClrScr Proc Menghapus layar dan mengembalikan kursor ke posis 0,0 (kiri atas)
Delay Proc Menunggu waktu yang ditentukan dalam millisecond (1/1000 detik).
DelLine Proc Menghapus baris tempat kursor berada.
GotoXY Proc Memindahkan kursor ke posisi X,Y di layar
HighVideo Proc Memiliki karakter berintensitas tinggi.
InsLine Proc Menyisipkan baris kosong pada posisi kursor
KeyPressed Func Menentukan apakan suatu tombol telah ditekan di keyboard.
LowVideo . Proc Memiliki karakter berintensitas rendah
NormVideo Proc Memilih attribut awal teks mulai dari posisi kursor
NoSound Proc Menonaktifkan speaker internal komputer.
ReadKey Func Membaca satu karakter dari keyboard.
Sound Proc Memulai speakter internal komputer
TextBackground Proc Memilih warna latar belakang
TextColor Proc Memilih warna huruf
TextMode Proc Memilih mode teks
WhereX Func Mengembalikan koordinat X dari posis kursor yang aktif
WhereY Proc Mengembalikan koordinat Y dari posisi kursor yang aktif
Window Proc Membuat suatu window teks di layar

Unit DOS
Unit Dos digunakan untuk implementasi sistem operasi dan prosedur/funsi penanganan file.
Beberapa controh Unit DOS
Nama Prosedur/Fungsi Keterangan
GetDate Proc menghasilan tanggal yang aktif dari sistem operasi..
GetFTime Proc menghasilkan waktu dan tanggal file terakhir kali ditulisi.
GetTime Proc menghasilkan waktu yang aktif dari sistem operasi
PackTime Proc mengubah record DateTime kedalam 4 byte yang digunakan oleh prosedur SetFTime
SetDate Proc menentukan tanggal yang aktif dari sistem operasi
SetFTime Proc menentukan tanggal dan waktu file yang terakhir ditulisi
SetTime Proc menentukan waktu yang aktif dari sistem operasi
UnpackTime Proc menubah 4 byte yang dihasilkan prosedur GetFTime, FindFirst, FindNext kedalam rekord DateTime

Graph : unit untuk penanganan grafik
Graph3 : unit untuk penyesuaian dengan Turbo Pascal V.3
Overlay : unit untuk penanganan overlay
Printer : unit untuk penangan pencetakan
System : unit untuk penangan sistem
Turbo3 : unit untuk penyesuaian dengan Turbo Pascal v.3
WinDos : unit untuk penanganan sistem windows dan dos

Berikut ini adalah beberapa controh penggunaan unit.
Kode Program Keterangan
Program UnitCrtDos;
Uses Crt,Dos; Judul program
Deklarasi unit menggunakan unit Crt dan Dos
Program UnitCrtDosGraph;
Uses Crt,Dos,Graph; Judul program
Deklarasi unit menggunakan unit Crt, Dos dan Graph.
Gambar 3.10. Beberapa Contoh Penggunaan Deklarasi Unit

3.3. Ekspresi (Expressions)
Ekspresi adalah suatu pernyataan yang menghasilkan suatu nilai. Berikut ini adalah beberapa contoh ekspresi.
Ekspresi Keterangan
JlhBeli : Byte; Deklarasi JlhBeli tipe Byte dengan nilai antara 0 s/d +255
Total:=125; pengenal Total bernilai 125
Rata_Rata:=Jumlah(X)/N Pengenal rata-rata memanggil fungsi jumlah dan membanginya dengan nilai N
A=5+5*10/5 Pengenal A melakukan perkalian 5*10, membaginya dengan 5 dan menambah dengan 5 = 15.

Anda perhatikan ekspresi berikut ini :
X = 2 + 5;

Ket :
X merupakan pengenal yang akan menampung penjumlahan angka 2 dan 5.
Angka 2 disebut operand satu
Angka 5 dsebut operand dua
Symbol + disebut operator

Bila anda perhatikan bahwa operator tambah (+) menggunakan dua buah operand. Operator yang menggunakan dua buah operand disebut operator binary, sedangkan operator yang menggunakan satu buah operand disebut unary. Dan bila operator menggunakan dua tiga operand disebut ternary, dst.

X = +5

3.4. Pernyataan (Statement)
Pernyataan adalah himpunan dari symbol-symbol yang memiliki suatu pengertian bagi penterjemah komputer (compiler). Symbol-symbol dapat berupa satu karakter ataupun lebih dari satu karakter. Symbol satu karakter bisa saja berupa operator unary (+, -), himpunan dari karakter-karakter dapat membentuk reserved word (begin, end, var), himpunan dari karakter-karakter dapat ekspresi (JlhBeli*Harga).

3.4.1. Pernyataan Sederhana
Pernyataan sederhana adalah pernyataan yang hanya berisikan satu baris kode program. Antara pernyataan satu dengan pernyataan lainnya dipisahkan dengan tanda titik koma.

Kode Program Keterangan
Program Menjumlahkan(A,B);
Uses crt;
Var
A, B : Integer;
Begin
Clrscr;
A:=5;
B:=15;
C:=A+B;
Writeln(C);
End. Satu pernyataan dipisahkan oleh titik koma
Satu pernyataan
Satu pernyataan

Awal program
Satu pernyataan
Satu pernyataan
Satu pernyataan
Satu pernyataan
Satu pernyataan
Akhir program
Gambar 3.11. Contoh Penggunaan Pernyataan Sederhana

3.4.2. Pernyataan Majemuk
Pernyataan majemuk adalah pernyataan yang lebih dari satu pernyataan. Pernyataan majemuk dapat ditandai dari :
1. semua pernyataan diantara begin dan end
2. pernyataan if
3. pernyataan perulangan

Kode Program Keterangan
Program Menjumlahkan(A,B);
Uses crt;
Var
A, B : Integer;
Begin
Clrscr;
A:=5;
B:=15;
C:=A+B;
Writeln(C);
End. Satu pernyataan dipisahkan oleh titik koma
Satu pernyataan
Satu pernyataan

Awal program

Akhir program
Program Kelulusan;
Var
Nim : String[9];
IPK : Real;
JlhSks : Byte;
Begin
Write(‘Nim : ‘);readln(Nim);
Write(‘IPK : ‘);readln(IPK);
Write(‘JlhSKS : ‘);readln(JlhSks);
If IPK > 2.5 and JlhSks>120 Then
Writeln(‘Anda Lulus’)
Else
Writeln(‘Anda Tidak Lulus’);
End.

Var
I : integer;
Begin
For i:= 1 to 10 Do
Writeln(1,’* ‘,I,’ = ‘,1*i);
End.

Begin
While not KeyPressed Do
Writeln(‘Press A Key’);
End.

Var
I : Integer;
Begin
I:=I;
Repeat
Writeln(‘Aku’);
Writeln(‘Suka’);
Writeln(‘Kamu’);Inc(I,1);
Until I>10;
End.

Gambar 3.12. Beberapa Contoh Penggunaan Pernyataan Majemuk
3.5. Input dan Output
3.5.1. Input Data
3.5.1.1. Readln
Sampai saat ini setiap kali kita memasukkan suatu data anda menggunakan statement Readln. Readln merupakan prosedur yang terdapat di dalam unit system. Unit system secara otomatis ditambahkan oleh penterjemah pascal pada saat Anda mengcompile program pascal Anda (tidak seperti unit Crt yang harus Anda deklarasikan) dan Anda tidak diperkenankanuntuk mendeklarasikannya ulang di deklarasi unit.
Berikut ini adalah beberapa bentuk dari prosedur readln yang sampai saat ini telah pernah kita gunakan.
• readln;  menunggu penekanan tombol enter
• readln(x);  menerima input data yang akan disimpan di pengenal X dan menunggu penekanan tombol enter untuk lanjut.
• readln(a,b,c,d)  menerima input yang akan disimpan di pengenal a,b,c,d. Bila pengenal di readln lebih dari 1 maka antara nilai pengenal harus dipisahkan oleh (spasi = ASCII 32, tab = ASCI = 8, Enter = Ascii 13 dan 10)
Berikut ini contoh penggunaan prosedur readln.

Kode program Keterangan
Begin
Readln;
End. Menunggu penekanan tombol enter
Begin
Readln;readln;
Readln;readln;
End. Menggunggu penekanan tombol enter empat kali
Var
A,B,C : real;
Begin
Readln(A,B);
Writeln(A*B);
End.
Deklarasi variabel

Awal
Karena pengenal lebih dari satu, maka pada saat penginputan data antara pengenal harus ada spasi putih.
Cetak A kali B
Selesai
Gambar 3.13. Beberapa Contoh Penggunaan Prosedur Readln

3.5.1.2. Read
Pernyataan read juga berfungsi untuk membaca suatu input data dari keyboard. Beda Antara statement Read dan Readln adalah dengan statemen Readln berarti setelah pembacaan kursor gantri baris (Readln, Read = Baca, Ln = Line New), sedangkan dengan pernyataan readl kursor tidak ganti bari setelah membaca suatu input. Namun, dalam aplikasi program kedua statemen ini tidak akan jauh berbeda dan dapat dikatakan sama walaupun dari nama kedua prosedur berbeda.
Berikut ini contoh penggunaan prosedur readln.
Kode program Keterangan
Begin
Read;
End. Tidak menunggu penekanan tombol enter
Begin
Read;read;
Read;read;
End. Tidak menunggu penekanan tombol enter
Var
A,B,C : real;
Begin
Read(A,B,C);
Writeln(A*B/C);
End. Deklarasi variabel

Awal
Karena pengenal lebih dari satu, maka pada saat penginputan data antara pengenal harus ada spasi putih.
Cetak A kali B dibagi C
Selesai
Gambar 3.14. Beberapa Contoh Penggunaan Prosedur Read

3.5.1.3. Readkey
Readkey adalah fungsi. Readkey berfungsi untuk membaca satu karakter dari keyboard. Hasil pengembalian fungsi adalah suatu karakter atau suatu extended scan code. Karakter hasil tidak ditampilkan di layar.

uses Crt;
var
C: Char;
begin
Writeln(‘Please press a key’);
C := Readkey;
Writeln(‘ You pressed ‘, C, ‘, whose ASCII value is ‘, Ord(C), ‘.’);
end.
Deklarasi Unit Crt
Deklarasi variabel

Awal
Cetak Please press a key
Karakter yang ditekan disimpan di variabel C
Cetak karakter yang ditekan dan kedudukannya di tabel ASCII
Akhir
Gambar 3.15. Beberapa Contoh Penggunaan Fungsi Readkey

3.5.1.4. KeyPressed
KeyPressed adalah fungsi. Keypressed fungsinya menentukan apakah suatu tombol sudah ditekan (True) atau belum (False). Tombol yang ditekan dapat dibaca dari fungsi Readkey.

uses Crt;
begin
repeat
Write(‘STTI RESPATI’);
until KeyPressed;
end. Deklarasi unit crt
Awal
Ulangi
Cetak STTI RESPATI
Hingga ada tombol Ditekan
Akhir
Gambar 3.16. Contoh Penggunaan Fungsi KeyPressed

3.5.2. Output
Setiap program tentu memiliki output (keluaran). Output program dapat berupa hasil tampilan di layar ataupun cetakan ke printer. Untuk menata tampilan output Anda juga harus mempertimbangan dari pihak pemakai (user), Apakah output yang Anda buat telah sesuai dengan informasi yang dibutuhkan oleh pemakai program Anda ? Bila tidak berarti Anda harus menata kembali tampilan output program Anda.

3.5.2.1. Output di layar
Output dilayar digunakan untuk menentukan tata letak hasil tampilan program di layar monitor. Coba Anda perhatikan output program berikut ini :
Kode Program Output di Layar Keterangan
Begin
Writeln(‘Selamat Datang’);
Writeln(‘Di STTI Respati’);
End. Awal program
Cetak Selamat Datang di layar kemudian kursor turun
Cetak Di STTI Respati di layar kemudian kursor turun
Akhir program
Kode Program Format Output di layar Keterangan
Begin
Writeln(5:5);
Writeln(5/10:4:2);
End. Awal program
Cetak angka 5 dengan luas posisi 5 karakter
Cetak hasil 5/10 dengan luas posisi seluruhnya 4 dan dua dibelakang koma.

Format Integer : Pengenal:N
Perhatikan kembali kode program berikut ini
Kode Program Keterangan Output
begin
Writeln(5)
End. Luas posisi hanya 1 karakter 5

begin
Writeln(5:5);
End. 5

Var A,B : Integer;
Begin
A:=1000;
B:=5;
Writeln(A*B:6);
End.

Luas posisi A*B enam karakter 5 0 0 0

Format Desimal: Pengenal:N:M

Kode Program Keterangan Output
begin
Writeln(5/1)
End. Luas posisi 17 digit 5 . 0 0 0 0 0 0 0 0 0 0 E + 0 0

begin
Writeln(5/1:8);
End. Luas posisi 8 digit 5 . 0 E + 0 0

begin
Writeln(-5/1:8);
End. Luas posisi 8 digit – 5 . 0 E + 0 0

Begin
Writeln(-5/1:8:2) Luas posisi 8 digit dan 2 di belakang desimal – 5 . 0 0

Begin
Writeln(100:8.4);
End. Luas posisi 8 digit dan 2 di belakang desimal 8 . 0 0 0 0

3.5.2.2. Output Di Printer
Untuk mencetak output ke printer, Anda harus menggunakan deklarasi unit printer. Selanjutnya pada pernyataan yang ingin dicetak anda harus mendahuluinya dengan mengetikkan lst diikuti tanda koma dan daftar ekspresi.
Kode Program Output di Printer Keterangan
Uses Printer;
Begin
Writeln(lst,’Selamat Datang’);
Writeln(lst,’Di STTI Respati’);
End. Gunakan unit printer bila ingin mencetak ke printer
Awal program
Cetak diawali kata lst (list) dipisahkan koma dan diikuti ekspresi

Akhir program
Kode program output di layar dan printer Keterangan
Program LayarDanPrinter;
Uses Crt,Printer;
Var
A, B, C : Integer;
Begin
Clrscr;
Write(‘Nilai A : ‘);readln(A);
Write(‘Nilai B : ‘);readln(B);
C:=A+B;
Writeln(lst,A,’ + ‘,B,’ = ‘,C);
End. Judul program
Deklarasi unit crt dan printer
Deklarasi variabel

Awal program
Bersihkan layar
Input nilai A
Input nilai B
Hitung C = A + B
Cetak ke printer A + B = C
Akhir program

Tugas :
1. PT. ABC yang bergerak di bidang garmen memiliki aturan tersendiri dalam penggajian karyawannya. Gaji diberikan berdasarkan gaji pokok + gaji lembur. Gaji pokok ditentukan berdasarkan lama kerja pegawai bersangkutan, sedangkan gaji lembur ditentukan berdasarkan besarnya jam lembur * 10000. Manajemen menetapkan aturan gaji pokok pegawai berdasarkan lama kerja seperti tabel berikut:
Lama Kerja GP
> 15 Thn Rp. 2.500.000
10>LK LK 2, maka didapat 2 akar real yang berbeda
D = 2, maka didapat 2 akar real yang sama
D

No comments yet

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: