0% menganggap dokumen ini bermanfaat (0 suara)
3 tayangan25 halaman

Struktur Dasar Pemrograman Pascal

Diunggah oleh

nash0978
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
3 tayangan25 halaman

Struktur Dasar Pemrograman Pascal

Diunggah oleh

nash0978
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd

DASAR BAHASA PEMROGRAMAN PASCAL

STRUKTUR PROGRAM PASCAL


Untuk mempelajari bahasa pemrograman pascal pertama kali yang harus kita pahami adalah
struktur dasar pascal yaitu :

PROGRAM <Nama_Program>
USES <nama_unit>
LABEL
<Deklarasi_Nama_Label>
CONST
<Deklarasi_Nama_Konstanta>
TYPE
<Deklarasi_Tipe_Data>
VAR
<Deklarasi_Nama_Variabel>

<Deklarasi prosedur dan fungsi>


BEGIN
<Pernyataan>
END.

Struktur program diatas merupakan struktur lengkap dari program pascal. Dalam prakteknya tidak
semua struktur dalam pascal dipergunakan, hanya yang benar-benar dibutuhkan saja yang
dipergunakan.

Deklarasi Kepala Program


Kepala progam merupakan nama dari program yang akan dibuat. Deklarasi ini bersifat opsional,
sehingga jika kepala program tidak dideklarasikan tidak akan memperngaruhi progam.
Bentuk deklarasi kepala program :
PROGRAM <Nama_Program>

<Nama_Program> merupakan nama yang diberikan untuk program yang akan dibuat.
Contoh :
PROGRAM Luas_lingkaran;

Pemakaian Unit
Unit adalah pustaka yang terdiri dari prosedur dan fungsi, yang dapat dicompile terpisah dari
program Turbo Pascal. Keuntungan pemakaian unit adalah program akan dikompilasi lebih cepat
karena bagian dari unit sudah dikompilasi tersendiri. Unit yang tersedia dalam pascal antara lain :
System Berisi fungsi dan prosedur standar pascal
Crt Digunakan untuk desain layar
Dos Berisi fungsi untuk mengkases sistem, sepeti jam sistem
Graph Berisi fasilitas untuk membuat grafik
Printer Berisi fasilitas untuk mengatur cetakan ke printer
Deklarasi Label
Label digunakan sebagai identitas didalam program berkaitan dengan adanya pertintah goto yaitu
perintah yang mengistruksikan untuk meloncat ke pernyataan yang diawali dengan
<Nama_Label>.
Bentuk deklarasi label :
LABEL
<nama_label_1>,<nama_label_2>,...,<nama_label_n>

Contoh program :

{
Contoh program yang mengandung label dan goto
}

program LabelDanGoto;
uses crt; {Memanggil unit crt}

{Deklarasi label}
label
tengah, akhir, selesai;

{program utama}
begin
clrscr; {hapus layar}
writeln('Teks ini diawal program');writeln;

goto akhir;
writeln('Saya ngak pernah tampil dilayar');
writeln;

tengah:
writeln('Teks ini ditengah program');
writeln('Kalau saya tampil dilayar');
writeln;

goto selesai;

akhir :
writeln('Teks ini diakhir program');
writeln('Lompat ketengah dulu ya...');
writeln;
goto tengah;

selesai :
readln;
end.

Untuk menjalankan program diatas dapat anda dugunakan tombol Ctrl+F9.

Deklarasi Const
Deklarasi const (konstanta) digunakan untuk mendefinisikan pengenal yang mempunyai nilai tetap
(konstan). Nilai pengenal pada konstanta yang telah didefinisikan tidak dapat diubah didalam
bagian pernyataan.
Bentuk deklarasi const :
CONST
<nama_pengenal_1> = <nilai_konstan_1>;
...
<nama_pengenal_n> = <nilai_konstan_n>;

Contoh program :

{
Program menghitung keliling lingkaran
}

uses crt; {memanggil unit crt}

{Deklarasi konstanta}
const
phi = 3.14;

{Deklarasi variabel}
var
jari2 : integer;
kel : real;

begin {Prorgam utama}


clrscr; {Hapus layar}
write('Jari-jari : ');
readln(jari2);
kel := 2 * phi * jari2;
writeln('Keliling lingkaran : ',kel:7:2);
readln;
end.

