0% menganggap dokumen ini bermanfaat (0 suara)
222 tayangan

Modul Pascal Dan Algoritma

Ringkasan dokumen tersebut adalah: 1) Dokumen tersebut membahas tentang algoritma dan flowchart dalam pemrograman komputer. 2) Terdapat penjelasan tentang tujuan, sasaran, program, flowchart, algoritma, dan tahapan pemrograman. 3) Juga dijelaskan beberapa konsep dasar seperti variable, operator, dan statement dalam pemrograman Pascal.

Diunggah oleh

Ratih D Shima
Hak Cipta
© © All Rights Reserved
Format Tersedia
Unduh sebagai DOC, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
222 tayangan

Modul Pascal Dan Algoritma

Ringkasan dokumen tersebut adalah: 1) Dokumen tersebut membahas tentang algoritma dan flowchart dalam pemrograman komputer. 2) Terdapat penjelasan tentang tujuan, sasaran, program, flowchart, algoritma, dan tahapan pemrograman. 3) Juga dijelaskan beberapa konsep dasar seperti variable, operator, dan statement dalam pemrograman Pascal.

Diunggah oleh

Ratih D Shima
Hak Cipta
© © All Rights Reserved
Format Tersedia
Unduh sebagai DOC, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 17

ALGORITMA & FLOWCHART

Tujuan : Untuk mengarahkan, mengendalikan, serta meningkatkan cara berfikir logis dalam
rangka mempersiapkan diri pelaksanaan penyusunan prog.
Sasaran : Diharapkan para siswa dapat menyumbangkan daya pikir logis, sistematis dan
terstruktur dengan lebih baik.
Program : Sekumpulan instruksi atau perintah yang disusun secara sistematis, logis dan
terstruktur untuk mencapai tujuan tertentu.
Flowchart : Menggambarkan alur logikanya menggunakan simbol simbol tertentu sesuai dengan
jenis perintahnya.
Algoritma : Menggambarkan alur logikanya menggunakan notasi yang bersesuaian dengan
penulisan suatu bahasa tertentu atau bahasa pemrograman.

Algoritma dan Pemrograman


Tahapan pemrograman / Solve Program
1. Mengerti / menganalisa masalah / pemecahan masalah.
2. Merancang logika pemecahan masalah.
Alat Bantu : Program, Flowchart, ( Teknik Gambar), Algoritma ( Teknik Penulisan ),
3. Mengetik Source Program ( Pascal )
4. Kompilasi Source Program Binary
5. Testing Program
6. Dokumentasi

Algoritma
Dalam penyusunan algoritma banyak digunakan istilah istilah dalam penulisan instuksi / perintah
perintahnya, diantaranya :

Variable ( Pengenal / Identifier )


Yaitu suatu nama sebagai lokasi untuk menyimpan data. Variable ini sering juga disebut sebagai identifier
( pengenal ).
Sebelum menggunakan variable tersebut, kita harus mendefinisikannya terlebih dahulu. Maksudnya
variable tersebut digunakan untuk menyimpan tipe data apa karena mengangkat masalah proses yang akan
dilakukan terhadap variable yang bersangkutan. Penulisan / pembuatan variable harus berdasarkan pada
kriteria penyusunan suatu pemrograman, jika kriteria tersebut tidak dilakukan maka program yang kita
buat tidak akan jalan (disalahkan oleh komputer ).

Kriteria Pembuatan Variable :


Suatu variable dibuat kriterianya harus memenuhi syarat umum sebagai berikut :
1. Panjang karakter (huruf ) + 10 karakter.
2. Boleh gabungan string dan numerik (Alpha Numeric)
3. Boleh menggunakan underscore (garis bawah)
4. Diawali oleh huruf
5. Tidak boleh ada spasi (Blanks)
6. Tidak boleh ada symbol khusus, seperti tanda baca dan operasi aritmatika.
7. Tidak boleh diawali oleh angka (Numerik)
8. Tidak menggunakan reserve word
9. Tidak boleh ada variable yg sm
10. Case sensitif

Contoh variable variable yang benar ( Valid / sah ) dan salah ( Unvalid / tidak sah )
1. Harga-Barang 5. 2Alamat 10. Nilai1
2. Harga_Barang 6. Rata rata 11. Nilai - 2
3. NamaBenda 7. Persen % 12. Nama
4. Alamat 1 8. Jumlah 13. Hasil A * B
9. Lotus 123 14. 123 Lotus

