Anda di halaman 1dari 24

TAG SCRIPT PERINTAH IF DALAM PASCAL

1. IF . . . THEN . . .
Perintah If . . . Then digunakan untuk mewujudkan percabangan bersyarat. Di dalam PASCAL, statement If . . .
Then mempunyai syntax :
Syntax 1:
IF <Syarat Logika> THEN Statement;
Syntax 2:
IF <Syarat Logika> THEN
Begin
Statement 1;
Statement 2; Block Statement
;
End;
Syarat Logika adalah operasi relasi (seleksi kondisi) yang apabila bernilai TRUE (benar) makastatement atau block
statement setelah Then akan dilaksanakan. Apabila kondisi bernilai FALSE maka statemen atau block statement
tidak akan dikerjakan. Untuk setiap block statement harus ditandai dengan : BEGIN . . . END;.
Contoh:
Program Kelulusan;
Var Nama : String[30];
Nilai : Real;
Ket : String[20];
Begin
Write(Nama Siswa : );readln(Nama);
Write(Nilai Angka : );readln(Nilai);
Ket := Anda Tidak Lulus;
If (Nilai > 55) Then
{jika nilai > 55}
Ket := Anda Lulus;
(Kerjakan statement}
Writeln;
Writeln(Hasil : ,Ket);
2. IF . . . THEN . . . ELSE . . .
Statement If . . . Then . . . Else . . . ini mirip dengan statement If . . . Then. Syntax statement ini adalah :
Syntax 1 :
IF <Syarat Kondisi> Then
Statement1
ELSE
Statement2;
Syntax 2:
IF <Syarat Logika> Then
Begin
Statement11;
Statement12; Block Statement1
;
End
ELSE
Begin
Statement21;
Statement22; Block Statement2
;
End;
Pada bentuk ini jika Syarat Logika bernilai TRUE, maka statement / block statement setelahThen (statement 1 /
block statement 1) akan dikerjakan. Tetapi bila syarat kondisi bernilai FALSE maka maka statement / block
statement setelah Else ( statement 2 / block statement 2)yang akan dikerjakan.

Contoh:
Program Kelulusan;
Uses crt;
Var Nama
: String[30];
Nilai
: Real;
Ket, Pesan : String[20];
Begin
Clrscr;
Write(Nama Siswa : );readln(Nama);
Write(Nilai Angka : );readln(Nilai);
Ket := Anda Tidak Lulus;
If (Nilai > 55) Then
Begin
Ket := Anda Lulus;
Pesan := Selamat Yach;
End
Else
Begin
Ket := Anda Tidak Lulus;
Pesan := Belajar Lagi Jack;
End;
Writeln;
Write(Hasil : );
Writeln(Ket, ,Pesan);
Readln;
End.
3. IF . . . THEN . . . ELSE IF . . .
Statement If . . . Then . . . Else If . . . ini sebenarnya adalah statement kondisi dalam kondisi atau If dalam If. Syntax
statement ini adalah :
Syntax 1 :
IF <Syarat Kondisi> Then
Statement1
ELSE IF <Syarat Kondisi> Then
Statement2
ELSE
Statement3;
Syntax 2:
IF <Syarat Logika> Then
Begin
Statement11;
Statement12; Block Statement1
;
End
ELSE IF <Syarat Kondisi> Then
Begin
Statement21;
Statement22; Block Statement2
;
End
ELSE
Begin
Statement31;
Statement32; Block Statement3
;

End;
Pada bentuk ini jika Syarat Logika bernilai TRUE, maka statement / block statement setelahThen (statement 1 /
block statement 1) akan dikerjakan. Tetapi bila syarat kondisi bernilai FALSE maka program akan mengecek
kondisi kedua. Jika kondisi kedua bernilai TRUE, maka statement / block statement setelah Then (statement 2 /
block statement2) akan dikerjakan. Jika kondisi kedua bernilai FALSE, maka statement / block statement
setelah Else ( statement 3 / block statement 3) yang akan dikerjakan.
Contoh:
Program Nilai;
Uses crt;
Var Nama
: String[30];
Nilai1 : Real;
Nilai2 : char;
Begin
Clrscr;
Write(Nama Siswa : );readln(Nama);
Write(Nilai Angka : );readln(Nilai1);
If (Nilai1 >=75 ) Then
Nilai2 := A
Else If (Nilai1 >= 50) and (Nilai1 < 75) Then
Nilai2 := B
Else
Nilai2 := C;
Writeln(Nilai Huruf : ,Nilai2);
Readln;
End.
4. CASE . . . OF
Statement Case . . . Of dipakai untuk penyelesaian berganda. Penyeleksian berganda disini misalnya adalah untuk
membuat menu pilihan. Sedangkan syntax dari statement ini adalah sebagi berikut :
Syntax :
Case <NamaVar> Of
Statement1;
Statement2;
;
End;
NamaVar disini adalah sebuah variable yang harus bertype ordinal seperti Char, Byte atau Integer.
Contoh:
Program Menu;
Uses crt;
Label Baby;
Var Pil
: Char;
P,L,A,T,J, Luas : Real;
Begin
Baby;
Clrscr;
Writeln(PILIHAN PROSES);
Writeln;
Writeln(1. Luas Segi Empat);
Writeln(2. Luas Segi Tiga);
Writeln(3. Luas Lingkaran);