Deklarasi Type
Deklarasi ini digunakan untuk menciptakan tipe khusus yang nanti akan digunakan untuk
menentukan tipe variabel dalam deklarasi VAR. Tipe yang dapat diciptakan dalam deklarasi type
adalah tipe-tipe dalam pascal misalanya real, integer, byte, char, boolean, string, array, record,
pointer dan sebagainya.
Bentuk deklarasi type :
TYPE
<nama_pengenal_1> = <tipe_1>;
...
<nama_pengenal_n> = <tipe_n>;
Contoh :
TYPE
Bulat = integer;
Menyatakan bahawa tipe Bulat merupakan tipe baru yang identik dengan tipe integer.

Deklarasi Var
Deklarasi var digunakan untuk mendeklarasikan selurh variabel yang akan digunakan dalam
program. Deklarasi variabel adalah deklarasi yang mengalokasi tempat dalam memori dengan
nama tertentu dan hanya bisa menampung nilai data dengan tipe tertentu sesuai dengan yang
sudah dideklarasikan.
Bentuk deklarasi var :
VAR
<nama_variabel_1> = <tipe_1>;
...
<nama_pengenal_n> = <tipe_n>;
Contoh :

TYPE
Bulat = integer;

VAR
nama, alamat : string;
umur, jumlah : bulat;

Contoh diatas terdapat dua variabel yaitu nama dan alamat yang bertipe string , sedangkan umur
dan jumlah bertipe bulat (yaitu identik dengan tipe integer yang sudah dideklarasikan dalam
deklarasi type).

Contoh program :

{
Program memasukkan biodata
}
uses crt; {memanggil unit crt}

{Deklarasi tipe buatan sendiri}


type
bulat = integer;

{Deklarasi variabel}
var
nama, alamat : string;
umur, jumlah : bulat;
begin
clrscr;
writeln('Masukkan Datanya');
Writeln('----------------');
write('Nama : ');
readln(nama);
write('Alamat : ');
readln(alamat);
write('Umur : ');
readln(umur);
write('Jumlah anak : ');
readln(jumlah);
clrscr;
writeln('Data Yang Anda Masukkan');
Writeln('=======================');
writeln('Nama : ',nama);
writeln('Alamat : ',alamat);
writeln('Umur : ',umur);
writeln('Jumlah anak : ',jumlah);
readln;
end.

Deklarasi Prosedur dan Fungsi


Khusus untuk bagian deklarasi prosedur dan fungsi akan dibahas pada bab tersendiri.
Bagian Pernyataan
Pada bagian pernyataan selalu diawali dengan Begin dan diakhiri dengan End. Pada akhir
subprorgam End selalu diakhiri dengan titik koma (;) sedangkan End pada program utama selalu
diakhiri dengan titik (.). Prorgam terpendek dalam Turbo Pascal hanya terdiri dari Begin dan End.
saja.

Komentar Program
Komentar digunakan untuk menjelaskan suatu prorgam berkaitan dengan dokumentasi program.
Dalam Pascal komentar ada dua macam yaitu :
a. Diawali dengan (* dan diakhiri dengan *).
b. Diawali dengan { dan diakhiri dengan }.
Pada contoh-contoh prorgam diatas sudah banyak contoh penggunaan simbol komentar dalam
program.

Pernyataan Input-Output
Dalam Pascal untuk melakukan input-output digunakan prosedur standar write, writeln, read
dan readln.
Read dan Readln
Read dan Readln Berfungsi untuk menerima input dari keyboard dan menampungnya dalam
variabel.
Bentuk :
READ(nama_variabel);
READLN(nama_variabel);

nama_variabel digunakan untuk menampung data yang dimasukkan dari keyboard. Perbedaan
antara read dan readln adalah :
Read  Jika input data kelebihan maka data akan masuk ke variabel pada read selanjutnya.
Readln  jika input data kelebihan maka diabaikan.
Write dan Writeln
Write dan Writeln berfungsi untuk menampilkan nilai variabel, suatu konstanta, suatu fungsi dan
suaru hasil ungkapan pada layar.
Bentuk :
WRITE(nilai_data);
WRITELN(nilai_data);
Perbedaan antara write dan writeln adalah :
Write  Setelah menampilkan nilai data maka kursor ada berada disebelah kanan dari nilai data
tersebut.
Writeln  Setelah menampilkan nilai data maka kursor akan berganti dibaris bawahnya dari nilai
data tersebut.

Mengatur Format Keluaran