Mendefinisikan / Mendeklarasikan Variabel


Cara mendefinisikan suatu variabel merupakan hal yang umum dalam penggunaan suatu program, dalam
pascal ini, cara mendefnisikannya sebagai berikut :

Buku Panduan Pascal (Created By Jhy) Halaman 23


Nama Variabel : Tipe Data
Dimana tipe dan data dalam Pascal ini adalah sebagai berikut :

Batas Nilai Tipe Integer (No Decimal Places)


Tipe Batas Nilai Format
Byte 0..255 signed 8 16 bit
Word 0..65535 signed 16 bit
Shortint -128..127 Signed 8 it
Integer -32768.. 32767 Signed 16 bit
Longint -2147483648.. 2147483647 Signed 32it

Operator Untuk Bentuk Integer


Operator Keterangan
+ Penjumlahan
- Pengurangan
* Perkalian
Div Pembagian
Mod Modul (sisa pembagian)

Batas Nilai Tipe Real (With Decimal Places)


Tipe Batas Nilai Digit Signifikan Ukuran
Real 2.9 E-35 .. 1.7 E38 11 12 (6 byte)
Single 1.5 E-45 .. 3.4 E +38 7 8 ( 4 byte )
Double 5.0 E-324 .. 1.7 +E308 15 16 (8 byte)
Extended -3.4 E-4932 .. 1.7 E+4932 19 20 (10 byte)
Comp -2^63 .. 2^63-1 19 20 (8 byte)

Operator Untuk Tipe Real


Operator Keterangan
+ Penjumlahan
- Pengurangan
* Perkalian
/ Pembagian

For Match Calculation

Input Result Input Result


* Multplication Integer Integer
Integer Real Real Real
Real Real Integer, Real
Integer, Real Real
Real DW (Quatient)
/ Division Integer Integer
Integer Real Mod (Remainder)
Real Real Integer Integer
Integer, Real
Real
+ Addition / -
Substraction
Operator
Yaitu sekumpulan simbol yang digunakan untuk melakukan operasi-operasi data yang kita inginkan.
Dengan operator ini kita dapat menentukan operasi apa yang harus dilakukan pada type - data yang akan
diproses.
Operator dapat dibagi menjadi operator Aritmatika, String, Relasi dan Operator logika

Buku Panduan Pascal (Created By Jhy) Halaman 24


Operator Aritmatika
Hanya dapat digunakan pada operasi matematika yang berkaitan dengan angka.
Adapun simbol-simbolnya sebagai berikut :

No Operator Keterangan
1. + Penjumlahan
2. - Pengurangan
3. * Perkalian
4. / Pembagian
5. **,^ Pemangkatan
6. Mod Bagi sisa
7. ( ) Pengelompokan

Operator String
Yaitu operator yang hanya digunakan untuk operasi string simbolnya yaitu : tanda jumlah ( + ) maksudnya
untuk menggabungkan 2 buah string atau lebih.
Contoh :
Diketahui : S := SMA;
S1 : = NEGERI;
S2 := 2;
a) S + S1
Hasil : SMA NEGERI
b) S2 + S
Hasil : 2 SMA S + S1 + S2 Hasil : Type Mismatch, karena tipe yang berbeda

Buku Panduan Pascal (Created By Jhy) Halaman 25


STATEMEN-STATEMEN

Reserved Word
Reserved Word adalah kata-kata baku yang digunakan dalam program dan sudah terintergrated dalam pascal dan juga
mempunyai bentuk serta kegunaan tertentu yang telah didefinisikan oleh Pascal.
Reserved Word tidak boleh didefinisikan kembali oleh pemakai, sehingga tidak dapat digunakan sebagai pengenal
(Identifier). Dalam bahasa pemrograman Pascal,
beberapa Reserved Word dalam Pascal anatra lain:

AND DOWNTO IN OF STRING


ASM ELSE INHERITED OR THEN
ARRAY END INLINE PACKED TO
BEGIN EXPORTS INTERFACE PROCEDURE TYPE
CASE FILE LABEL PROGRAM UNIT
CONST FOR LIBRARY RECORD UNTIL
CONSTRUCTOR FUNCTION MOD REPEAT USES
DESTRUCTOR GOTO NIL SET VAR
DIV IF NOT SHL WHILE
DO IMPLEMENTATION OBJECT SHR WITH