Writeln(4. S e l e s a i);
Writeln;
Write(Masukkan Pilihan Anda : );Readln(Pil)
Case Pil Of
1 : Begin
Write(Panjang : );Readln(P);
Write(Lebar : );Readln(L);
Luas := P * L;
Write(Luas : );Readln(Luas:6:2);
Readln;
End;
2 : Begin
Write(Alas : );Readln(A);
Write(Tinggi : );Readln(T);
Luas := (A * T)/2;
Write(Luas : );Readln(Luas:6:2);
Readln;
End;
3 : Begin
Write(Jari-jari : );Readln(J);
Luas := 3.14 * J * J;
Write(Luas
: );Readln(Luas:6:2);
Readln;
End;
4 : Halt;
End;
Write(#7);
Goto Baby;
End.
Ket :
1. Baby adalah label sebagai cara untuk memutar proses jika pilihan menu tidak 1, 2, 3 atau 4.
2. Halt adalah procedure untuk mengakhiri program ditengah-tengah program.
About these ads

TAG PROGRAM WHILE DO DALAM PASCAL


WHILE . . . DO
Bila banyaknya perulangan suatu pernyataan belum bisa diketahui, maka perintah For . . . Dotidak bisa digunakan.
Untuk itu, perintah yang digunakan salah satunya adalah While . . . Do.
Syntax 1 :
While <syarat logika> Do
Statement;
Syntax 2 :
While <syarat logika> Do

Begin
Statement1;
Statement2;

Block Statement

;
End;
Contoh:
Program CetakChar;
Uses Crt;
Var
Ch : Char;
Begin
Clrscr;
Write(Masukkan sebuah Karakter : );Readln(Ch);
While (Ch <> .) Do
Begin

{Jika Bukan Character .}

{Lakukan Proses Looping}

Write(Masukkan Sebuah Karakter : );Readln(Ch);


End;
Readln;
End.
Contoh:
Program berikut adalah mencetak tulisan PASCAL sebanyak 5 buah dengan perintah loopingWhile . . . Do.
Program CetakChar;
Uses Crt;
Var

N : Integer;
Begin
Clrscr;
N := 0;
While N > 5 Do
Begin
N := N + 1;
Write(Looping ke- ,N);
Writeln( PASCAL);
End;
Readln
End.

TAG PROGRAM REPEAT UNTIL DALAM PASCAL


REPEAT . . . UNTIL
Perintah Repeat . . . Until mirip dengan perintah While . . . Do, yaitu untuk melakukan perulangan jika banyak
perulangan yang akan dikerjakan belum diketahui.
Syntax :
Repeat
Statement1;
Statement2;
;
Until <kondisi logika>
Perbedaan antara Repeat . . . Until dengan While . . . Do adalah bahwa pada Repeat . . . Untilstatement akan
dikerjakan secara berulang-ulang sampai kondisi logika bernilai TRUE. Dengan demikian selama kondisi bernilai
FALSE, maka perulangan akan terus dilakukan.

Pada Repeat . . . Until, pemeriksaan kondisi untuk menentukan benyaknya perulangan setelah statement dikerjakan.
Dengan demikian statement pada perulangan ini akan selalu dikerjakan minimal satu kali.
Contoh:
Program Cetak_Kata;
Uses Crt;
Var
N : Integer;
Begin
Clrscr;
N := 1;
Repeat
Write(Looping ke- ,N);
Writeln(PASCAL);
N := N + 1;
Until N > 5;
Readln;
End.

TAG PROGRAM FOR DO DALAM PASCAL


FOR . . . DO
Perintah For . . . Do digunakan untuk melakukan perulangan determinitif. Artinya sebuah pernyataan (tunggal atau
majemuk) akan dikerjakan secara berulang-ulang sebanyak n kali, dimana n adalah sebuah bilangan yang telah
diketahui sebelumnya.
Syntax 1 :
For NamaVarCounter := Awal To Akhir Do
Statement;

Syntax 2 :
For NamaVarCounter := Awal To Akhir Do
Begin
Statement1;
Statement2;

Block Statement

;
End;
Syntax 3 :
For NamaVarCounter := Awal DownTo Akhir Do
Statement;
Syntax 4 :
For NamaVarCounter := Awal DownTo Akhir Do
Begin
Statement1;
Statement2;

Block Statement

;
End;
Jika Awal lebih kecil dari Akhir digunakan perintah To, sedangkan jika Awal lebih besar dari Akhir digunakan
perintah DownTo.
Contoh:
Program CetakChar;
Uses Crt;
Var
Awal, Akhir, Karak : Char;

Begin
Clrscr;
Write(Karakter Awal : );Readln(Awal);
Write(Karakter Akhir : );Readln(Akhir);
Writeln;
Write(Naik : );
For Karak := Awal To Akhir Do
Write(Karak);
Writeln;
Write(Turun : );
For Karak := Akhir DownTo Awal Do
Write(Karak);
Readln;
Tutorial percabangan delphi dan contoh programnya
Diposting oleh Ivo Idham Perdameian pada 26 Maret 2012Tinggalkan komentar (40)Menuju ke komentar
Tulisan kali ini adalah tutorial percabangan di delphi untuk pemula disertakan contoh programnya agar lebih
mudah dipahami, di sini saya akan jelaskan sesederhana mungkin sehingga harapan sayatutorial ini menyenangkan
bagi teman-teman pembaca yang membutuhkan dan benar-benar bisa membantu untuk memahami percabangan di
delphi. Karena topiknya adalah bagi pemula dan penjelasannya sesederhana mungkin saya harap temanteman tidak malas membaca karena akan saya jelaskan sedetail mungkin sehingga tulisan ini tentunya
menjadi sangat panjang. Okey siap belajar???? saran saya sih teman-teman baca sambil ngopi biar jreng!!
matanya atau sambil ngemil juga boleh haha
Intro : Penjelasan percabangan di delphi
Percabangan dalam bahasa pemrograman disebut juga pengkondisian dalam menentukan keputusan(seleksi),
sehingga bila kondisi tertentu memenuhi maka akan diambil keputusan berdasarkan kondisi yang terpenuhi tersebut.
Dalam bahasa pemrograman delphi dikenal dua percabangan yaitupernyataan if (if statement) dan pernyataan
case of (case of statement), kalau dalam bahasa pemrograman VB dikenal dengan Select Case, dalam PHP dikenal
dengan switch case sedangkan untuk pernyataan if sendiri semua bahasa pemrograman menggunakannya ( ditulis
dengan kata yang sama yaituif ).
Masing-masing percabangan di delphi tersebut bisa ditulis dalam berbagai format baik percabangan
ifmaupun percabangan case of, dan akan kita bahas satu persatu hanya di tutorial percabangan delphi ini. Dalam

percabangan if dikenal juga istilah if bersarang atau percabangan berantai istilah kerennya disebut nested if. Apa
itu nested if/if bersarang/percabangan berantai? percabangan if dikatakan if bersarang bilamana statement if
terdapat di dalam statement if, sederhananya if dalam if. Untuk lebih memahaminya nanti saya jelaskan di bawah
dan juga saya berikan contoh program percabangan ( source code/script programnya ).
Nah sebelum ke pembahasan, saya mau tampilkan gambar program dari tutorial percabangan delphi ini :

Percabangan if (if statement) di delphi


Ada dua bentuk pernyataan if yaitu ifthen dan ifthenelse.
Cara/format penulisan ifthen adalah if kondisi then proses;

Contoh 1 :
1
2

// kondisi
proses
if angka >= 60 then hasil := 'Bagus';

Cara/format penulisan ifthenelse adalah if kondisi then proses1 else proses2;


Contoh 2 :
1
2

// kondisi
proses1
proses2
if angka >= 60 then hasil := 'Bagus' else hasil := 'Jelek';

Bisa juga ditulis seperti ini :


1
2
3
4
5

// kondisi
if angka >= 60 then
hasil := 'Bagus' // proses1
else
hasil := 'Jelek'; // proses2

Atau seperti ini :


1
2
3

if angka >= 60 then


hasil := 'Bagus'
else hasil := 'Jelek';

Atau juga seperti ini :


1
2

if angka >= 60 then hasil := 'Bagus'


else hasil := 'Jelek';

Terserah teman-teman pilih yang mana karena itu sama saja.


Percabangan if untuk proses yang lebih dari satu
Nah bila proses yang akan dilakukan lebih dari satu, cara penulisannya harus disertai begin [proses-proses] end;.
Contohnya sebagai berikut:
Contoh 3 (untuk pernyataan ifthen) :
1
2
3
4
5

if angka >= 60 then


begin
keterangan := 'Nilainya bagus';
hasil := 'Bagus';
end;

Contoh 4 (untuk pernyataan ifthenelse) :


1
2
3
4
5
6
7
8
9
10

if angka >= 60 then


begin
keterangan := 'Nilainya bagus';
hasil := 'Bagus';
end
else
begin
keterangan := 'Nilainya Jelek';
hasil := 'Jelek';
end;

Bisa juga ditulis seperti ini :


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

if angka >= 60 then


begin
keterangan := 'Nilainya bagus';
hasil := 'Bagus';
end else begin
keterangan := 'Nilainya Jelek';
hasil := 'Jelek';
end;
// Atau penulisan seperti ini juga tidak masalah biar tampak singkat
{
if angka >= 60 then begin
keterangan := 'Nilainya bagus';
hasil := 'Bagus';
end else begin
keterangan := 'Nilainya Jelek';
hasil := 'Jelek';
end;
}

Contoh 5 (contoh lain untuk pernyataan ifthenelse) :


1

if angka >= 60 then

2
3
4
5
6

begin
keterangan := 'Nilainya bagus';
hasil := 'Bagus';
end
else hasil := 'Jelek';

Bisa juga ditulis seperti ini :


1
2
3
4
5
6
7
8
9
10
11
12
13

if angka >= 60 then


begin
keterangan := 'Nilainya bagus';
hasil := 'Bagus';
end else hasil := 'Jelek';
// Atau penulisan seperti ini juga tidak masalah biar tampak singkat
{
if angka >= 60 then begin
keterangan := 'Nilainya bagus';
hasil := 'Bagus';
end else hasil := 'Jelek';
}

Ingat untuk contoh 4 dan contoh 5 tidak ada tanda titik koma sebelum else (antara end dan else) karena masih
dalam hitungan satu blok atau satu barisan kode program.
if bersarang di delphi
Seperti yang di jelaskan di atas, if bersarang atau percabangan berantai adalah if di dalam if. Berikut syntax
penulisannya :
if kondisi1 then if kondisi2 then proses1 else proses2;
Dalam penjabaran atau pengerjaan prosesnya ada dua cara yaitu :
if kondisi1 then [ if kondisi2 then proses1 else proses2 ];
if kondisi1 then [ if kondisi2 then proses1 ] else proses2;
Contoh 6 (Penjabaran I) :
1
2
3
4

if angka >= 60 then


if angka < 80 then hasil := 'Bagus'
else
hasil := 'Memuaskan';

Atau bisa juga ditulis begin [ pernyataan if ] end; seperti ini :


1
2
3
4
5
6

if angka >= 60 then


Begin
if angka < 80 then hasil := 'Bagus'
else
hasil := 'Memuaskan';
end;

Contoh 7 (Penjabaran II) :

1
2
3
4
5
6
7

if angka >= 60 then


Begin
if angka < 80 then
hasil := 'Bagus';
end
else
hasil := 'Buruk';

Percabangan case of (case of statement) di delphi


Setelah membahas percabangan if, sekarang pembahasan kita mengenai percabangan case of, saya harap tetap
semangat :). Opss!!. Kopinya udah habis belum, klo udah habis tambah lagi saja