Dalam Pascal disediakan fasilitas yang dapat digunakan untuk mengatur format keluaran dari nilai
data sesuai dengan yang kita inginkan.
Tipe Char
Bentuk :
Ch : n
Karakter ch akan menempati medan data sebesar n secara rata kanan.
Tipe String
Bentuk :
s : n
String s akan menempati medan data sebesar n secara rata kanan.
Tipe Integer
Bentuk :
i : n
Bilangan i akan menempati medan data sebesar n secara rata kanan.
Tipe Boolean
Bentuk :
b : n
Nilai boolean b (True atau False) akan menempati medan data sebesar n secara rata kanan.
Tipe Real
Bentuk :
r : n : m
Nilai r akan menempati medan data sebesar n dengan banyak pecahan sebanyak m.
Contoh program :

{
Contoh program yang mengandung format tampilan
}

uses crt; {memanggil unit crt}


begin
clrscr;
writeln('STMIK EL RAHMA':20);
writeln('STMIK EL RAHMA');
writeln(FALSE:10);
writeln(12345:10);
writeln(12345:4);
writeln(1234.567);
writeln(1234.567:2:2);
writeln(1234.567:10:2);
writeln(1234.567:0:0);
readln;
end.
Hasil eksekusi :

STMIK EL RAHMA
STMIK EL RAHMA
FALSE
12345
12345
1.2345670000E+03
1234.57
1235

TIPE DATA DALAM PASCAL


Tipe Bilangan Bulat
Dalam Pascal terdapat lima macam tipe bilangan bulat yaitu shortint, integer, longint, byte dan
word. Masing-masing tipe data tersebut dibedakan oleh jangkauan nilai yang dapat ditampungnya.
Tipe Kawasan Ukuran memori
Shortint -128 .. 127 1 byte
Integer -32768 .. 32767 2 byte
Longint -2147483638 .. [Link] 4 byte
Byte 0 .. 255 1 byte
Word 0 .. 65535 2 byte
Dalam penggunaan tipe data dalam program harus diperhitungkan besar nilai data yang akan
disimpan untuk menentukan tipe data yang akan digunakan.
Tipe Boolean
Tipe boolean adalah tipe data yang nilai datanya berupa TRUE (benar) dan FALSE (salah) saja.
Fungsi tipe data ini biasanya untuk menampung hasil pengujian logika.
Tipe Char
Tipe Char adalah tipe data yang hanya dapat menampung sebuah karakter saja. Untuk menyatakan
konstanta dalam tipe char, karakter ditulis dalam tanda petik tunggal.
Contoh :
’a’  karatker a
’b’  karakter b
’3’  karakter 3
Tipe String
Tipe string adalah tipe data yang dapat menampung data berupa kumpulan karatker, angka dan
simbol lainnya. Untuk menyatakan konstanta dalam tipe string, data harus diapit dalam tanda petik
tunggal.
Contoh :
’STMIK EL RAHMA’  String STMIK EL RAHMA
’Jl. Wates Km 9’  String [Link] Km 9
Tipe Pecahan
Dalam Pascal terdapat lima buah tipe data pecahan yaitu real, single, double, extended, dan comp.
Tipe Kawasan Ukuran memori
Real ± 2.9 x 10-39 .. 1.7 x 10^38 6 byte
Single ± 1.5 x 10-45 .. 3.4 x 10^38 4 byte
Double ± 5.0 x 10-324 .. 1.7 x 10308 8 byte
Extended ± 5.0 x 10-4951 .. 1.1 x 10^4932 10 byte
Comp - 9.2 x 1018 .. 1.1 x 1018 8 byte
Konstanta bilangan pecahan dalam Pascal menggunakan tanda titik bukan koma.

OPERATOR DALAM PASCAL


Dalam Pascal terdapat beberapa operator yaitu :
Operator Aritmatika
Dalam operator aritmatika ada yang bersifat unary dan binary. Operator unary adalah operator
yang hanya membutuhkan sebuah operand saja, sedangkan operator binary adalh operator yang
membutuhkan dua buah operand.
Operator Operasi Sifat
+ Penjumlahan binary
- Pengurangan binary
* Perkalian binary
/ Pembagian binary
div Pembagian bulat binary
mod Sisa pembagian bulat binary
+ Tanda plus unary
- Tanda minus unary
Contoh program :

{
contoh program penggunaan operator aritmatika
}
uses crt; {memanggil unit crt}
var
a,b,c : integer;
d : real;