Selain dari Reserved Word di atas, Turbo Pascal masih memiliki tambahan Reserved Word berikut:
ABSOLUTE ASSEMBLER () FAR FORWARD INDEX

BEBERAPA STATEMEN TURBO PASCAL


Statemen adalah perintah untuk pengerjaan program pascal. Statemen terletak di bagian deklarasi statemen dengan
diawali oleh kata cadangan BEGIN dan diakhiri dengan kata cadangan END. Akhir dari setiap statemen diakhiri dengan
titik koma [;]. Statemen statemen dalam bahasa Pascal terdiri dari pernyataan yang berupa fungsi dan prosedur yang
telah disediakan sebagai perintah standar Turbo Pascal.
1. Statemen-statemen yang digunakan untuk input/output.
# Read/Readln [prosedur].
Perintah ini digunakan untuk memasukkan [input] data lewat keyboard ke dalam suatu variabel.
Sintaks: Read/Readln(x); (ingat, selalu diakhiri dengan titik koma [;])
Keterangan : x = variabel.
Read = pada statemen ini posisi kursor tidak pindah ke baris selanjutnya.
Readln = pada statemen ini posisi kursor akan pindah ke baris selanjutnya setelah di input.
# ReadKey [fungsi].
Untuk pembacaan sebuah karakter dari keyboard. Tipe data yang dihasilkan adalah char.
Sintaks: ReadKey;
# Write/Writeln [prosedur].
Digunakan untuk menampilkan isi dari suatu nilai variable di layar.
Sintaks: Write/Writeln(x);
Keterangan : x = variabel.
Write/Writeln= statement ini digunakan untuk mencetak variable ke dalam monitor
Contoh :
Program input;
Uses Crt;
Var nm : String;
npm : String;

Begin
Clrscr;
Writeln ('masukkan nama dan NPM ');
Writeln ('------------------------------');
Write ('nama anda : ');
Readln (nm);
Writeln ('NPM anda : ');
Readln (npm);
End.
Bila dijalankan hasilnya adalah:
masukkan nama dan NPM
------------------------------
nama anda : ( di input )
NPM anda : ( di input )

2. Statemen-statemen yang digunakan untuk pengaturan letak layar.


# ClrScr [prosedur].

Buku Panduan Pascal (Created By Jhy) Halaman 26


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 menggeser 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 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 !

3. Statemen yang digunakan untuk memanipulasi string.


# 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].

Buku Panduan Pascal (Created By Jhy) Halaman 27


Memberikan nilai panjang dari suatu string (jumlah karakter dalam string).
Sintaks: Length (S);
Keterangan : S = string
Length(S) menghasilkan nilai integer.
# Pos [fungsi].
Mencari posisi sebuah bagian string (substring) didalam sebuah string.
Sintaks: Pos (Substr,S); {menghasilkan nilai Byte}
Keterangan : Substr=substring yg akan dicari posisinya di dalam sebuah string S.
Bila bernilai 0 berarti nilai string yang dicari tidak ada.
# Str [prosedur].
Merubah nilai numerik ke dalam nilai string.
Sintaks: Str (N,S);
Keterangan :
N = data tipe integer,
S = data tipe string.
# Val [prosedur].
Merubah nilai string ke dalam nilai numerik.
Sintaks: Val (S,N,P);
Keterangan :
S = nilai string,
N = nilai real,
P = posisi salah.
Nilai string harus berisi angka, plus atau minus, bila tidak berarti kesalahan dan letak kesalahannya
ditunjukkan oleh variabel posisi salah. Jika benar, maka nilai variabel tsb = 0 (nol).
# UpCase [fungsi].
Memberikan huruf kapital dari argumen.
Sintaks: UpCase (S);
Keterangan :
S = variabel bertipe karakter.
Contoh :
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));
End.

Hasilnya adalah :
DindaBayiSehatku
Dinda & Bayi Sehatku
Dinda Sehatku
Dinda
Panjangnya string S : 16
Posisi "Sehat" pada nilai S : 7

4. Statemen-statemen untuk perhitungan aritmatik.


# Abs [fungsi].
Memberikan nilai mutlak dari suatu argumen.
Sintaks: ABS(x);
# ArcTan[fungsi].
Memberikan nilai dari fungsi arctangent dari perhitungan goniometri.