sambil lanjut membaca.

Oke teman-teman, percabangan case of memiliki format penulisan sebagai berikut :


1
2
3
4
5

case selectorExpression of
caseList1: statement1;
...
caseListn: statementn;
end;

Percabangan case of juga bisa memiliki else seperti ini formatnya :


1
case selectorExpression of
2
caseList1: statement1;
3
...
4
caseListn: statementn;
5
else
6
statements;
7
end;
Penjelasan case of dan peraturan
1. selectorExpression adalah ekspresi atau yang terpilih dan harus berupa angka dengan tipeordinal,
tidak boleh bertipe string. Tapi jika teman-teman ingin tahu bagaimana triknya case of
menggunakan string, silahkan baca di tutorial membuat percabangan case of di delphi 7
menggunakan string yang sudah saya tuliskan sebelumnya.
2. caseList adalah daftar pilihan.
3. statement adalah proses yang akan dilakukan bila kondisinya memenuhi.
Adapun peraturan-peraturan/kriteria yang perlu diketahui adalah sebagai berikut :
1.
2.

selectorExpression harus berupa angka dengan tipe ordinal, tidak boleh bertipe string.
Setiap caseList memiliki bagian dari salah satu sifat berikut:
o Berupa angka atau sebuah konstanta dengan tipe data ordinal.
o Nilai caseList adalah unik antara caseList yang lainnya, jadi tidak boleh sama.
o caseList bisa memiliki subrange. Misalnya pertama..terakhir dan nilai pertama harus
lebih kecil atau sama dengan terakhir.
o Dapat memiliki bentuk item1, , itemn dimana item sudah memenuhi salah satu
kriteria yang sudah disebutkan di atas.
Contoh percabangan case of
Contoh 8 :