begin
clrscr;
a := 28;
b := 5;
writeln('Nila awal a = 28, b = 5');
writeln;
c := a + b;
writeln('a + b = ',c:5); {33}
c := a - b;
writeln('a - b = ',c:5); {23}
c := a * b;
writeln('a * b = ',c:5); {140}
d := a / b;
writeln('a / b = ',d:7:2); {5.60}
c := a mod b;
writeln('a mod b = ',c:5); {3}
c := a div b;
writeln('a div b = ',c:5); {5}
readln
end.
Operator Boolean
Operator boolean digunakan untuk menghubungkan dua buah operand kondisi menjadi sebuah
kondisi. Dalam Pascal terdapat empat buah operator boolean yaitu AND, OR, XOR dan NOT.
Operator Jenis Operator Sifat operasi
AND binary Akan bernilai False jika salah satu
operand bernilai False
OR binary Akan bernilai True jika salah satu
operand bernilai True
XOR binary Akan bernilai True jika hanya
salah satu operand bernilai True
NOT unary Akan bernilai True jika operand
bernilai False dan akan bernilai
False jika operand bernilai True
Contoh program :

{
contoh program penggunaan operator boolean
}
uses crt; {memanggil unit crt}
begin
clrscr;
writeln('Operand1 Operand2 AND OR XOR');
writeln('-------------------------------------');
write('FALSE FALSE');
write(' ',FALSE AND FALSE);
write(' ',FALSE OR FALSE);
writeln(' ',FALSE XOR FALSE);

write('FALSE TRUE');
write(' ',FALSE AND TRUE);
write(' ',FALSE OR TRUE);
writeln(' ',FALSE XOR TRUE);

write('TRUE FALSE');
write(' ',TRUE AND FALSE);
write(' ',TRUE OR FALSE);
writeln(' ',TRUE XOR FALSE);

write('TRUE TRUE');
write(' ',TRUE AND TRUE);
write(' ',TRUE OR TRUE);
writeln(' ',TRUE XOR TRUE);
readln;
end.

Operator Relasi
Operator relasi digunakan untuk membangdingkan dua buah operand yang hasilnya berupa benar
(True) atau salah (False). Operator relasi yang dikenal dalam Pascal adalah :
Operator Keterangan
= Sama dengan
<> Tidak sama dengan
> Lebih besar
< Lebih kecil
>= Lebih besar atau sama dengan
<= Lebih kecil atau sama dengan
Contoh program :

{
contoh program penggunaan operator boolean
}
uses crt; {memanggil unit crt}
var
x,y : integer;
begin
clrscr;
x := 12;
y := 54;
writeln('Operasi Hasil');
writeln('---------------------');
writeln(x,' = ',y,' ',x=y);
writeln(x,' <> ',y,' ',x<>y);
writeln(x,' > ',y,' ',x>y);
writeln(x,' < ',y,' ',x<y);
writeln(x,' >= ',y,' ',x>=y);
writeln(x,' <= ',y,' ',x<=y);
readln;
end.

Prioritas opertor boolean dan relasi :


Prioritas tertinggi NOT
AND
OR XOR
Prioritas terndah = < > <= >= <>

Pernyataan GotoXY
Pernyataan GotoXY berfungsi untuk menempatkan kursor pada posisi kolom X, baris Y.
Contoh program :

{
contoh program GotoXY
}
uses crt; {memanggil unit crt}

begin
clrscr;
gotoxy(5,3);write('Teks mulai kolom 5 baris 3');
gotoxy(8,5);write('Teks mulai kolom 8 baris 5');
readln;
end.
PERNYATAAN DASAR DALAM PASCAL

BLOK PERNYATAAN
Blok pernyataan merupakan sekumpulan baris program yang berada di dalam begin dan end.
Contoh :

begin
x := 10;
x := x + 1;
end;

Struktur Urut
Pada struktur ini baris program akan dikerjakan secara urut dari atas kebawah sesuai dengan
penulisannya.
Algoritmik

Pseudocode Luas_Pesegi_panjang
// Diketahui sebuah pesegi panjang yang memiliki panjang
// dan lebar

//DEKLARASI
int panjang, lebar, luas

//DESKRIPSI
{
read(panjang)
read(lebar)
luas = panjang * lebar
write(luas)
}

{
contoh program menghitung luas pesegi panjang
}
uses crt; {memanggil unit crt}
var
panjang, lebar, luas : integer;

begin
clrscr;
write('Masukkan panjang : ');
readln(panjang);
write('Masukkan lebar : ');
readln(lebar);
luas := panjang * lebar;
writeln('Luasnya : ',luas);
readln;

end.

Algoritmik

Pseudocode Isi_Tabung
// Diketahui sebuah tabung yang diketahui jari-jari
// tabung dan tinggi tabung

//DEKLARASI
int jari_jari, tinggi
float luas_lingk, isi_tabung

//DESKRIPSI
{
read(jari_jari)
read(tinggi)
luas_lingk = 2 * 3.14 * jari_jari * jari_jari
isi_tabung = luas_lingk * tinggi
write(isi_tabung)
}

