BAHASA PEMROGRAMAN
I
ntruksi-intruksi yang diberikan kepada komputer agar komputer dapat melaksanakan tugas-tugas tertentu
dikenal dengan sebutan Program. Sebuah program berisi sekumpulan kode. Kode-kode yang digunakan
dapat bermacam-macam dan bergantung oleh bahasa pemrograman komputer yang digunakan. Adapun
upaya untuk membuat program dikenal dengan sebutan pemrograman atau pengkodean.
Seperti halnya manusia yang mempunyai bermacam -macan bahasa, begitu juga komputer. Namun
berbeda dengan manusia yang bahasa dasarnya bervariasi, tergantung suku, bangsa atau tempat bermukim,
komputer hanya mempunyai bahasa dasar yang berupa bahasa mesin. Bahasa mesin adalah bahasa yang
hanya mengenal kode biner, yaitu kode yang berisi angka 0 atau 1 saja. Bahasa ini sudah tentu sulit bagi
manusia. Menulis program dengan bahasa mesin sungguh sangat menjemukan, menyita waktu bagi
penulisnya (pemrogram) dan menuntut pengetahuan tentang mesin itu sendiri.
Agar program mudah dibuat, maka akhirnya diciptakanlah bahasa pemrograman komputer yang lain.
Pada dasarnya ada dua golongan bahasa pemrograman komputer, yaitu:
Bahasa pemrograman tingkat rendah ( low level languages ) , contohnya : Bahasa rakitan
(assembly) dan RPG
Bahasa pemrograman tingkat tinggi ( high level languages ) , contohnya : BASIC, COBOL,
FORTRAN, dan PASCAL
Pada standart kompetensi bahasa pemrograman, sofwer yang digunakan adalah Pascal. Bahasa pascal
adalah bahasa tingkat tinggi yang dirancang oleh Prof. Niklaus Wirth dari Technical University of Zurich,
Switzerland. Nama pascal diambil sebagai penghargaan terhadap Blaise Pascal, seorang ahli matematika
filosofi terkenal dari Perancis pada abad ke-17. Bahasa pascal merupakan salah satu bahasa yang sangat
popular didunia, terlebih karena digunakan sebagai bahasa untuk mengajarkan pemrograman terstruktur bagi
para siswa di sekolah dan mahasiswa di pelbagai perguruan tinggi, baik di Indonesia maupun negera lainnya.
Turbo pascal dapat digunakan untuk tujuan komputasi, pembuatan permainan (game) ataupun masalah-
masalah yang lain. Keuntungan dari turbo pascal adalah program mudah dibuat, dipahami, dan dikembangkan.
Pengaturan direktori/path untuk file EXE hasil kompilasi program, letak file include, TPU, unit dan obyek
juga dilakuan melalui menu pilihan ini.
WINDOW
Diantaranya untuk menutup jendela yang sedang aktif, memperbesar ukuran jendela, dan memilih
jendela aktif
HELP
Berisi berbagai bantuan yang disediakan turbo pascal , anda dapat memanfaatkan menu ini untuk
memperoleh informasi rinci tentang turbo pascal.
C. Menulis Program
Setelah lembar kerja turbo pascal terlihat pada gambar dibawah muncul , anda dapat memulai
menuliskan program baru. Caranya adalah sebagai berikut:
1. pilih menu file atau tekan Alt + f
2. klik New
Modul XI Smt – 2 2
selanjutnya muncul kotak dialog editor yang masih kosong seperti gambar 1.2 dibawah ini
Program contoh;
USES CRT;
Begin
Writeln(‘aku seorang programer pemula’);
End.
D. Perintah Editor
Perintah-perintah didalam Editor turbo pascal menggunakan shortcut seperti halnya perintah yang
ada didalam wordstar (program pengolah kata versi dos). Adapun tabel perintah turbo pascal sebagai berikut:
TOMBOL KETERANGAN
↑ atau Ctrl + E Kursor ke atas
↓ atau Ctrl + X Kursor ke bawah
← atau Ctrl + S Kursor ke kiri satu karakter
→ atau Ctrl + D Kursor ke kanan satu karakter
Ctrl + A Kursor ke kiri satu kata
Ctrl + F Kursor ke kanan satu kata
PgUp Ke atas satu layar
PgDn Ke bawah satu layar
Ctrl + Y Menghapus satu baris pada posisi kursor
Ctrl + N Menghapus satu baris
Ctrl + T Menghapus satu kata pada posisi kursor
Meng-Compile program ini dilakukan bila kita ingin membuat EXE file. Setelah program tersebut kita compile,
maka kita akan mempunyai sebuah program yang ber-extention EXE. Dan program tersebut bias kita jalankan
Modul XI Smt – 2 3
langsung tanpa menggunakan program Turbo Pascal. Untuk meng-Compile (mengkompilasi) program caranya
adalah sebagai berikut :
1. Klik Compile pada Menu
2. Pilih Compile (Alt + F9)
Setelah program selesai kita tulis, maka kita harus mengeksekusi program tersebut.
1. klik run
2. klik run (CTRL + F9 )
Setelah program di run, anda secara langsung melihat hasil ekskusi program.
LEMBAR DISKUSI 1
1. Coba aktifkan program turbo pascal !
2. ketiklah kode program dibawah ini :
PROGRAM latihan1;
Uses crt;
begin
write(‘selamat belajar’);
write(‘TURBO PASCAL’);
Readln;
end.
2b. Ekskusi kode program diatas! Kemudian perhatikan apa yang terjadi?
2c. Simpan kode progam di atas pada lokasi (Path) c:\x2\kelas dengan nama : latihan1.pas
Modul XI Smt – 2 4
3. ketiklah kode program dibawah ini :
PROGRAM latihan2;
Uses crt;
Begin
Writeln(‘Belajar Program TURBO PASCAL’);
WRITE(‘Mudah dan Menyenangkan’);
Readln;
End.
3b. Ekskusi kode program diatas! Kemudian perhatikan apa yang terjadi?
3c. Simpanlah kode program diatas pada lokasi (path) c:\x2\kelas dengan nama : latihan2.pas
3d. Hapus kode program baris kedua pada program latihan2.pas . kemudian kompile program
tersebut. Amati apakah yang terjadi ?
4. Sisispkan kalimat ini : (Belajar membuat program pertama kali) pada program latihan.1pas, sehingga
tampak seperti kode program dibawah ini
(Belajar membuat program pertama kali)
PROGRAM latihan1;
Uses crt;
Begin
Write(‘selamat belajar’);write(‘TURBO PASCAL’);end.
Perintah untuk keluar dari program turbo pascal adalah dengan cara sebagai berikut:
klik file
klik exit
LEMBAR PRAKTEK 1
1. Buatlah program untuk menampilkan kalimat dibawah ini. Kemudian simpan pada lokasi (path)c:\x2\
kelas dengan nama praktek1.pas
2. Buatlah program untuk menampilkan kalimat dibawah ini. Kemudian simpan pada lokasi (path)c:\x2\
kelas dengan nama praktek2.pas
AKU INGIN MENJADI SEORANG
PROGRAMMER
YANG PROFESIONAL DAN HANDAL
3. Buatlah program untuk menampilkan kalimat dibawah ini. Kemudian simpan pada lokasi (path)c:\x2\
kelas dengan nama praktek2.pas
TERNYATA MEMBUAT PROGRAM ITU
MUDAH
Modul XI Smt – 2 5
BAB II
STRUKTUR PROGRAM DAN ELEMEN-ELEMEN
TURBO PASCAL
Struktur sebuah program yang dilengkapi didalam turbo pascal tersusun atas 3 bagian yaitu:
1. Judul program
2. Bagian pendeklarasian
Deklarasi : label, konstanta, tipe, variable, prosedur, dan fungsi
3. Bagian pernyataan
Urutan-urutan bagian diatas , letaknya didalam program sesuai dengan penomorannya. Pada turbo pascal,
diantara kepala program dan bagian deklarasi terdapat klausa USES. Klausa ini berkaitan dengan penggunaan
rutin yang ada didalam suatu unit. Sebagai contoh: USES crt;
Judul program
USES CRT;
Bagian deklarasi
Begin
Bagian pernyataan
Tempat dituliskannya statemen-statemen
…….. Program
……….
End
Judul program bebas ditentukan namanya oleh programmer. Nama program ditulis setelah kata Program
dan harus selalu diakhiri dengan titik koma ( tanda ; ). Didalam pemakaiannya judul bersifat optional artinya
judul boleh tidak dituliskan dalam sebuah kode program .
Bagian deklarasi digunakan bila program dipakai pengenal (identifier). Pengenal dapat berupa label, konstanta,
tipe, variable, prosedur dan fungsi. Apabila suatu program memakai pengenal maka pascal menuntut supaya
pengenal tersebut dideklarasikan atau diperkenalkan dulu kepada pascal sebelum digunakan. Sebagai contoh,
apabila suatu program hanya akan memakai label dan variable maka pendeklarasian juga hanya dibuat untuk
label dan variable saja, sementara tipe, konstanta, prosedur dan fungsi tidak perlu dibuat pendeklarasiannya.
Jadi disesuaikan dengan keperluan program. Bagian pernyataan (statemen) adalh tempat dimana statemen-
statemen yang akan mengendalikan program dituliskan. Awal dari bagian ini ditandai dengan kata Begin dan
kata End, manandai akhir dari bagian ini. Biasanya akhir dari sebuah statemen selalu ditandai tanda titik koma
(;).
Modul XI Smt – 2 6
B. DEKLARASI
Apabila program memakai statemen Goto untuk melompat ke suatu statemen tertentu maka dibutuhkan
suatu label tepat sebelum statemen yang dituju. Label tersebut harus diklarasikan terlebih dahulu agar pascal
mengenali keberadaan label dalam program. Pendeklarasian label harus diawali dengan kata label dan diikuti
kumpulan nama-nama label yang dipakai dalam program dan diakhiri dengan titik koma. Jumlah label yang
dipakai dalam sebuah program dapat lebih dari satu , tergantung keperluan program.
Contoh program :
Program Contoh-Label;
Uses Crt;
Label 100, selesai;
Begin
Writeln(‘Halo’);
Goto 100;
Write(‘Apa kabar’);
100:
writeln(‘Kabar baik?’);
Goto Selesai;
Write(‘Baik-baik saja’);
Selesai:
Writeln(‘Sampai jumpa’);
Readln;
End.
Penjelasan program :
Bila program diekskusi maka akan diperoleh keluaran sebagai berikut:
Hallo
Kabar baik ?
Sampai jumpa
Tampak disana ada statemen-statemen yang tidak diekskusi karena statemen Goto menyebabkan proses
ekskusi melompat ke statemen yang terletak setelah label yang dituju.
Contoh program :
Program Contoh_Konstanta;
Uses crt;
Const
Persentase=0.2;
Gaji=70000;
Begin
Writeln(‘Potongan = ’,Persentase);
Writeln(‘Upah = ’,Gaji);
Readln;
Modul XI Smt – 2 7
End.
Penjelasan program:
Bila program diekskusi maka akan diperoleh keluaran sebagai berikut :
Potongan = 20000000000E-01
Upah = 7000
Ketika suatu program menggunakan satu atau beberapa variable maka perlu dibuat pendeklarasian
variable. Pada saat pendeklarasian , dituliskan nama pengenal variable diikuti tipe data yang diperbolehkan
untuk ditampung sementara pada variable tersebut. Untuk keperluan pendeklarasian tersebut maka, seorang
programmer harus memahami tipe-tipe data dalam pascal.
Tipe-tipe data yang ada dalam pascal adalah sebagai berikut :
1. Tipe data standart
Tipe data standart terdiri dari : string, Boolean, byte, short integer, word, longint, real,
single, double, extended, dan comp
2. Tipe data scalar dan tipe data subrange
3. Tipe data terstruktur
4. Tipe data pointer (petunjuk)
Namun disini kita akan membahas tentang tipe data standart saja.
Tipe data standart adalah kelompok tipe-tipe data yang sudah dikenal oleh pascal , meliputi string, char,
Boolean, kelompok tipe data berupa bilangan bulat dan tipe data dari kelompok bilangan decimal. Penjelasan
secara bagan ditunjukan pada gambar 2.3
String: tersusun atas kumpulan beberapa karakter (huruf), maksimal 255 karakter.
Misal: ‘Andi’, ‘Selasa’, ‘Pascal’ dll
Char: terdiri hanya satu karakter. Misal: ‘A’, ‘X’, ‘b’, dll
Boolean: tipe data ini isinya hanya 2, yaitu true dan false
Semua tipe data dalam kelompok tipe data standart memiliki sifat ordinal (memiliki urutan) kecuali
tipe string dan semua kelompok tipe data dalam bentuk bilangan decimal. Tipe data char meskipun berupa
Modul XI Smt – 2 8
karakter , mereka memiliki urutan sesuai kode ASCII-nya. Untuk mengetahui nomor urutannya cukup dengan
menuliskan Ord (isi datanya) . Misal jika dituliskan statemen ord(‘a’); maka jika ditampilkan hasil dari ekskusi
statemen ini akan diperoleh angka 97 sebagai kode ASCII nomor urut huruf a kecil.
Pengenal yang akan menampung nilai yang bersifat tidak tetap harus dideklarasikan di bagian deklarasi
variable. Namun demikian meski nilai pengenal varaibel selalu berganti tetapi masih dalam tipe data yang
sama. Sebagai ilustrasi perhatikan gambaran berikut ini
Tersedia tiga kotak kecil yang masing-masing telah diberi nama agar kita tidak salah memasukan isi
kedalamnya. Nama tiap kotak identik dengan nama pengenal variable. Kotak dengan nama hijau dikhususkan
untuk menyimpan sayur, kotak bernama biru khusus dipakai untuk menyimpan buah dan kotak bernama
merah untuk menyimpan lauk. Sayur, buah, dan lauk identik dengan tipe-tipe data. Jika hari ini sayur bayam
dalam kotak hijau harus kita masak maka barulah kita bias menyimpan sayur kol dedalamnya. Begitu
seterusnya sehingga dapat kita pikirkan bahwa isi kotak hijau dapat berganti-ganti isinya namun dalam jenis
yang sama, yaitu sayur.Hal yang sama berlaku pula untuk 2 kotak yang lain. Pembahasan tentang tipe-tipe
data bawaan pascal akan dijabarkan pada bab II.
Pendeklarasian konstanta diawali denga kata Var dan diikuti kumpulan nama pengenal penampung
nilai variable yang dipakai dalam program, diikuti tipe datanya dan diakhiri dengan titik koma.
Bentuk umum pendefinisian variable adalah sebagai berikut :
Var
Nama-variabel-1: tipe-data-1;
Nama-variabel-2: tipe-data-2;
…………
………....
Nama-variabel-n: tipe-data-n
Variabel dapat diisi dengan nilai konstanta , variable atau bahkan hasil dari suatu ekspresi (seperti 5) atau
fungsi. Pemberian nilai ke variable dilakukan dengan menggunakan pernyataan penugasa. Bentuknya :
Variabel :=nilai;
Contoh :
Jumlah:= 5;
Jumlah:= 6 + 4;
Jumlah:= jumlah + 2;
Hal penting yang berkaitan dengan pemberian nilai adalah masalah tipe . Turbo pascal merupakan
bahasa yang sangat peka terhadap tipe data. Suatu variable yang dideklarasikan bertipe integer, misalnya,
Modul XI Smt – 2 9
tidak dapat diisi dengan tipe data Real. Variabel yang bertipe char tidak dapat diisi dengan nilai integer.
Pemrogram harus menjamin bahwa data yang dikirimkan ke suatu variable sesuai dengan tipenya.
PROGRAM variable;
{ ==================================================}
{ ==contoh untuk menunjukan program yang mengandung variable}
{ ==================================================}
USES crt;
VAR
nama : string;
Jumlah : integer; {deklarasi variabel nama dan jumlah}
BEGIN
Nama := ‘Sulis’;
Jumlah := 90; {memberi nilai terhadap variabel nama dan jumlah}
Writeln(nama);
Writeln(jumlah); {menampilkan isi variabel nama dan jumlah}
Readln;
END.
Penjelasan program
Bila program diekskusi maka akan diperoleh keluaran sebagai berikut :
Sulis
90
Lembar Praktek 1
1. Buatlah program rumus perkalian, penambahan dan penjumlahan yang melibatkan label, konstanta,
dan variabel
2. Buatlah program rumus fisika yang melibatkan label, konstanta, dan variabel
1.1 Karakter
Elemen terkecil pada turbo pascal adalah karakter. Karakter dapat berupa : Huruf (A sampai Z, a sampai
z), Angka (0 sampai 9), Simbol khusus, Spasi, Karakter control (karakter dengan nilai ASCII dibawah 32,
misalnya Tab dan Backspace), karakter ASCII tidak standart pada PC (karakter denga nilai ASCII antara 128
hingga 255).
Selain symbol khusus yang berupa sebuah karakter tunggal , ada sejumlah simbol khusus yang
tersusun atas dua karakter. Kedua karakter pada simbol-simbol ini tidak boleh ditulis dengan diantarai oleh
spasi. Seperti terlihat pada table dibawah ini :
1.2 Kata-tercadang
Turbo Pascal mencadangkan beberapa kata sebagai kata yang mempunyai makna khusus, disebut
sebagai kata-tercadang (reserved word). Kata-kata yang tergolong sebagai kata-tercadang tidak boleh dipakai
untuk menamai label, tipe, variabel, konstanta bernama ataupun prosedur dan fungsi, field dari record,
program dan unit. Sebagai contoh, PROGRAM mempunyai makna khusus dan tidak dapat anda gunakan
untuk keperluan lain, misalnya sebagai nama variabel.
1.3 Pengenal
Pengenal (identifier) merupakan elemen nama yang banyak dipakai didalam program. Anda akan
menggunakan pengenal untuk memberikan nama terhadap :
1. Tipe data buatan
2. Label
3. Variabel
4. Konstanta bernama
5. Program
6. Field dari record
7. Unit
8. Prosedur dan Fungsi
Turbo pascal memberikan aturan untuk penamaan pengenal sebagai berikut :
karakter pertama harus berupa huruf
karakter berikutnya dapat berupa :
- huruf
- digit
- garis bawah ( _ )
panjang pengenal boleh berapa saja, tetapi hanya 63 karakter pertama yang berarti
huruf kapital dan huruf kecil dianggap sama
tidak boleh ada tanda khusus
tidak boleh ada spasi
Contoh pengenal yang benar Contoh pengenal yang salah Penyebab kesalahan
Modul XI Smt – 2 11
Praktek-1 Praktek 1 Ada spasi
A 1soal Diawali dengan angka
LatihanFisika latihan-fisika Ada tanda minus
tanya&jawab Ada tanda khusus : &
Operator adalah kata atau simbol yang digunakan dalam program untuk melakukan suatu operasi
seperti penjumlahan atau perkalian, memberikan nilai ke variabel, membandingkan kesamaan dua buah nilai.
Nilai yang dioperasikan oleh operator bersama operand membentuk suatu ekspresi. Ssebagai contoh :
1+2–3
disebut ungkapan atau ekspresi. Tanda + dan – merupakan tanda operator. Sedangkan nilai 1, 2 dan 3 disebut
operand.
Operator
1+2+3
Operand
Gambar 4.2 Operator, Operand dan Ungkapan
Pada Turbo Pascal , operand dalam suatu ekspresi (ungkapan) dapat berupa : konstanta, variabel,
pemanggilan fungsi dan himpunan.
Operator pada turbo pascal ada bermacam-macam. Kebanyakan operator bersifat binary yaitu
melibatkan dua buah operand. Selain operator binary, terdapat operator unary. Operator unary adalah operato
yang melibatkan sebuah operand saja. Misalnya:-5
Pada contoh ini, minus (-) berkedudukan sebagai operator unary. Operator yang deigunakan dalam operasi
matematika ditunjukan pada table dibawah ini.
Modul XI Smt – 2 12
Penjelasan program
Bila program diekskusi maka akan diperoleh keluaran sebagai berikut :
10 5 4
19
Penjelasan program
Bila program diekskusi maka akan memperoleh keluaran sebagai berikut :
500000
Perhatikan bahwa nama pengenal variabel harus diletakan dalam kurung ( ). Aturan yang sama diterapkan jika
akan dipakai statemen read. Perbedaan statemen read dan readln adalah :
Read : statemen ini tidak akan membuang kelebihan data. Kelebihan data akan diberikanpada
read atau readln berikutnya.
Readln : statemen ini menyebabkan kelebihan data akan dibuang ( tidak diberikan ke read atau
readln berikutnya).
Statemen write dan writeln sama-sama digunakan untuk menampilkan informasi ke layer. Bentuk
umum dari kedua statemen terlihat didalam table berikut ini :
Untuk statemen lebih dari satu pernyataan harus dipisah dengan tanda koma ( , ) pada masing-masing
pernyataan . Contoh :
Write (‘ Nilai A = ‘, A , ‘ persen ‘);
Writeln : setelah menampilkan informasi pernyataan , kursor langsung turun ke bawah satu baris
Write : setelah menampilkan informasi pernyataan, kursor tetap berada disamping kanan pernyataan.
Modul XI Smt – 2 14
Contoh program :
PROGRAM Write_Writeln;
Uses Crt;
Var
Alas, Tinggi : Integer;
Luas : Real;
BEGIN
Clrscr;
Writeln (‘ Menghitung Luas Segitiga ‘);
Write (‘Alas : ‘); Readln (Alas);
Write (‘Tinggi : ‘);Readln (Tinggi);
Luas := 0.5 * alas * Tinggi ;
Writeln (‘Luas = ’,Luas:0:0);
Readln;
END.
Penjelasan Program
Bila Program diekskusi (RUN) maka akan diperoleh keluaran sebagai berikut :
Menghitung Luas Segitiga
Alas ? = 10 ( Angka 10 dan 20 diinputkan melalui keyboard )
Tinggi ? = 20
Luas = 15
Turbo pascal menyediakan cara yang mudah untuk mengatur penampilan suatu data pada layer.
Misalanya anda dapat mengatur agar data bilangan dapat diatur agar menempati ruang denga ukuran tertentu
dan ditampilkan rata kanan pada ruang tersebut . Sebagai mana terlihat pada table dibawah ini :
Bilangan yang belum di format Bilangan yang sudah di format
5801 5801
702123 702123
90 90
1 1
Untuk memformat bilangan tersebut diatas pada layer anda dapat menambahkan tanda titik dua ( : ) diikuti
dengan bilangan yang menyatakan lebar ruang untuk manampilkan data.
Write (data:n) atau writeln (data:n)
Writeln ( 56789 :10);
Contoh :
Writeln ( 56789 :10);
5 6 7 8 9
Contoh program:
Modul XI Smt – 2 15
PROGRAM Keluaran;
USES Crt;
Var
I : integer;
K : real;
BEGIN
CLRSCR;
For I := 1 to 3 do
Begin
Write ( I :5 );
K := sqrt (I);
Writeln ( K :6:3);
End;
Readln;
END.
Penjelasan Program :
Dalam Program diatas variable K akan menampung hasil akar 2 dari isi data dalam variable I. Dengan
demikian apabila program diatas dijalankan maka akan diperoleh keluaran program sebagai berikut :
1 1
2 1.414
3 1.732
- ClrScr [prosedur].
Perintah ini digunakan untuk membersihkan layar.
sintaks: ClrScr; [Clear screen]
- GotoXY[prosedur].
Untuk menempatkan posisi kursor pada layar.
Sintaks: GotoXY(X, Y: Byte);
Keterangan : X = sumbu X (posisi horisontal)
Y = sumbu Y (posisi vertikal)
- DelLine [prosedur].
Untuk menghapus sebuah baris pada posisi kursor dan menaikkan
baris-baris dibawahnya.
Sintaks: DelLine;
- InsLine [prosedur].
Untuk menyisipkan sebuah baris pada posisi kursor dan meng-
geser kebawah tampilan-tampilan baris dibawahnya.
Sintaks: InsLine;
- Delay [prosedur].
Untuk menghentikan sejenak proses program.
Sintaks: Delay (MS: Word);
Keterangan : variable MS = ukuran waktu dalam milisecond.
Contoh Program :
Modul XI Smt – 2 16
Program Layar;
Uses Crt;
Var x : Char;
Begin
ClrScr;
GotoXY(35,10);Writeln (‘I Love Dinda');
Write (tunggu sebentar...!!');
Delay (5000);
InsLine;
GotoXY (35,11);Writeln ('Bayi sehatku');
GotoXY(01,13);Writeln ('Tekan Enter !');
Delay(1000);
GotoXY(15,12);
DelLine;
Read(x);
End.
Hasilnya adalah :
I Love Dinda
Bayi sehatku
tunggu sebentar...!!
Tekan Enter !
- ConCat[fungsi].
Untuk menggabungkan 2 atau beberapa variabel string.
Sintaks: ConCat (s1 [,s2,...,sn]: String) : String;
contoh: ConCat ('ABC','DEF') { ABCDEF }
- Copy [fungsi].
Mengambil satu atau beberapa karakter dari sebuah string.
Sintaks: Copy (S,Index,Count) : String;
Keterangan :
S = sebuah string (string).
Index = posisi awal kita akan mengambil beberapa
karakter (integer)
Count = banyaknya karakter yang akan diambil (integer).
- Delete [prosedur].
Menghapus sebagian karakter dari sebuah string.
Sintaks: Delete (S,Index,Count);
Keterangan : sama dengan statemen Copy.
- Insert [prosedur].
Menyisipkan satu atau beberapa karakter ke dalam sebuah string.
Sintaks: Insert (Source,var S,Index);
Keterangan : Source = sumber string untuk disisipi (string)
var S = string tujuan yang akan disisipi oleh
string Source (string)
Index = posisi mulai (integer).
- Length [fungsi].
Modul XI Smt – 2 17
Memberikan nilai panjang dari suatu string (jumlah karakter
dalam string).
Sintaks: Length (S);
Keterangan : S = string
Length(S) menghasilkan nilai integer.
Contoh Program:
Program Man_String;
Uses Crt;
Var s : String;
l : Integer;
h : String;
Const a='Dinda';
b='Bayi ';
c='Sehatku';
Begin
ClrScr;
s:= ConCat (a,b,c);
Writeln (s);
Insert (' & ',s,6);
Writeln(s);
Delete (s,7,7);
Writeln (s);
h:=Copy (s,1,5);
Writeln (h);
l:= Length(s);
Writeln ('Panjangnya string S : ',l);
Writeln ('Posisi "Sehat" pada nilai S : ',POS('Sehat',s));
Readln;
END.
Hasilnya adalah :
DindaBayiSehatku
Dinda & Bayi Sehatku
Dinda Sehatku
Dinda
Panjangnya string S : 13
Posisi "Sehat" pada nilai S : 7
LEMBAR PRAKTEK 2
1. Buatlah sebuah program untuk menampilkan identitas seorang siswa yang terdiri dari nama, kelas,
nilai ulangan.
2. Buatlah sebuah program untuk menampilkan identitas barang yang terdiri dari nama barang, harga
barang, jumlah barang.
3. Buatlah program untuk menghitung rumus hukum Newton F = M x A , kemudian cetak nilai M, nilai A
dan nilai F.
4. Buatlah program untuk menghitung rumus Matematika Y = A 2 + 5 , kemudian tampilkan nilai dari A
dan nilai Y.
Modul XI Smt – 2 18
BAB III
PERULANGAN
Peulangan adalah suatu proses yang dilakukan secara berulang-ulang. Perulangan dalam sebuah
program dapat tersusun atas satu statemen atau lebih dari satu statemen. Istilah perulangan sreing kali juga
disebut sebagai Looping. Tersedia empat macam alat untuk membuat perulangan dengan bahasa
pemrograman pascal, yaitu : for..to..do, downto..do, repeat..until, dan while..do. Adapun cara pemakaiannya
adalah sebagai berikut:
1. Perulangan for..to..do dan for..downto..do
Dipakai hanya jika jumlah perulangan yang diinginkan terjadi telah tertentu jumlahnya.
Untuk kejelasan penerapanya dapat diperhatikan pada setiap contoh program yang menyertai setiap kejelasan
tentang alat perulangan dalam bahasa pemrograman pascal berikut ini :
A. Perulangan For..to..do
Struktur penulisan perulangan for..to..do adalah sebagai berikut :
PROGRAM Perulangan;
USES crt;
Var
I , Ulang : Integer;
BEGIN
CLRSCR;
For I := 1 to 3 do
Writeln (‘ Muhamad Ali ‘ );
Readln;
END.
Penjelasan Program
Setelah program diekskusi atau dijalankan maka akan diperoleh keluaran sebagai berikut :
Modul XI Smt – 2 19
Muhamad Ali
Muhamad Ali
Muhamad Ali
B. Perulangan For..downto..do
Struktur penulisan perulangan for..downto..do adalah sebagai berikut :
Aturan penulisan perulangan for..downto..do sama persis dengan perulangan for..to..do, hanya saja posisi nilai
variable control kini berubah., yaitu hitungan perulangan kini berjalan dari besar ke kecil. Oleh sebab itu
perulangan for.. downto.. do disebut juga sebagai perulangan negative.
Contoh Program
PROGRAM Perulangan2;
USES crt;
Var
I , Ulang : Integer;
BEGIN
CLRSCR;
For I := 10 to 20 do
Write ( I : 4 );
Writeln;
For I := 20 downto 10 do
Write ( I : 4 );
Readln;
END.
Penjelasan Program;
Setelah program diekskusi atau dijalankan maka akan diperoleh keluaran sebagai berikut :
a. 10 11 12 13 14 15 16 17 18 19 20
20 19 18 17 16 15 14 13 12 11 10
C. Perulangan Repeat..until
Perulangan repeat..until dipakai untuk membuat suatu proses berulang secara terus menerus
sampai (until) kondisi syarat terpenuhi. Struktur penulisan perulangan Repeat..Until adalah sebagai berikut :
Repeat
Tempat dituliskanya statemen-statemen penyusun
Proses yang akan diulang- ulang
Until kondisi syarat
Modul XI Smt – 2 20
Dari struktur penulisan diatas, ada dua hal yang perlu diingat, yaitu : berapapun jumlah statement yang dipakai
untuk menyusun proses yang akan diulang – ulang, seluruh statement tersebut tidak perlu dibingkai dalam
Begin..End;
Program A;
USES crt;
Var
Sum, Bil : integer;
BEGIN
CLRSCR;
Sum := 0;
Repeat
Write (‘ Masukkan sebuah bilangan Bulat : ‘); Readln ( Bil );
Sum := Sum + Bil ;
Until Bil := 999;
Writeln ( Sum :5 );
Readln;
END.
Penjelasan Program:
Program ini bila dijalankan akan selalu meminta masukan berupa bilangan bulat dan setiap kali diberi masukan
maka akan selalu dijumlahkan dengan penjumlahan sebelumnya. Proses minta masukan dan penjumlahan
akan terus berlangsung dan akan berhenti jika diberi masukan yaitu : 999.
Modul XI Smt – 2 21
Program A; Program B; Program C;
USES crt; USES crt; USES crt;
Var Var Var
i : integer; i : integer; i : integer;
BEGIN BEGIN BEGIN
CLRSCR; CLRSCR; CLRSCR;
i := 0; i := 0; i := 8;
Repeat repeat repeat
i := i + 1; write(i); i := i + 1;
Write(i); i := i + 1; write(i);
Until I > 6; until i > 6; until i > 6;
Readln; Readln; Readln;
END. END. END.
Keluaran Program Keluaran Program Keluaran Program
1234567 0123456 9
Penjelasan Program:
Pemakaian perulangan Repeat..Until memerlukan kecermatan sebaik mungkin ketika memasang kondisi syarat
dan nilai variable-variabel yang berkaitan dengan perulangan tersebut karena berpenganruh dengan hasil
ekskusinya. Akan lebih baik jika programmer telah mahir membaca program sehingga dapat memprediksi
sketsa programnya telebih dahulu sebelum menuangkannya kedalam komputer.
D. Perulangan While…Do
Perulangan While..Do dipakai untuk membuat suatu proses berulang secara terus menerus selama kondisi
syarat masih terpenuhi. Struktur penulisan perulangan While..Do adalah sebagai berikut :
Dari struktur penulisan diatas maka ada dua hal yang perlu diingat yaitu : jika jumlah statement penyusun
proses yang akan diulang – ulang lebih dari satu statement maka statement –statement tersebut wajib dibingkai
antara Begin dan End;
Contoh program..
Modul XI Smt – 2 22
i := i + 1; Readln; Keluaran Program
End; END.
E. Perulangan Bersarang
Perulangan Bersarang (Nested Loop) artinya didalam suatu perulangan mengandung satu atau lebih
perulangan lain. Dengan demikian ada satu atau lebih statement penyusun proses perulangan yang juga
berupa perulangan. Adapun macam perulangan yang dikandung oleh suatu perulangan dapat dikombinasikan
diantara empat macam alat perulangn yang ada pada Bahasa Pemrograman Pascal. Penyusunan perulangan
bersarang disesuaikan dengan kebutuhan program.
Contoh program:
Program Ulang_Sarang;
Uses crt;
var
i,j : integer;
begin
clrscr;
for i := 1 to 5 do
begin
for j := 1 to 3 do
write(i:8,j:3);
writeln;
end;
readln;
end.
LEMBAR KERJA
1. Buatlah Program untuk menghitung jumlah berikut : SUM = 1+2+3+4+5+6+7+8+9+10. Gunakan perintah
For..Do
2. Buatlah Program untuk menghitung Rata-rata dari sepuluh (10) data berikut ini : Rata-rata =
(1+2+3+4+5+6+7+8+9+10) / 10.Gunakan perintah For..Do
3. Buatlah Program untuk menghitung jumlah berikut : SUM = 1+2+3+4+5+6+7+8+9+10. Gunakan perintah
Repeat..Until
4. Buatlah Program untuk menghitung jumlah berikut : SUM = 1+2+3+4+5+6+7+8+9+10. Gunakan perintah
While..Do
Modul XI Smt – 2 23
BAB IV
PENYELEKSIAN KONDISI
Penyeleksian KOndisi merupakan suatu proses pemilihan tindakan yang akan dijalankan jika ditemui suatu
kondisi tertentu. Ada dua macam alat penyeleksi kondisi dalam bahasa pemrograman Pascal, yaitu :
If..Then..Else dan Case..Of. Pemilihan alat penyeleksi kondisi yang akan dipakai tergantung pada jumlah
pasangan kondisi dan tindakan yang akan dijalankan. Apabila jumlah pasangan kondisi dan tindakannya terdiri
dari :
Perhatikan bahwa :
Jika Kondisi syarat terpenuhi maka diekskusi tindakan_1. Jika kondisi syarat tidak terpenuhi maka diekskusi
Tindakan_2.
Modul XI Smt – 2 24
CONTOH PROGRAM
Program Contoh_A; Program Contoh_B;
Uses Crt; Uses Crt;
Var Var
I:byte; I:byte;
Begin Begin
I:=20; I:=27;
If(I mod 2 = 0) then Writeln(I,’ Bil Genap’)else If(I mod 2 = 0) then Writeln(I,’ Bil Genap’) else
Writeln(I,’ Bil Ganjil’); Writeln(I,’ Bil Ganjil’);
Readln; Readln;
End. End.
Penjelasan program :
Program Contoh_A;
Uses Crt;
Var
I:byte;
Begin
I:=20;
If(I mod 2 = 0) then Writeln(I,’Bil Ganjil’)
Else Writeln(I,’Bil Genap’);
Readln;
End.
Tindakan_1 maupun Tindakan_2 dapat tersusun atas sebuah statement ( seperti contoh program yang telah
diberikan diatas ) ataupun sekumpulan statement. Khusus Tindakan yang tersusun atas sekumpulan statement
maka kumpulan statement tersebut wajib dan harus dibingkai atau diletakkan diantara kata BEGIN dan END;.
Sebagai catatan, khusus untuk Tindakan yang terletak sebelum kata ELSE (Tindakan_1) maka jika tersusun
atas kumpulan statement, penutup bingkainya hanya kata END tidak memakai titik koma (;).
CONTOH PROGRAM
Program Contoh_C;
Uses Crt;
Var
I,J:byte;
Begin
I:=25;
If I <= 30 then
Begin
Write(I:3);
For J := 30 DOWNTO 1 DO Write(J:3);
Writeln;
End
Else
Writeln(‘masukkan sebuah bilangan bulat lagi’);
Readln;
End.
Modul XI Smt – 2 25
Penjelasan program
1) Keluaran program diatas adalah :
30 29 28 27 26 25
2) Kini cobalah memberi tanda titik koma ( ; ) pada kata end milik tindakan_1 dan lihatlah pesan
kesalahan yang muncul setelah program diRun
Ketika tindakan_2 dirasa tidak perlu ditampilkan dalam program maka boleh juga digunakan statemen :
If kondisi syarat then tindakan_1
Contoh program:
Program Contoh_A;
Uses Crt;
Var
I:byte;
Begin
I:=20;
If(I mod 2 = 0) then Writeln(I,’Bil Genap’);
End.
Penjelasan program
Ini adalah cuplikan dari program contoh_A. Tindakan B telah dihilangkan sehingga else turut hilang. Program
ini akan memberikan keluaran selama I adalah bilangan genap dan program telah memberikan keluaran secara
benar.
B. IF..THEN..ELSE Bersarang
IF..THEN..ELSE Bersarang artinya dalam penyeleksian kondisi If..Then..Else ataupun If..Then mengandung
penyeleksian kondisi If..Then..Else ataupun If..Then lain. If..Then..Else ataupun If.Then bersarang dalam
tindakan_1 ataupun Tindakan_2 dari If..Then..Else ataupun If..Then yang paling luar. Tersarang artinya
menjadi statement penyusun.
CONTOH PROGRAM
1) Program Contoh_F;
Uses Crt;
Var
K : word;
Begin
Write(‘Masukkan bilangan bulat : ‘);
Readln(K);
If (K mod 2 <> 0) then Writeln (K,’ adalah ganjil’)
Else if (K mod 5 = 0) then Writeln(K, ‘adalah genap kelipatan 5’)
Else
Writeln(K,’ adalah genap bukan kelipatan 5’);
Readln;
End.
Penjelasan program
If then yang terletak setelah else merupakan if then bersarang karena menjadi statemen
penyusun tindakan_2 dari if then else.
2) Program Contoh_G
Uses crt;
Modul XI Smt – 2 26
Label
Ulang:
Var
Skor : char;
Begin
Ulang
Write(‘Isikan nilai huruf ujian anda’);
Readln(Skor);
If (Skor = ‘A’) or (Skor = ‘a’) Then Writeln (‘Sangat bagus’)
Else if (Skor = ‘B’) or (Skor = ‘b’) Then Writeln (‘Bagus’)
Else if (Skor = ‘C’) or (Skor = ‘c’) Then Writeln (‘Cukup bagus’)
Else if (Skor = ‘D’) or (Skor = ‘d’) Then Writeln (‘Buruk’)
Else if (Skor = ‘E’) or (Skor = ‘e’) Then Writeln (‘Sangat buruk’)
Else begin
Writeln (‘Ulangi pemasukan nilai anda !’);
Goto Ulang;
End;
Readln;
End.
Penjelasan program
Program contoh_G serupa dengan program contoh_E hanya saja disini dipakai if then else
bersarang. Penyeleksian kondisi case..of maupun case..of..else dapat diubah menjadi if..then..else
bersarang.
Ungkapan logika dalam penyeleksian kondisi case..of diwakili dalam selector. Selektor berupa variable dan
case label berupa isi data yang nilainya bias sama ataupun tidak sama dengan nilai isi data dalam variable
selector. Oleh sebab itu tipe data dari variable selector dan tipe data yang ditulis sebagai case label harus
sama . Daftar case label dapat berupa sebuah angka atau karakter ataupun jangkauan karakter atau angka
yang tidak boleh berupa bilangan decimal. Tabel 4.1 menyajikan contoh-contoh case label.
CONTOH PROGRAM
Program Contoh_D;
Uses crt;
Var
Skor : byte;
Begin
Write (‘Isikan nilai ujian anda dalam skala 100 ( Max 100) : ’);
Readln (Skor);
Case Skor of
80 .. 100 : Begin
Write(‘Nilai anda A’);
Writeln(‘ Sangat baik’);
End;
60 .. 79 : Begin
Write(‘Nilai anda B’);
Writeln(‘ Baik’);
End;
40 .. 59 : Begin
Write(‘Nilai anda C’);
Writeln(‘ Cukup baik’);
End;
20 ..39 : Begin
Write(‘Nilai anda D’);
Writeln(‘ Buruk’);
End;
0 ..19 :Begin
Write(‘Nlai anda E’);
Writeln(‘ Sangat buruk’);
End;
End;
Writeln(‘Belajar lebih giat’);
Readln;
End.
Penjelasan program
1) Jika program diekskusi dan diberi masukan nilai ujian 35 maka setelah tombol (enter)
ditekan, segera angka 35 tersebut ditampung dalam variable skor. Oleh karena
variable skor juga berperan sebagai selector dalam penyeleksian kondisi case..of
maka isi data yang ditampungnya itu dicocokkan dengan case label –case label yang
ada . Oleh karena nilai 35 cocok dengan jangkauan dalam case label 20..39 : maka
tindakan yang dijalankan computer adalah menuliskan
Nilai Anda E
Sangat buruk
Modul XI Smt – 2 28
2) Seusai menjalankan satu tindakan maka tindakan yang lain tidak akan diekskusi.
Pemakaian case..of terutama diperuntukan dalam kasus saat dalam menyeleksi kondisi ada lebih dari 2
tindakan yang dapat terjadi. Konskuensinya programmer harus sudah memperhitungkan dan mengantisipasi
semua kemungkinan isi data yang dibawa selector untuk keperluan pembuatan case label. Hal ini sangat
penting karena apabila satu saat nilai selector tidak sama satupun dengan case label yang maka akibatnya,
tidak satu tindakanpun yang dikerjakan. Untuk mengatasi permasalahan ini maka dapat dipakai case..of..else
yang memiliki aturan pemakaian sama persis dengan case..of. Tindakan yang akan diekskusi manakala nilai
dari selector tidak sama satu pun dengan case label yang ada diletakan setelah kata else.
Struktur penulisan statemen case..of..else dalah sebagai berikut :
Case selector of
Case label 1 : Tindakan_1;
Case label 2 : Tindakan_2;
Case label 3 : Tindakan_3;
CONTOH PROGRAM
Program Contoh_E;
Uses crt;
Label
Ulang;
Var
Skor : Byte;
Begin
Ulang :
Write (‘Isikan nilai ujian anda dalam skala 100 ( Max 100) : ’);
Readln (Skor);
Case Skor of
80 .. 100 : Begin
Write(‘Nilai anda A’);
Writeln(‘ Sangat baik’);
End;
60 .. 79 : Begin
Write(‘Nilai anda B’);
Writeln(‘ Baik’);
End;
40 .. 59 : Begin
Write(‘Nilai anda C’);
Writeln(‘ Cukup baik’);
End;
20 ..39 : Begin
Write(‘Nilai anda D’);
Writeln(‘ Buruk’);
End;
0 ..19 :Begin
Write(‘Nlai anda E’);
Writeln(‘ Sangat buruk’);
Modul XI Smt – 2 29
End;
Else
Begin
Writeln(‘Ulangi pemasukan nilai anda’);
Goto Ulang;
End;
End;
Writeln(‘Belajar lebih giat’);
Readln;
End.
LEMBAR PRAKTEK
1. Buatlah program yang akan minta 10 buah bilangan bulat masukan secara bertahap. Setiap kali
program menerima masukan maka program akan memeriksa bilangan tersebut, hanya jika bilangan
tersebut merupakan bilangan genap maka bilangan tersebut akan dijumlahkan. Program akan
menampilkan hasil penjumlahannya.
2. Buatlah program yang akan minta 20 buah bilangan bulat masukan secara bertahap. Setiap kali
program menerima masukan maka program akan memeriksa bilangan tersebut, hanya jika bilangan
tersebut merupakan bilangan ganjil kelipatan 6 maka bilangan tersebut akan dijumlahkan. Program
akan menampilkan hasil penjumlahannya.
3. Buatlah program yang akan minta 10 buah bilangan bulat masukan secara bertahap. Setiap kali
program menerima masukan maka program akan memeriksa bilangan tersebut, hanya jika bilangan
tersebut merupakan bilangan genap kelipatan 5 maka bilangan tersebut akan difaktorialkan dan
kemudian dijumlahkan. Program akan menampilkan hasil penjumlahannya.
Modul XI Smt – 2 30
SOAL ULANGAN TURBO PASCAL
1. Cara membuka menu File pada program Pascal dengan menggunakan keyboard yaitu
a. Tekan Alt-F d. Tekan Ctrl-F
b. Tekan Alt-M e. Tekan Alt-R
c. Tekan Ctrl-F9
Modul XI Smt – 2 31
5. Nilai variable C dalam rumus C := 45-2*10
a. 25 d. 430
b. 23 e. 340
c. 52
8. Perulangan yang digunakan untuk proses mengulang secara terus menerus sampai kon
disi terpenuhi
a. Repeat..Until d. If..Then
b. While..do e. If ..Then..Else
c. For…to..do
9. Perulangan yang digunakan untuk proses mengulang secara terus menerus sampai kondisi tidak
terpenuhi
a. Repeat..Until d. If..Then
b. While..do e. If ..Then..Else
c. For…to..do
10. Statemen yang digunakan untuk meminta masukan data dari keyboard …
a. Readln d. Ready
b. Write e. Gotoxy
c. Writeln
Modul XI Smt – 2 32
13. Kode program dibawah ini salah kecuali
a. Program Pascal_11 d. Program 11_Pascal
Begin Begin
Writeln(‘Selamat Belajar’); Writeln(Selamat Belajar)
End. End.
b. Program Pascal_11; e. ProgramPascal_11;
Uses Crt; Uses Crt;
Begin Begin
Writeln(‘Selamat Belajar’); Writeln(‘Selamat Belajar’);
End. End.
c. Program Ulangan Blok
Uses Crt;
Begin
Writeln(‘Program Pascal’);
End.
Modul XI Smt – 2 33
c.24
Modul XI Smt – 2 34
Jawablah uraiain dibawah ini dengan benar !
4. Buat sebuah Program yang meminta masukan 10 buah bilangan. Setiap kali masukan akan diseleksi, dan
hanya yang kelipatan 4 yang akan dijumlah. Tampilkan hasil penjumlahan.
5. Buat sebuah program menggunakan Repeat Until dengan Output sebagai berikut :
2 ADALAH BIL. GENAP
3 ADALAH BIL. GANJIL
4 ADALAH BIL. GENAP
5 ADALAH BIL. GANJIL
6 ADALAH BIL.GENAP
Modul XI Smt – 2 35