1
2
3
4

case angka of
1: keterangan := 'Angka yang dipilih adalah 1';
2: keterangan := 'Angka yang dipilih adalah 2';
end;

Nah berikut adalah contoh gabungan dari kriteria yang sudah saya sebutkan di atas :
Contoh 9 :
1
2
3
4
5
6
7
8

case angka of
1: keterangan := 'Angka yang dipilih adalah 1';
2: keterangan := 'Angka yang dipilih adalah 2';
3..5: keterangan := 'Angka yang dipilih mulai dari 3 sampai 5';
6, 8, 9, 11..20: keterangan := 'Angka yang dipilih adalah 6 atau 8 atau 9 atau dari 11 sampai 20';
else
keterangan := 'Angka yang dipilih tidak dalam daftar';
end;

Bila percabangan case of ini memiliki proses/statement lebih dari satu bisa ditulis menggunakan begin [prosesproses] end;, berikut contohnya :
Contoh 10 :
1
2
3
4
5
6
7
8

case angka of
1: keterangan := 'Angka yang dipilih adalah 1';
2:
begin
keterangan := 'Angka yang dipilih adalah 2';
keterangan2 := 'Angka tersebut adalah bilangan genap';
end;
end;

Saya yakin teman-teman yang pemula pasti bingung dengan syntax-syntax di atas, tidak usah bingung pada
intinya percabangan di delphi ini hanya dua yaitu if dan case of. Pernyataan if yaitu ifthen dan ifthen
else serta if bersarang(nested if) sedangkan case of ya seperti yang sudah di jelaskan di atas, jadi sebenarnya tidak
begitu rumit hanya cara penulisannya yang perlu di mengerti selain dari logikanya itu sendiri. Saran saya biar mudah
mengerti tuliskan rangkumannya di buku catatan, pengalaman saya belajar dengan cara tersebut lebih memudahkan
dalam proses pemahaman.
Setelah membaca penjelasan case of dan peraturannya di atas, mungkin ada di antara teman-teman masih ragu-ragu
dan bertanya dalam hati, apakah bisa percabangan case of menggunakan string? sekali lagi saya menjawab bisa!,
namun memerlukan trik tersendiri. Nah trik tersebut bisa di temukan di tutorial saya mengenai percabangan case of
menggunakan string.
Nah tentunya agar teman-teman semua jauh lebih mudah memahami dan lebih kerasa afdol
silahkandownload/unduh source code/script programnya di sini hanya di tutorial percabangan delphi 7. Jangan
sungkan juga untuk berkomentar bila menemui kesulitan dalam belajar ya :).
Oke sekian dulu semoga bermanfaat buat sahabat CB, silahkan berkomentar pada tutorial ini jika ada kesulitan dan
jangan lupa berikan juga +1 Google sahabat di tulisan ini