{
contoh program menghitung isi tabung
}
uses crt; {memanggil unit crt}
var
jari_jari, tinggi : integer;
luas_lingk, isi_tabung : real;

begin
clrscr;
write('Masukkan jari-jari tabung : ');
readln(jari_jari);
write('Masukkan tinggi tabung : ');
readln(tinggi);
luas_lingk := 3.14 * jari_jari * jari_jari;
isi_tabung := luas_lingk * tinggi;
writeln('Isi tabung : ',isi_tabung:7:2);
readln;

end.

Pernyataan Penyeleksian Kondisi


Pernyataan if
Pernyataan if digunakan untuk mengambil keputusan berdasarkan kondisi yang diuji. Bentuk if
dalam pascal terdiri dari 3 bentuk yaitu :
1. Pernyataan if sederhana
Pada bentuk ini pernyataan if hanya memiliki satu kemungkingan pernyataan yang akan dikerjakan
jika kondisi yang diuji bernilai benar.
Bentuk pernyataan if sederhana :
if <kondisi> then
pernyataan;

<kondisi> digunakan untuk menentukan hasil pengujian, jika <kondisi> bernilai benar (true)
maka pernyataan akan dikerjakan, jika <kondisi> bernilai salah (false) maka tidak ada pernyataan
yang dikerjakan.
Algoritmik

Pseudocode Kelulusan_Siswa
// Seorang siswa dikatakan lulus jika nilainya >= 60

//DEKLARASI
int nilai_siswa

//DESKRIPSI
{
read(nilai_siswa)
if (nilai_siswa >= 60)
write(‘Siswa tersebut lulus’)
}

{
contoh program yang mengandung pernyataan if
sederhana
}

uses crt; {memanggil unit crt}


var
nilai_siswa : integer;

begin
clrscr;
write('Masukkan nilai : ');
readln(nilai_siswa);
if nilai_siswa >= 60 then
writeln('Siswa tersebut lulus');
readln;
end.

2. Pernyataan if ... then ... else


Pada bentuk ini pernyataan if memiliki dua kemungkinan pernyataan yang akan dikerjakan
berdasarkan hasil pengujian kondisi.
Bentuk pernyataan if ... then ... else
if <kondisi> then
pernyataan1;
else
pernyataan2;

<kondisi> digunakan untuk menentukan hasil pengujian, jika <kondisi> bernilai benar (true)
maka pernyataan1 akan dikerjakan, jika <kondisi> bernilai salah (false) maka pernyataan2 yang
dikerjakan.
Algoritmik

Pseudocode Kelulusan_Siswa
// Seorang siswa dikatakan lulus jika nilainya >= 60
// jika < 60 maka siswa tidak lulus

//DEKLARASI
int nilai_siswa

//DESKRIPSI
{
read(nilai_siswa)
if (nilai_siswa >= 60)
write(‘Siswa tersebut lulus’)
else
write(‘Siswa tersebut tidak lulus’)
}

{
contoh program yang mengandung pernyataan if..else
}
uses crt; {memanggil unit crt}
var
nilai_siswa : integer;

begin
clrscr;
write('Masukkan nilai : ');
readln(nilai_siswa);
if nilai_siswa >= 60 then
writeln('Siswa tersebut lulus')
else
writeln('Siswa tersebut tidak lulus');
readln;
end.

Algoritmik

Pseudocode Pembayaran_Gaji
// Akan dihitung gaji yang diterima pegawai berdasarkan jumlah hari
// kerja dan jumlah jam lembur dengan tarif tertentu

//DEKLARASI
char nama[20]
int jhr_kerja
int jjam_lembur
float upah
float uang_lembur
float trans_lembur
float gaji

//DESKRIPSI
{
read(nama)
read(jhr_kerja)
read(jjam_lembur)
upah = jhr_kerja * 30000
uang_lembur = jjam_lembur * 5000
if (jjam_lembur >= 10)
trans_lembur = 0.1 * uang_lembur
else
trans_lembur = 0
gaji = upah + uang_lembur + trans_lembur
write(upah)
write(uang_lembur)
write(trans_lembur)
write(gaji)
}

{
contoh program penghitungan pembayaran gaji
}
uses crt; {memanggil unit crt}
const
bonus = 0.1;
var
nama : string;
jhr_kerja : integer;
jjam_lembur : integer;
upah : longint;
uang_lembur : longint;
trans_lembur : real;
gaji : real;