Buku Panduan Pascal (Created By Jhy) Halaman 28


Sintaks: ArcTan (x);
dimana x dapat bertipe real atau integer dan akan menghasilkan nilai bertipe real.
# Cos [fungsi].
Memberikan nilai dari fungsi Cosinus.
Sintaks: Cos (x);
# Exp [fungsi].
Menghitung nilai pangkat dari bilangan e (bilangan alam), yaitu sebesar x.
Sintaks: Exp (x);
x dapat bertipe real atau integer dan akan menghasilkan nilai bertipe real.
# Frac [fungsi].
Untuk mendapatkan nilai pecahan dari suatu bilangan.
Sintaks: Frac (x);
Tipe dari x sama seperti yang diatas.
# Int [fungsi].
Memberikan nilai integer (bilangan bulat) dari suatu variabel dengan membuang bilangan di belakang koma.
Sintaks: Int (X);
# Ln [fungsi].
Digunakan untuk menghitung nilai logaritma alam (natural logarithm) dari nilai x.
Sintaks: Ln (x);
# Sin [fungsi].
Memberikan nilai dari fungsi Sinus.
Sintaks: Sin (x);
# Sqr [fungsi].
Digunakan untuk menghitung nilai pangkat kuadrat dari suatu bilangan.
Sintaks: Sqr (x);
Tipe dari x bisa berupa real maupun integer. Dan hasilnya akan sama dengan tipe dari x.
# Sqrt (fungsi).
Digunakan untuk menghitung nilai akar dari suatu bilangan.
Sintaks: Sqrt (x);
Contoh :
Program Aritmatik;
Uses Crt;
Var x : Real;
Begin
Clrscr;
Write('Masukkan nilai dari X = ');
Readln (x);
If x <0 Then x:=Abs (x);
Writeln('Nilai X = ',x:5:2); (cat: angka 5 utk membatasi jmlh karakter angka, sedangkan angka 2 untuk
membatasi jmlh angka di belakang koma)
Writeln ('Nilai eksponentialnya = ',EXP(x):9:3);
Writeln ('Nilai logaritma alamnya = ',LN(x):9:3);
Writeln ('Nilai integernya = ',INT(x):5:2);
Writeln ('Nilai fraksionalnya = ',FRAC(x):5:2);
Writeln ('Nilai X dipangkatkan = ',SQR(x):9:3);
Writeln ('Nilai X diakarkan = ',SQRT(x):9:3);
Write('Nilai X jika dimasukkan dalam ');
Writeln('fungsi Sin,Cos,Tangen: ');
Writeln('- Sinus = ',Sin(x):9:3);
Writeln('- Cosinus = ',Cos(x):9:3);
Writeln('- Tangen = ',ArcTan(x):9:3);
End.

Hasilnya :
masukkan nilai dari X = -2.5
Nilai X = 2.50
Nilai eksponensialnya = 12,182
Nilai logarima alamnya = 0,196
Nilai integernya = 2.00
Nilai fraksionalnya = 0.50
Nilai X dipangkatkan = 6.250
Nilai X diakarkan = 1.581
Nilai X jika dimasukkan dalam fungsi Sin,Cos,Tangen:
- Sinus = 0.598
- Cosinus = -0.801
- Tangen = 1.190

Buku Panduan Pascal (Created By Jhy) Halaman 29


5. Statemen-statemen untuk transfer nilai dari suatu variabel.
# Chr [fungsi].
Merubah nilai dari byte ke bentuk karakter yang sesuai dengan kode ASCII (American Standard Code).
Sintaks: Chr (x);
Keterangan : x bertipe byte
contoh : Writeln (Chr (61));
hasilnya : a
# Ord [fungsi].
Merubah nilai suatu variabel dari bentuk karakter ke bentuk longint. (kebalikan dari chr).
Sintaks: Ord (x);
Keteranagn : x bertipe char
contoh : Writeln(Ord ('B'));
hasilnya : 66
# Round [fungsi].
Membulatkan data tipe real ke data tipe longint.
Sintaks: Round (x);
Keterangan : Jika nilai pecahan < 0,5 maka dibulatkan kebawah.
Jika nilai pecahan >= 0,5 maka dibulatkan keatas.
contoh : Writeln('10/3 dibulatkan = ',Round(10/3));
hasilnya : 10/3 dibulatkan = 3
# TRUNC [fungsi].
Membulatkan kebawah data tipe real ke data tipe longint.
Sintaks: Trunc (x);
contoh :
Writeln('20/3 dibulatkan kebawah = ',Trunc (20/3));
hasilnya : 20/3 dibulatkan kebawah = 6