Kami (Catatan Belajar) juga hadir di Facebook, like kami ya klik tombol berikut:

Perulangan (Looping) dengan "FOR" dalam Pascal.


Salam semangat! hehe.. How are you friend? hehe, saya harap kalian baik-baik saja hehe
Ya seperti pada judulnya, kali ini kita akan belajar mengenai perulangan (looping) dalam Bahasa pemprograman
Pascal.
Ada 3 cara di dalam Bahasa Pemprograman Pascal untuk menyatakan perulangan. Yaitu
1. FOR - DO
2. WHILE - DO
3. REPEAT - UNTIL
ke tiganya mempunyai cara penulisan dan fungsinya masing-masing(meskipun pada dasarnya semua nya digunakan
untuk perulangan)
Menurut saya, bagian dari belajar dasar pemprograman yang "membutuhkan waktu lebih" untuk di kuasai adalah
bagaian ini.
yah, perulangan. karena akan banyak khasus yang membutuhkan analisa logika teman-teman untuk
menyelesaikanya(tentunya berhubungan dengan perulangan)
Kali ini kita akan membahas perlulangan dalam Bahasa Pemprograman Pascal menggunakan FOR - DO. Yuk mari...
Di dalam Pemprograman pascal, Syntax Looping dengan menggunakan FOR di bedakan menjadi 2 jenis. Yaitu
A. Increasement (bertambah)
FOR <variable> : = <nilai_awal> TO <nilai_akhir> DO
Syntax FOR di atas digunakan untuk perulangan yang nilai awalnya terus bertambah hingga nilai akhir.
atau dalam pengertian dapat di rumuskan :
Printah (statement) di dalam FOR akan selalu di jalankan selama nilai_awal masih <= nilai_akhir.
Kemudian nilai_awal akan selalu di tambahkan 1 di setiap kali perulangan.
Perintah (statement) di dalam FOR akan berkahir/selesai di eksekusi pada saat nilai_awal > nilai_akhir.
Sebagai contoh :
Contoh1
Tampilkan urutan bilangan mulai dari 1 hingga 10
Berikut script penyeselsaianya :
program Contoh1;
var
x: integer;
begin
for x := 1 to 10 do
begin
write(x , ' ');
end;
readln;
end.
Hasil dari program di atas adalah :
1 2 3 4 5 6 7 8 9 10

nilai dari variable x mula-mula adalah 1, kemudian perintah yang dijalankan adalah write/mencetak variable x .
Kemudian karena x masih kurang dari 10 maka x ditambahkan 1, sehingga sekarang nilai x menjadi 2 .
Dan begitu seterusnya hingga x = 10 maka program perhenti di proses.
B. Decreasement (berkurang)
FOR <variable> : = <nilai_awal> DOWNTO <nilai_akhir> DO
Berkebalikan dengan FOR untuk Increasement, Syntax FOR untuk Decreasement di atas digunakan untuk
perulangan dengan penurunan nilai.
Jadi :
Printah (statement) di dalam FOR akan selalu di jalankan selama nilai_awal masih >= nilai_akhir.
Kemudian nilai_awal akan selalu di dikurangi 1 di setiap kali perulangan,
Perintah (statement) di dalam FOR akan berkahir/selesai di eksekusi pada saat nilai_awal < nilai_akhir.
Sebagai contoh :
Contoh2
Tampilkan urutan bilangan mulai dari 15 hingga 5
Berikut script penyelesaianya :
program Contoh2;
var
y: integer;
begin
for y := 15 downto 5 do
begin
write(y , ' ');
end;
readln;
end.
Hasil dari program di atas adalah :
15 14 13 12 11 10 9 8 7 6 5
nilai dari variable y mula-mula adalah 15, kemudian perintah yang dijalankan adalah write/mencetak variable y .
Kemudian karena y masih lebih dari 5 maka y dikurangi 1, sehingga sekarang nilai y menjadi 14 .
Dan begitu seterusnya hingga y = 5 maka program perhenti di proses.
OK,, kita sudah mengenal 2 jenis FOR dalam pascal, sekarang saat nya implementasi :D
Saya mempunyai 2 khasus yaitu :
1. Saya ingin menampilkan bilangan perima mulai dari 1 hingga 50
2. Saya inggin membuat Pyramit dari character 'x' menjadi seperti :
x
xxx
xxxxx
xxxxxxx
Bagaimana caranya?
yuk kita kerjakan bersama - sama :D
1. Khasus 1
untuk mengerjakan khasus ini kita memerlukan operator artimatik "MOD" (modulus) yaitu operator aritmatik yang
berfungsi untuk mendapatkan nilai sisa hasil bagi.