begin
clrscr;
upah := 0;uang_lembur:=0;
write('Masukkan nama : ');
readln(nama);
write('Masukkan jml hari kerja : ');
readln(jhr_kerja);
write('Masukkan jml jam lembur : ');
readln(jjam_lembur);
upah := jhr_kerja * 30000;
uang_lembur := jjam_lembur * 5000;

if jjam_lembur > 10 then


trans_lembur := bonus * uang_lembur
else
trans_lembur := 0;

gaji := upah + uang_lembur + trans_lembur;

writeln('Jumlah upah : ',upah:9);


writeln('Jumlah uang lembur : ',uang_lembur:9);
writeln('Transpot lembur : ',trans_lembur:9:0);
writeln(' ---------- +');
writeln('Gaji yang diterima : ',gaji:9:0);
readln;

end.

3. Pernyataan nested if (if bersarang)


Pada bentuk ini pernyataan if memiliki banyak kemungkinan pernyataan dan memiliki banyak
pengujian kondisi untuk mengerjakan pernyataan.
Bentuk pernyataan if ... then ..... else ......
if <kondisi1> then
pernyataan1;
else if <kondisi2> then
pernyataan2;
else if <kondisiM> then
pernyataanM;
else
pernyataanN;

<kondisi1> diuji, jika hasil pengujian bernilai benar maka pernyataan1 dikerjakan, jika hasil
pengujian <kondisi1> bernilai salah maka akan diuji <kondisi2>, jika hasil pengujian bernilai
benar maka pernyataan2 akan dikerjakan, jika hasil pengujian <kondisi2> bernilai salah maka
<kondisiM> akan diuji, jika hasil pengujian bernilai benar maka <pernyataanM> akan dikerjakan,
jika hasil pengujian <kondisiM> bernilai salah maka akan mengerjakan <pernyataanN> yang
merupakan alternatif terakhir jika semua kondisi yang diuji tidak terpenuhi.
Algoritmik
Pseudocode Konfersi_Nilai
// Diketahui nilai angka seorang siswa yang akan
// dikonfersikan ke nilai huruf

//DEKLARASI
char nama[20]
int nilai_angka
char huruf

//DESKRIPSI
{
read(nama)
read(nilai_angka)
if (nilai_angka >= 80)
huruf = ‘A’
else if (nilai_angka >= 70)
huruf = ‘B’
else if (nilai_angka >= 60)
huruf = ‘C’
else if (nilai_angka >= 50)
huruf = ‘D’
else
huruf = ‘E’
write(nama)
write(huruf)
}

{
contoh program yang mengandung pernyataan nested if
}
uses crt; {memanggil unit crt}
var
nama : string;
nilai_angka : integer;
huruf : char;

begin
clrscr;
write('Masukkan nama : ');
readln(nama);
write('Masukkan nilai angka : ');
readln(nilai_angka);

if nilai_angka >= 80 then


huruf := 'A'
else if nilai_angka >= 70 then
huruf := 'B'
else if nilai_angka >= 60 then
huruf := 'C'
else if nilai_angka >= 50 then
huruf := 'D'
else
huruf := 'E';

writeln;
writeln;
writeln('Nama : ',nama);
writeln('Nilainya : ',huruf);
readln;
end.
4. Pernyataan case ... of
Pernyataan case digunakan untuk menjalankan salah satu pernyataan dari beberapa kemungkinan
pilihan. Permilaihan pada pernyataan case berdasarkan nilai dari ungkapan dan nilai dari
penyeleksi.
Bentuk pernyataan case :

case (ungkapan) of
begin
case ungkapan1 :
pernyataan1;
case ungkapan2 :
pernyataan2;
end;

(ungkapan)dalam pernyataan case dapat berupa konstanta atau variabel, sedangkan ungkapan1,
ungkapan2, dapat berupa konstanta bertipe int atau char. Proses pencocokan (ungkapan) dengan
ungkapan1, ungkapan2 dilakukan berurutan mulai ungkapan1, ungkapan2 dan seterusnya. Jika
cocok maka pernyataan yang mengikuti case akan dikerjakan. Eksekusi akan berakhir jika
ditemukan pernyataan break. Pernyataan default akan dikerjakan jika ungkapan dalam case tidak
ada yang cocok dengan ungkapam dalam switch.

{
contoh penggunaan pernyataan case..of
}
uses crt; {memanggil unit crt}
var
pilih : char;
rusuk, isi_kubus : integer;
alas, tinggi : integer;
luas_segi3 : real;