6. Statemen-statemen untuk memanipulasi data.


# Pred [fungsi].
Memberikan nilai sebelum nilai argumen dalam urutannya dalam ASCII.
Sintaks: Pred (x);
# Succ [fungsi].
Memberikan nilai sesudah nilai argumen dalam urutannya dalam ASCII.
Sintaks: Succ (x);
# Inc[fungsi].
Menambah (increments) nilai suatu variabel.
Sintaks: Inc (x,i); {i >= 1}
# Dec [fungsi].
Mengurangi (decrements) nilai suatu variabel.
Sintaks: DEC(x,i); {i >=1}

Contoh :
Progam Man_Data;
Uses Crt;
Type
hari = (hr0,hr1,hr2,hr3,hr4,hr5,hr6,hr7)
Var
urutanhr : hari;
Const
namahr : Array [hr1..hr7] of String [6]= ('Senin','Selasa','Rabu','Kamis', 'Jumat','Sabtu','Minggu' );

Begin
Writeln('Daftar Nama Hari);
urutanhr := hr0;
While Urutanhr < hr7 DO
Begin
urutanhr := Succ(urutanhr);
Write('hari ke ',Ord(Urutanhr):2,' adalah ');
Writeln(namahr[urutanhr]);
End;
End.

hasilnya adalah :
Daftar Nama Hari
hari ke 1 adalah Senin
hari ke 2 adalah Selasa

Buku Panduan Pascal (Created By Jhy) Halaman 30


hari ke 3 adalah Rabu
hari ke 4 adalah Kamis
hari ke 5 adalah Jumat
hari ke 6 adalah Sabtu
hari ke 7 adalah Minggu

7. Statemen-statemen tambahan (warna,suara dan window).


# TextColor [prosedur].
Untuk mengatur warna dari karakter-karakter di layar.
Sintaks: TextColor (color : Byte);
Catatan : untuk pilihan warna lihat pada buku Turbo Pascal yang anda miliki.
Daftar TextColor :
(2) Hijau Muda (3) Hijau pupus (4) Merah
(5) Ungu Tua (6) Kuning (7) Putih
(8) Biru Tua (9) Biru Cerah (10) Hijau Muda
(12) Merah Muda (13) Ungu Cerah (14) Kuning Muda
(15) Ungu Pupus (16) Hitam

Daftar TextColor dengan Blink :


(17) Biru Tua (18) Hijau Muda (19) Hijau Pupus
(20) Merah (21) Ungu Tua
# TextBackGround [prosedur].
Untuk mengatur warna latar belakang dari karakter-karakter di layar.
Sintaks: TextBackGround (Color : Byte);
# Window [prosedur].
Untuk membuat suatu jendela (window) yang terletak pada layar.
Sintaks: Window (x1,x2,y1,y2 : Byte);
x1,x2 = kordinat kiri atas dengan nilai maksimal sesuai dengan mode layar.
y1,y2 = kordinat kanan bawah dengan nilai maksimal sesuai dengan mode layar.

# TextMode [prosedur].
Untuk mengatur lebar layar, 80 kolom atau 40 kolom.
Sintaks: TextMode(Mode: Byte);
Default = C80
# Sound [prosedur].
Untuk mengaktifkan suara (beep) pada internal speaker.
Sintaks: Sound (Hz : word);
Untuk mengnonaktifkannya, gunakan statemen NoSound.

Contoh :
Program Layar2;
Uses Crt;
Begin
ClrScr;
Window (5,5,20,75);
TextBackGround(Red); {anda juga bisa menggunakan angka (4)}
TextColor(Yellow);
Sound (220);
GotoXY(10,7);
Writeln('I Love Dinda');
GotoXY(11,7);
Writeln('Bayi Sehatku');
NoSound;
End.

SOAL LATIHAN
1. Mencari nilai Sinus, Cosinus, dan Tangen dengan sudut diinput.
2. Mencari akar dan kuadrat dari suatu nilai (nilai diinput).
3. Mencari nilai bulat dan pecahan dari suatu nilai yang dimasukkan melalui keyboard (diinput). Nilai pecahan
tersebut dibulatkan sampai 3 angka dibelakang koma (,).
4. Tampilkan nama dan NPM anda di dalam window, dan terletak pada tengah-tengah layar.
5. Tampilkan tulisan 'I Love Dinda di dalam window pada pojok kanan atas dengan ukuran window sama dengan
tulisan tersebut.
6. Buatlah program untuk menggabungkan 2 buah kata yang diinput. Setiap kata yang diinput harus berada didalam
window yang dan hasilnya berada pada window yang berbeda pula.
7. Buatlah program untuk menampilkan window secara acak dengan warna yang berbeda.

Buku Panduan Pascal (Created By Jhy) Halaman 31


DietMP3.url

PROSES PERCABANGAN DAN PROSES LOOPING


1. Memberikan penjelasan dan contoh mengenai penyeleksian kondisi dengan :
Statement If - Then
Statement If Then - Else
Statement If tersarang (Nested IF)
Statement Case - Of
Statement Case Of - Else
2. Memberikan penjelasan dan contoh mengenai perulangan dengan Statement Repeat-Until termasuk di
dalamnya penjelasan mengenai Repeat Until tersarang .

PERCABANGAN IF - THEN
Bentuk struktur If Then adalah sebagai berikut :
If Kondisi Then
Statement
Ungkapan adalah kondisi yang diseleksi oleh statement If. Bila kondisi yang diseleksi terpenuhi, maka
statement yang mengikuti Then akan diproses, sebaliknya bila kondisi tidak terpenuhi, maka yang akan
diproses statement berikutnya.
Misalnya :
If Pilihan = 2 Then
Begin{ jika kondisi terpenuhi, Yaitu jika pilihan = 2 }
......
......
End
Else{ jika kondisi tidak terpenuhi, yaitu jika pilhan
tidak sama dengan 2}
Begin
.......
.......
End;

Contoh Program :
Uses Crt;
Var
Nilai : Real;
Begin
Write ('Jumlah Nilai :');
Readln (nilai); { Pemasukan data }
If nilai > 60 Then {seleksi kondisi variabel nilai}
Writeln('Lulus') { Dilaksanakan jika nilai lebih besar dari 60 }
Else
Writeln('Tidak lulus'); { Dilaksanakan jika variabel nilai lebih kecil dari 60 }
End.
Hasil :
Jika kita Memasukan 40 pada varibel nilai, Maka program diatas akan mencetak Tidak lulus.

Buku Panduan Pascal (Created By Jhy) Halaman 32


IF TERSARANG (NESTED IF)
Struktur If tersarang merupakan bentuk dari suatu statement If berada di dalam lingkungan statemen If
yang lainya. Bentuk statement If tersarang sebagai berikut :

If Kondisi-1 Then Statement-1 Else If Kondisi-2 Then Statement-2 If Kondisi.. Then Statement . Else
Statement-Terakhir

CASE - OF
Struktur Case Of mempunyai suatu ungkapan logika yang disebut dengan selector dan sejumlah statemen
yang diawali dengan suatu label permasalahan (case label) yang mempunyai tipe sama dengan selector.
Statement yang mempunyai case label yang bernilai sama dengan case label yang bernilai sama dengan nilai
selector akan diproses sedang statemen yang lainya tidak.

Bentuk struktur dari Case - Of:


Case Variabel Kondisi Of
Case Label 1; Statement 1;
Case Label 2; Statement 2;
Case Label 3; Statement 3;
Case Label 4; Statement 4;
........
........
Case Label n ; Statement n ;
End ; { end dari case }

Daftar Case label dapat berupa konstanta, range dari konstanta yang bukan bertipe real.
Contoh program ;
Program nilai;
Var
nil : Char ;
Begin
Write ('Nilai Numerik yang didapat :');
Readln (nil);
Case nil Of
'A': Writeln ('Sangat Baik);
'B': Writeln('Baik);
'C': Writeln('Cukup');
'D': Writeln('Kurang');
'E': Writeln('Sangat Kurang');
End;
End.

Hasil :
Nilai Numerik yang didapat : B Input
Baik

BENTUK BENTUK PERULANGAN


Dalam hampir setiap program yang kompleks mutlak memerlukan suatu perulangan dan percabangan.
Tujuan perulangan disini adalah untuk mengulang statement atau blok statement berulang kali sesuai
sejumlah yang ditentukan pemakai. Dalam materi ini akan memberikan gambaran konsep dasar dari
pengertian diatas.

1. Perulangan For.
Perulangan dengan statemen For digunakan untuk mengulang statemen atau suatu blok statemen
berulang kali. Perulangan dengan statemen For dapat berupa perunlangan positif dan perulangan
negatif.
a. Perulangan For positif

Buku Panduan Pascal (Created By Jhy) Halaman 33


contoh :
perulangan positif untuk satu statement :
Uses Crt;
Var
i : Integer;
Begin
For i := 1 To 5 Do Writeln ('I Love TIK);
END.
Maka bila program diatas dicompile
hasilnya :
I Love TIK
I Love TIK
I Love TIK
I Love TIK
I Love TIK

Penjelasan :
Berati statemen I Love Dinda akan diulang sebanyak 5 kali yaitu dengan
menghitung nilai i dari i ke 1 sampai nilai i terakhir yaitu i ke 5.
Contoh dengan menggunakan blok statement:
cara penulisannya dengan pada awal blok diawali dengan Begin dan pada akhir blok diakhiri
dengan End;
Uses Crt;
Var
i : Integer;
Begin
For i:= 1 To 10 Do
Begin
Writeln ('I Love Dinda'); { blok statement }
End;
End.
Hasil yang akan didapat akan sama dengan contoh yang pertama, tapi yang harus diingat disini
untuk penggunaan blok pada perulangan For biasanya mempunyai banyak statement [lebih
dari 1 statement]

Contoh 3 :
Penggunaan perulangan For dalam blok statement untuk membuat tabel
Uses Crt;
Var
a,b,c : Integer;
bagi : Real;
Begin
Writeln('----------------------------------------------');
Writeln(' a a*a a*a*a 1/a ');
Writeln('----------------------------------------------');
For a := 1 To 10 Do
Begin
b:= a*a;
c:=a*a*a;
bagi := 1/a;
Writeln(a:4,b:10,c:10,bagi:12:3);
End;
Writeln ('----------------------------------------------');
End.

maka hasilnya :
----------------------------------------------
a a*a a*a*a 1/a
----------------------------------------------
1 1 1 1.000
2 4 8 0.500
3 9 27 0.333

Buku Panduan Pascal (Created By Jhy) Halaman 34


4 16 64 0.250
5 25 125 0.200
6 36 216 0.167
7 49 343 0.143
8 64 512 0.125
9 81 729 0.111
10 100 1000 0.100
----------------------------------------------

b. Perulangan For negatif


Perulangan negatif adalah perulangan dengan menghitung (counter) dari besar ke kecil.
Statement yang digunakan adalah For-DownTo-Do
contoh :
Uses Crt;
Var
i : Integer;
Begin
For i := 10 DownTo 1 Do Write (i:3);
End.
Hasil :
10 9 8 7 6 5 4 3 2 1

c. Perulangan For tersarang


Perulangan For tersarang adalah perulangan For yang berada pada perulangan yang lainnya.
Perulangan yang lebih dalam akan diproses terlebih dahulu sampai habis, kemudian
perulangan yang lebih luar baru akan bertambah, mengerjakan perulangan yang lebih dalam
lagi mulai dari nilai awalnya dan seterusnya.
Contoh :
Var
a,b : Integer;
Begin
For a := 1 To 3 Do
Begin
For b := 1 To 2 Do Write (a :4,b:2);
Writeln;
End;
End.

Hasil :
1112
2122
3132

2. Perulangan While - Do
Penyeleksian kondisi digunakan untuk agar program dapat menyeleksi kondisi, sehingga program
dapat menentukan tindakan apa yang harus dikerjakan, tergantung dari kondisi yang diseleksi
tersebut. Perulangan While Do tidak dilakukan jika kondisi tidak terpenuhi.

Contoh :
Uses Crt;
Var i : Integer;
Begin
i := 0;
While < 5 do
Begin
Write (i:3);
Inc (i); { sama dengan i:=i+1 }
End;
End.

Buku Panduan Pascal (Created By Jhy) Halaman 35


Hasilnya :
01234

a. Perulangan While Do tersarang


Perulangan While Do tersarang (nested While - Do) merupakan perulangan While Do yang
satu di dalam perulangan While Do yang lainnya.

Contoh :
Uses Crt;
Var
a, b : Integer;
Begin
ClrScr;
a:=1;
b:=1;
While a < 4 Do{ loop selama a masih lebih kecil dari 4 }
Begin
a := a+1;
While b < 3 Do{ loop selama b masih lebih kecil dari 3 }
Begin
Write (a:3,b:2);
b:=b+1;
End;
End;
Readln;
End.

b. Perulangan Repeat - Until.


Repeat Until digunakan untuk mengulang statement-statemen atau blok statement sampai
(Until) kondisi yang diseleksi di Until tidak terpenuhi. Sintak dari statement ini adalah :
Contoh :
Var
i : Integer;
Begin
i:=0;
Repeat
i:= i+1;
Writeln (i);
Until i=5;
End.

hasil :
1
2
3
4
5

3. Repeat Until tersarang


Repeat Until tersarang adalah suatu perulangan Repeat - Until yang satu berada didalam
perulangan Repeat Until yang lainnya.
Contoh :
Var
a,b,c : Real;
Begin
Writeln('========================================');
Writeln(' sisi A sisi B Sisi C ');
Writeln (' =======================================');

Buku Panduan Pascal (Created By Jhy) Halaman 36


a:= 1;
Repeat { perulangan luar }
b := 0;
Repeat{ perulangan dalam }
c:=Sqrt (a*a+b*b);
Writeln (a:6:2, b:9:2, c:9:2);
b:=b+5;
Until b>25; { berhenti jika b lebih besar dari 5 untuk perulangan dalam }
a:=a+1;
Until a>3; { berhenti jika a lebih besar dari 3 untuk perulangan luar }
Writeln(' =======================================');
End.

SOAL LATIHAN
Buatlah program untuk soal dibawah ini dengan tampilan sebagus mungkin (gunakan perintah Window, Textcolor dll). Jumlah suku
sesuai dengan input dari keyboard.

1. Buat deret hitung 3,7,11,15,......................=? Program 10. Buat deret seperti berikut 1, 1, 1, 2, 2, 3, 6, 4, 24,
akan berhenti jika pada pertanyaan "Hitung Lagi 5..........=? Program akan berhenti jika pada
[Y/T] ?" diisi huruf T. pertanyaan "Hitung Lagi [Y/T] ?" diisi huruf T.
2. Buat deret ukur 3,9,27,................................=? 11. Buatlah program untuk mencari faktorial, sesuai
Program akan berhenti jika pada pertanyaan dengan input yang diminta.
"Hitung Lagi [Y/T] ?" diisi huruf T. Buatlah program huruf yang berjatuhan sehingga
3. Buat tabel deret bergoyang 1,-2,4,-8,...........=? membentuk suatu kalimat yang telah diinput dari
Program akan berhenti jika pada pertanyaan keyboard.
"Hitung Lagi [Y/T] ?" diisi huruf T.
4. Buat deret suku harmonis 1,1/2,1/3,.............=?
Program akan berhenti jika pada pertanyaan
"Hitung Lagi [Y/T] ?" diisi huruf T.
5. Buat deret fibbonaci 1,1,2,3,5,.....................=?
Program akan berhenti jika pada pertanyaan
"Hitung Lagi [Y/T] ?" diisi huruf T.
6. Buat deret seperti berikut 1,-2,3,-4,.............=?
Program akan berhenti jika pada pertanyaan
"Hitung Lagi [Y/T] ?" diisi huruf T.

7. Buat deret kuadrat 1, 4, 9,............................=?


Program akan berhenti jika pada pertanyaan
"Hitung Lagi [Y/T] ?" diisi huruf T.
8. Buat deret seperti berikut 100, 90, 70 ,...........=?
Program akan berhenti jika pada pertanyaan
"Hitung Lagi [Y/T] ?" diisi huruf T.
9. Buat deret seperti berikut 256, 196, 144,............=?
Program akan berhenti jika pada pertanyaan
"Hitung Lagi [Y/T] ?" diisi huruf T.

Buku Panduan Pascal (Created By Jhy) Halaman 37


SMA NEGERI 2 CIMAHI 39
Created By : Jhy

Anda mungkin juga menyukai