seperti yang kita ketahui, ciri-ciri dari bilangan prima adalah hanya dapat dibagi oleh angka 1 dan bilangan itu
sendiri.
jadi jumlah bilangan pembagi bilangan prima hanyalah ada 2.
Brikut script nya :
Program khasus1;
var
a,b,c,x : integer;
BEGIN
x := 50; // batas nilai prima
for a:= 1 to x do // for pertama
Begin
c := 0; // jumlah pembagi bilangan prima
for b: = 1 to a do // for ke 3
Begin
if a mod b=0 then // pengecekan sisa hasil pembagian
c:=c+1; // jika sisanya 0 jumlah pembagi ditambah 1
end; // akhir for ke 2
if c = 2 then // pengecekan jumlah pembagi, jika jumlah pembagi = 2 maka cetak bilangan tersebut (berarti
bilangan prima)
begin
write(a,' '); // cetak nilai bilangan prima
end;
end; // akhir for pertama
readln;
END.
Penjelasan :
a. for pertama berfungsi untuk perulangan bilangan variable a dari 1 hingga x (50)
b. for ke 2 berfungsi untuk mencari berapa jumlah bilangan yang hasil bagi dengan variable a nya adalah 0
Hasilnya :
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47
2. Khasus 2
Dilihat dari hasilnya, sepertinnya mudah? yakin? hehehe
Menurut saya, bagi yang baru belajar Pemprograman, khasus ini adalah khasus yang cukup meguras otak kita hehe.
Tapi tenang jangan panik. disini kita kan bahas bersama-sama :D
sebelumnya akan saya berikan script lengkapnya terlebih dahulu baru akan saya bahas bagian-perbagian :D
berikut ini script lengkapnya :
program khasus2;
var
baris,sepasi,piramit1,piramit2,jumbaris :integer;
begin
jumbaris := 4;

for baris :=1 to jumbaris do // for pertama


begin
for sepasi := jumbaris downto baris do // for ke 2
begin
write(' '); // mencetak segitiga spasi
end; // akhir for 2
for piramit1 := 1 to baris do // for 3
begin
write('x'); // mencetak segitiga x 1
end; // akhir for 3
for piramit2 := 2 to baris do // for 4
begin
write('x'); // mencetak segitiga x 2
end; // akhir for 4
writeln; // mencetak baris baru
end; // akhir for pertama
readln;
end.
hah? panjang dan banyak banget for nya??
tenang aja, yuk kita bahas bersama-sama.
dari yang temen-temn lihat, kira-kira ada berapa objek segitiga?
1?
hmm... salah... :)
jawabanya ada 3..
loh koq bisa?
heheh akan saya jelaskan
a. For pertama
for baris :=1 to jumbaris do // for pertama
begin
....
end;
for pertama adalah FOR pembungkus dari semua FOR pembentuk objek segitiga.
fungsi dari for pertama adalah untuk membuat baris. yaitu mulai baris pertama (1) hingga baris ke jumbaris (4)
varibale "baris" disini berfungsi sebagai acuan pembentukan kolom di setiap objek segitiganya
b. For ke 2
for sepasi := jumbaris downto baris do // for ke 2
begin
write(' '); // mencetak segitiga spasi
end; // akhir for 2
for ke 2 ini berfungsi sebagai pemebentuk kolom yang nantinya menjadi segitiga spasi.
bingung? sekarang coba temen-temen ganti isi dari write(' '); menjadi write('0');
apa yang terjadi?
yups ada segitiga yang terbentuk dari angka 0.
Seperti yang saya sebutkan, fungsi dari for ini adalah untuk membuat kolom, jumlah kolom (dalam hal ini

spasi/angka 0) adalah hasil dari perulangan for tersebut, sebagai contoh di baris yang pertama jumlah spasi/0 adalah
4 buah. itu dukarenakan perulangan Decreasement perintah mencetak spasi/0 di baris pertama yaitu dari nilai
variable sepasi (4) hingga nilai variable baris (1). dan begitu seterusnya hingga for pembentuk beris(for pertama)
berakhir.
c. For ke 3
for piramit1 := 1 to baris do // for 3
begin
write('x'); // mencetak segitiga x 1
end; // akhir for 3
fungsi dari for ke 3 ini adalah untuk membentuk segitiga x yang ke 1. sama seperti fungsi dari for yang kedua, cuma
bedanya yang di cetak adalah character x dan perulangan untuk pembentukan barisnya adalah Increasement.
sebagai contoh di baris yang pertama jumlah x adalah 1 buah. itu di karenakan perulangan perintah pencetakan x
dari nilai mulla-mula varibale piramit1 (1) bertambah terus hingga nilainya sama dengan variable baris (1) dan
begitu seterusnya hingga for pembentuk beris(for pertama) berakhir.
d. For ke 4
for piramit2 := 2 to baris do // for 4
begin
write('x'); // mencetak segitiga x 2
end; // akhir for 4
Fungsinya adalah pembentuk segitiga x yang ke 2. algoritmanya sama persis dengan for yang ke 3, hanya bedanya
piramit2 dimulai dari 2, bukan 1.
kenapa? karena segitiga yang akan dicetak lebih kecil 1 baris dari yang pertama. coba temen-temen ganti isi
piramit2 menjadi 1. apa yang akan terjadi? :D
Hasilnya adalah :
x
xxx
xxxxx
xxxxxxx
yeah,,, kita sudah belajar macam-macam for dalam pascal.. udah tambah Pintar Coding dong pastinya hehehe..
terus terang For adalah bagian dasar dari pemprograman yang perlu perhatian lebih dalam memahaminya, jadi
tenang aja bagi yang belum paham bisa di pelajari pelan-pelan koq hehe
ok,, di article selanjutnya kita kan belajar Looping dalam Pascal menggunakan WHILE-DO dan REPEAT-UNTIL ..
tenang ndak sesulit For koq, saya yakin ini lebih mudah,, jadi nantikan ya article selanjutnya... semoga
bermanfaat.. :D