begin
clrscr;
writeln('Menu Pilihan');
writeln('============');
writeln('1. Isi kubus');
writeln('2. Luas segitiga');
writeln('3. Selesai');
write('Pilihan anda [1..3] : ');
readln(pilih);
case pilih of
'1' :
Begin
write('Panjang rusuk : ');
readln(rusuk);
isi_kubus := rusuk * rusuk * rusuk;
writeln('Isi kubus : ',isi_kubus);
end;
'2' :
begin
write('Panjang alas segitiga : ');
readln(alas);
write('Tinggi segitiga : ');
readln(tinggi);
luas_segi3 := 0.5 * alas * tinggi;
writeln('Luas segitiga : ',luas_segi3:7:2);
end;
'3' :
begin
writeln('Terima kasih...');
readln;
end;
end;
readln;

end.

Pernyataan Pengulangan
1. Pernyataan for
Pernyataan for berfungsi untuk mengulang satu atau beberapa pernyataan sebanyak syarat yang
diberikan.
Bentuk pernyataan for :
for(ungkakapan1;ungkapan2;ungkapan3)
pernyataan;
Keterangan :
 ungkakapan1 merupakan pernyataan inisialisasi awal dari perulangan for
 ungkakapan2 merupakan kondisi yang menentukan pengulangan terhadap pernyataan
atau tidak
 ungkakapan2 digunakan sebagai pengatur variabel yang digunakan dalam ungkakapan1
Algoritmik

Pseudocode Cetak_Angka_For
// Akan dicetak angka 1 sampai 10 dengan perulangan for

//DEKLARASI
int i

//DESKRIPSI
{
for(i=1; i<=10; i++)
{
write(i)
}
}

{
contoh program perulangan for
}
uses crt; {memanggil unit crt}
var
i : integer;
begin
clrscr;
for i := 1 to 10 do
writeln('Isi i = ',i);
readln;

end.

Algoritmik
Pseudocode Cetak_bilangan_genap_for
// Akan dicetak bilangan genap dengan batas akhir diinputkan

//DEKLARASI
int batas_akhir

//DESKRIPSI
{
read(batas_akhir)
for(i=1; i<=10; i++)
{
if( i%2 = 0)
write(i)
}
}

Hasil eksekusi :

Jumlah perulangan : 30
2 4 6 8 10 12 14 16 18 20 22 24 26 28 30

Pascal

{
Mencetak bilangan genap dengan perulangan for
}
uses crt; {memanggil unit crt}
var
i : integer;
batas_akhir : integer;
begin
clrscr;
write('Jumlah perulangan : ');
readln(batas_akhir);
for i := 1 to batas_akhir do
if (i mod 2 = 0) then
write(i,' ');
readln;

end.

for bersarang (Nested for)


for bersarang merupakan pernyataan for yang berada dalam pernyataan for (for dalam for). Sebagai
contoh misalkan akan dibentuk segitiga yang tersusun dari karakter * dengan for bersarang.
*
**
***
****
*****
Algoritmik

Pseudocode Segitiga_Bintang
// Dicetak karakter * yang membentuk bangun segitiga

//DEKLARASI
int tinggi

//DESKRIPSI
{
read(tinggi)
for(i=1;i<=tinggi;i++)
for(j=1;j<=i;j++)
write(‘*’)
endl
}

Pascal

{
Contoh for bersarang
}
uses crt; {memanggil unit crt}
var
i,j,tinggi : integer;
begin
clrscr;
write('Tinggi segitiga : ');
readln(tinggi);
for i := 1 to tinggi do
begin
for j := 1 to i do
write('* ');

writeln;
end;
readln;

end.

2. Pernyataan while
Pernyataan while berfungsi untuk mengulang satu atau beberapa pernyataan sebanyak syarat yang
diberikan dengan cara syarat diuji terlebih dahulu baru mengerjakan pernyataan.
Bentuk pernyataan while :

while (ungkapan)
pernyataan;

pernyataan yang mengikuti while akan dikerjakan jika ungkapan yang diuji bernilai benar (sama
dengan 1). Pada pernyataan while, ungkapan akan diuji terlebih dahulu sebelelum pernyataan
dikerjakan, sehingga ada kemungkinan bagian pernyataan pada while tidak akan dikerjakan sama
sekali jika ungkapan yang diuji bernilai salah (sama dengan nol).
Algoritmik

Pseudocode Cetak_Angka_While
// Akan dicetak angka 1 sampai 10 dengan perulangan while
//DEKLARASI
int i

//DESKRIPSI
{
i = 1
while(i<=10)
{
write(i)
i++
}
}

Pascal

{
Contoh program menggunakan while
}