Mengenal Percabangan (Decision Conditional) "IF" dalam Pascal


Apa kabar temen-temen? Salam Super! (udah kayak Pak Mario Teguh aja haha) :D
Kali ini kita akan belajar mengenai Percabangan (Decision Conditional) dalam Bahasa Pemprograman Pascal.
Sebelumnya apa teman - temen tau apa kegunaan dari Percabangan (Decision Conditional) dalam Pemprograman?
Percabangan adalah suatu keadaan dimana pernyataan dapat dieksekusi apabila suatu kondisi memenuhi syarat
untuk mengerjakan pernyataan tersebut.
Bagaimana cara menulis Perintah percabangan di dalam Bahasa Pemprograman Pascal?
Dalam Bahasa Pemprograman Pascal terdapat 2 cara dalam menggunakan atau mengimplementasikan Percabangan
(Decision Conditional) yaitu dengan menggunakan Perintah "IF" dan "CASE"

Kali ini kita akan membahas Percabangan dalam Pascal dengam menggunakan cara yang pertama yaitu IF
Ok ngak usah lama - lama, yuk kita bahas bersama - sama,,
A. Operator Percabangan (Decision Conditional) dalam Bahasa Pemprograman Pascal
Sebelum temen - teman belajar mengenai Percabangan sebaiknya temen - temen perlu tahu dulu berbagaimacam
operator yang digunakan dalam perintah percabangan dalam Pascal
1. Relational Operators
contoh : A = 10 dan B = 20
Operato
r

Deskripsi

Contoh

[SAMA DENGAN] Cek jika isi dari kedua operan dalah sama.

(A = B)
is not
true.

<>

[TIDAK SAMA DENGAN] Cek jika isi dari kedua operan dalah tidak sama.

(A <>
B) is
true.

>

[LEBIH DARI] Cek jika operan yang berada disebah kiri bernilai lebih tinggi dari operan
di sebelah kanan.

(A > B)
is not
true.

<

[KURANG DARI] Cek jika operan yang berada disebah kiri bernilai lebih rendah dari
operan di sebelah kanan.

(A < B)
is true.

>=

[LEBIH DARI SAMA DENGAN] Cek jika operan yang berada disebah kiri bernilai lebih
tinggi atau sama dengan dari operan di sebelah kanan.

(A >=
B) is
not
true.

<=

[KURANG DARI SAMADENGAN] Cek jika operan yang berada disebah kiri bernilai
lebih rendah atau samadengan dari operan di sebelah kanan.

(A <=
B) is
true.

2. Boolean Operators
contoh : A = true dan B = false
Operato
r

Description

Example

and

Jika kedua operan bernilai true maka kondisi akan menjadi true

(A and
B) is
false.

and then

Mirip dengan operator AND, tapi urutan compiler mengevaluasi ekspresi logis. Kiri ke
kanan dan operan yang tepat dievaluasi hanya bila diperlukan

(A and
then B)
is false.

or

Jika kedua operan salah satunya bernilai true maka kondisi akan menjadi true

(A or B)
is true.

(A or
else B) is
true.

or else

Mirip dengan operator OR, tapi urutan compiler mengevaluasi ekspresi logis. Kiri ke
kanan dan operan yang tepat dievaluasi hanya bila diperlukan

not

not (A
Digunakan untuk mebalikkan logika operan, Jika kondisi bernilai true maka Logical NOT
and B) is
mengubahnya menjadi false
true.

B. Percabangan dengan Menggunakan Perintah "IF"


Penulisan Perintah Percabangan dengan menggunakan "IF" dalam bahasa pascal adalah sebagai berikut :
1. Statement IF tunggal
Khasus : Statement yang dikerjakan hanya jika kondisi "IF" terpenuhi
Penulisan Syntax :
if <conditiron> then
<statement>
contoh :
Jika variable "x" berisi lebih dari 50 maka program akan mencetak tulisan "Nilai X lebih dari 50"
Jadi code program nya adalah sebagai berikut :
program ifKahsus1;
var
x,y :integer;
begin
x:= 60;
(* cek kondisi boolean(benar/salah) menggunakan IF statement *)
if( x > 50 ) then
(* jika kondisi bernilai benar/true maka kerjakan perintah di bawah ini *)
writeln('Nilai X lebih dari 50' );
writeln('isi dari nilai X adalah : ', x);
readln;
end.
Output dari program di atas adalah :
Nilai X lebih dari 50
isi dari nilai X adalah : 60
Sekarang coba temen - temen ubah nilai dari variable x menjadi 10, apa yang akan terjadi?
iya, tulisan "Nilai X lebih dari 50" tidak akan ikut tercetak. mengapa?
karena nilai dari variable x tidak lebih dari 50, jadi kondisi IF tidak terpenuhi atau menghasilkan nilai salah/false
sehingga perogram hanya akan mengeksekusi perintah selanjutnya(di bawah IF)
2. Statement IF THEN ELSE

Khasus : Statement 1 dikarjakan jika variable x lebih dari sama dengan 50, dan Statement 2 dikerjakan jika variable
x kurang dari 50.
Statement 1 => Cetak tulisan "Nilai X lebih dari sama dengan 50"
Statement 2 => Cetak tulisan "Nilai X kurang dari 50"
Untuk menyelesaikan khasus di atas kita memerlukan teman/pasangan setia dari perintah "IF" hehehe:D yaitu
"ELSE"
Penulisan Syntax :
if <condition> then
<statement1>
else
<statement2>
Jadi code program nya adalah sebagai berikut :
program ifKahsus2;
var
x : integer;
begin
x := 100;
if( x >= 50 ) then
(* jika kondisi benar/true maka cetak Statemen 1 di bawah ini *)
writeln('Nilai X lebih dari sama dengan 50' )
else
(* jika kondisi di atas salah/false maka cetak Statement 2 dibawah ini *)
writeln('Nilai X kurang dari 50' );
writeln('isi dari nilai X adalah : ', x);
readln;
end.
Output dari program di atas adalah :
Nilai X lebih dari sama dengan 50
isi dari nilai X adalah : 100
Sekarang coba temen - temen unbah nilai X manjedi 20, yang terjadi adalah :
Nilai X kurang dari 50
isi dari nilai X adalah : 20
Karena kondisi "IF" di atas salaj jadi program akan menjalankan perintah ke 2 yaitu perintah di bawah statement
"ELSE"
3. Statement IF ganda
Khasus :
Statement 1 dikarjakan jika variable x lebih dari sama dengan 90,
Statement 2 dikerjakan jika variable x lebih dari sama dengan 70,
Statement 3 dikerjakan jika variable x lebih dari sama dengan 60,
Statement 4 dikerjakan jika variable x kurang dari 60,
Statement 1 => Cetak tulisan "Nilai anda adalah A"
Statement 2 => Cetak tulisan "Nilai anda adalah B"

Statement 3 => Cetak tulisan "Nilai anda adalah C"


Statement 4 => Cetak tulisan "Nilai anda adalah D"
program ifKahsus3;
var
x : integer;
begin
x := 50;
if( x >= 90 ) then
writeln('Nilai anda adalah A' )
else if (x >= 70 ) then
writeln('Nilai anda adalah B ')
else if (x >= 60) then
writeln('Nilai anda adalah C')
else
writeln('Nilai anda adalah D' );
writeln('nilai anda : ', x);
readln;
end.
Hasil output dari program di atas adalah :
contoh program if..then..else pada pascal
if ... then.. else
digunakan untuk memilih kondisi dan memberikan nilai pada kondisi tersebut bila benar dan bila salah.
bentuk sintaksnya:
IF (kondisi) THEN nilai_jika_benar;
ELSE nilai_jika_salah;
Kondisi berisi 3 komponen --> sesuatu yang dibandingkan OPERATOR nilai pembanding
OPERATOR : dapat berupa tanda =, >, <, <>, >=, <=, and, not, or
Contoh 1 :
jika nilai > 70 maka LULUS, jika tidak maka GAGAL
program kelulusan;
uses crt;
var nilai:integer;
begin
write('masukkan nilai anda :'); readln(nilai);
if nilai>70 then writeln('LULUS')
else writeln('GAGAL');
readln;
end.
IF Majemuk
untuk > 1 statement
Contoh 2 :
untuk mengetahui nilai siswa
jika nilai >= 85 maka nilai A
>=75 maka nilai B
>=65 maka nilai C
< 65 maka nilai D

program penilaian;
uses crt;
var nilai:integer;
begin
write('masukkan nilai anda :'); readln(nilai);
if nilai >=85 then writeln('nilai A')
else if nilai>=75 then writeln('nilai B')
else if nilai>=65 then writeln('nilai C')
else writeln('nilai D');
readln;
end.

Anda mungkin juga menyukai