uses crt; {memanggil unit crt}


var
i : integer;
begin
clrscr;
i := 1;
while (i <= 10) do
begin
writeln('Isi i = ',i);
i := i + 1;
end;
readln;
end.

Algoritmik

Pseudocode Cetak_bilangan_genap_while
// Akan dicetak bilangan genap dengan batas akhir diinputkan

//DEKLARASI
int batas_akhir

//DESKRIPSI
{
read(batas_akhir)
i = 1
for(i; i<=10; i++)
{
if( i%2 = 0)
write(i)
}
}

Pascal

{
Mencetak bilangan genap menggunakan while
}

uses crt; {memanggil unit crt}


var
i,batas_akhir : integer;
begin
clrscr;
i := 1;
write('Jumlah perulangan : ');
readln(batas_akhir);
while (i <= batas_akhir) do
begin
if (i mod 2 = 0) then
write(i,' ');
i := i + 1;
end;
readln;
end.

3. Pernyataan do...while
Pernyataan do...while berfungsi untuk mengulang satu atau beberapa pernyataan sebanyak syarat
yang diberikan dengan cara syarat diuji setelah pernyataan dikerjakan.
Bentuk pernyataan do...while :

do
pernyataan;
while (ungkapan);

pernyataan yang mengikuti do...while akan dikerjakan terlebih dahulu, setelah itu baru diuji
ungkapan dalam while, jika ungkapan yang diuji bernilai benar (sama dengan 1) maka pernyataan
akan dikerjakan kembali, begitu seterusnya sampai ungkapan yang diuji bernilai salah (sama
dengan nol).
Algoritmik

Pseudocode Cetak_Angka_do_While
// Akan dicetak angka 1 sampai 10 dengan perulangan do…while

//DEKLARASI
int i

//DESKRIPSI
{
i = 1
do
{
write(i)
i++
} while(i<=10)
}

Pascal

{
Contoh program perulangan dengan repeat...until
}
uses crt; {memanggil unit crt}
var
i : integer;
begin
clrscr;
i := 1;
repeat
writeln('Isi i = ',i);
i := i + 1;
until(i > 10);
readln;

end.

Algoritmik

Pseudocode Cetak_bilangan_genap_do_while
// Akan dicetak bilangan genap dengan batas akhir
// diinputkan

//DEKLARASI
int batas_akhir

//DESKRIPSI
{
read(batas_akhir)
i = 1
do
{
if( i%2 = 0)
write(i)
} while ( i <= batas_akhir)
}

Pascal

{
Mencetak bilangan genap menggunakan repeat...until
}
uses crt; {memanggil unit crt}
var
i,batas_akhir : integer;
begin
clrscr;
i := 1;
write('Jumlah perulangan : ');
readln(batas_akhir);
repeat
if (i mod 2 = 0) then
write(i,' ');
i := i + 1;
until(i > batas_akhir);
readln;

end.
Latihan Pengulangan :
1. Buatlah pseudocode dan program untuk mencari rata-rata dari sejumlah angka yang diinputkan
dengan menggunakan pengulangan.
2. Buatlah pseudocode dan program untuk mencari angka terbesar dan angka terkecil dari
sejumlah angka yang diinputkan dengan menggunakan pengulangan.
3. Buatlah pseudocode dan program untuk mencetak angka 1 sampai 1000 dengan menggunakan
perulangan. Angka dicetak per 10 kolom dan 10 baris, pada baris pertama jika angka sudah
dicetak 10 kolom maka dilakukan pergantian baris, jika sudah 10 baris maka ditampilkan pesan
“Tekan enter untuk melanjutkan”. Begitu seterusnya sampai angka ke 1000.
1 2 3 4 5 6 7 8 9 10
11 12 13 14 15 16 17 18 19 20
21 22 23 24 25 26 27 28 29 30
31 32 33 34 35 36 37 38 39 40
41 42 43 44 45 46 47 48 49 50
51 52 53 54 55 56 57 58 59 60
61 62 63 64 65 66 67 68 69 70
71 72 73 74 75 76 77 78 79 80
81 82 83 84 85 86 87 88 89 90
91 92 93 94 95 96 97 98 99 100
Tekan enter untuk melanjutkan...
4. Buatlah pseudocode dan program untuk menghitung total pembayaran pembelian. Input
berupa nama pembeli, dan data barang dengan jumlah barang yang dibeli berupa input nama
barang, jumlah dan harga barang. Barang yang dibeli jumlahnya bisa banyak tergantung
pembelian dari konsumen.

Anda mungkin juga menyukai