SlideShare une entreprise Scribd logo
1  sur  8
Télécharger pour lire hors ligne
DIKTAT PERKULIAHAN PEMROGRAMAN II 
  BORLAND DELPHI  
 
  50 
 
BAB VII 
PERULANGAN 
 
PENDAHULUAN 
Salah satu kegunaan dari komputer adalah untuk melakukan proses yang berulang. Bagi manusia proses 
berulang  bisa  menjadi  satu  hal  yang  melelahkan,  sehingga  bisa  membuat  proses  menghasilkan 
kesalahan karena ketidakkonsentrasian atau kelalaian. Oleh karena itu di semua bahasa pemrograman 
pasti memiliki mekanisme untuk melakukan perulangan. Demikian dengan juga dengan Delphi. Di Delphi 
perulangan dapat dilakukan dengan beberapa cara, diantaranya : 
‐ Perulangan  menggunakan  Counter/Pencacah  sebagai  kendali  perulangannya.  Perulangan  dengan 
cara ini dapat dilakukan dengan menggunakan pernyataan : For To Do atau For DownTo Do. 
‐ Perulangan menggunakan Kondisi Boolean sebagai kendali perulangannya. Perulangan dengan cara 
ini dilakukan dengan menggunakan pernyataan : While Do, atau Repeat Until. 
‐ Perulangan menggunakan Label. (cara ini tidak disarankan untuk digunakan. Label akan diterangkan 
sekedar untuk pembelajaran saja). 
Untuk  lebih  memahami  perulangan,  buatlah  form  seperti  di  bawah  ini  yang  akan  digunakan  untuk 
mendemonstrasikan berbagai jenis perulangan. 
DIKTAT PERKULIAHAN PEMROGRAMAN II 
  BORLAND DELPHI  
 
  51 
 
   
 
Komponen Memo digunakan untuk menampung data string lebih dari 1 baris. Memo bisa 
diidentikan dengan program Notepad.  Memo bisa digunakan untuk membuat editor teks. 
 
Ada beberapa metode yang dapat digunakan untuk mengolah/memanipulasi memo yaitu : 
‐ Memo.Lines.Add(s:string),  digunakan  untuk  menambah  baris  baru  di  baris  terakhir. 
Parameternya harus string. Jika ingin menuliskan angka, maka harus dikonversi dulu. 
‐ Memo.Clear, digunakan untuk menghapus semua baris yang ada dalam memo. 
 
Properti yang biasa dimodifikasi diantaranya : 
‐ Lines, properties yang menyimpan baris‐baris yang ada dalam memo 
‐ Alignment, digunakan untuk menentukan alignment baris (Left, Right, Center) 
‐ ScrollBars, digunakan untuk menentukan scrollbar mana yang akan ditampilkan (None, 
Vertikal, Horizontal, Both/Keduanya) 
 
 
Properties : 
ScrollBars=ssBoth 
DIKTAT PERKULIAHAN PEMROGRAMAN II 
  BORLAND DELPHI  
 
  52 
 
PERULANGAN FOR TO DO 
Perulangan  For  To  Do  merupakan  perulangan  yang  menggunakan  kendali  perulangannya  berupa 
counter/pencacah. Counter akan menjalankan perulangan dimulai dari nilai awal yang diberikan sampai 
counter mencapai nilai akhirnya. Syarat terjadinya perulangan adalah nilai awal counter harus lebih kecil 
atau sama dengan nilai akhir counter. 
Bentuk umum dari perulangan ini adalah : 
For counter := nilai awal To Nilai akhir Do
Begin
Perintah;
Perintah;
End;
 
Contoh Program yang ditulis dalam event OnClick dari tombol For To Do 
procedure TForm1.Tbl_ForToDoClick(Sender: TObject);
var
i:integer;
c:char;
begin
Memo1.Clear;
for i:=1 to 10 do
Memo1.Lines.Add(IntToStr(i));
for c:='A' to 'Z' do
Memo1.Lines.Add(c);
end;
 
PERULANGAN FOR DOWNTO DO 
Perulangan  ini  sama  seperti  perulangan  dengan  menggunakan  For  To  Do  tetapi  arah  isi  counternya 
berkurang (mundur/turun). 
Bentuk umum dari perulangan ini adalah : 
For counter := nilaiawal DownTo Nilaiakhir Do
Begin
Perintah;
Perintah;
End;
Perulangan ini akan berulang selama nilai variabel counter masih lebih besar atau sama dengan nilai 
akhir. Nilai awal suatu counter harus lebih besar atau sama dengan daripada nilai akhirnya. 
Contoh Program yang ditulis dalam event OnClick dari tombol For To Do 
procedure TForm1.Tbl_FormDownToDoClick(Sender: TObject);
var
i:integer;
c:char;
begin
Memo1.Clear;
for i:=10 downto 1 do
Memo1.Lines.Add(IntToStr(i));
for c:='Z' downto 'A' do
Memo1.Lines.Add(c);
end;
 
DIKTAT PERKULIAHAN PEMROGRAMAN II 
  BORLAND DELPHI  
 
  53 
 
PERULANGAN REPEAT UNTIL 
Perulangan ini bekerja sampai kondisi yang diinginkan tercapai. Perulangan ini bisa digunakan sebagai 
perulangan yang menggunakan banyak kondisi keluar (multi condition loop). 
Bentuk umum : 
Repeat
Perintah;
Perintah;
Until Kondisi;
 
Contoh Program 
procedure TForm1.Tbl_RepeatUntilClick(Sender: TObject);
var
i:real;
begin
Memo1.Clear;
i:=0;
repeat
i:=i+0.5;
Memo1.Lines.Add(FloatToStr(i));
until i=10;
end;
 
Perulangan ini berulang sampai kondisi yang ada setelah until mempunyai nilai true. Jadi repeat until 
berjalan selama kondisi salah sampai kondisi benar. 
Pengecekan kondisi berada di bagian bawah yaitu setelah until sehingga semua program yang memakai 
perulangan ini akan melakukan minimal 1 kali proses perulangan. 
 
PERULANGAN WHILE DO 
Perulangan  ini  mirip  dengan  perulangan  Repeat  Until  tetapi pengecekannya berada  di  awal  sebelum 
melakukan proses yang berulang. Perulangan ini berjalan selama kondisi pengecekan bernilai true. Jika 
kondisi telah mempunyai nilai false maka perulangan tidak dilakukan lagi. 
Bentuk umum dari While Do adalah seperti berikut : 
While kondisi do
Begin
Perintah;
Perintah;
End;
 
Contoh program while do yang ditulis pada event onclick dari tombol While Do. 
procedure TForm1.Tbl_WhileDoClick(Sender: TObject);
var
i:real;
begin
Memo1.Clear;
i:=0;
while i<10 do
DIKTAT PERKULIAHAN PEMROGRAMAN II 
  BORLAND DELPHI  
 
  54 
 
begin
i:=i+0.5;
Memo1.Lines.Add(FloatToStr(i));
end;
end;
 
PERULANGAN LABEL 
Label adalah suatu perintah untuk memandai suatu baris program. Untuk pindah ke posisi yang ditandai 
oleh label, maka digunakan perintah Goto. 
Untuk lebih jelasnya lihatlah program berikut yang ditulis dalam event OnClick dari tombol Label. 
procedure TForm1.Tbl_Label5Click(Sender: TObject);
label
A;
var
i:integer;
begin
Memo1.Clear;
i:=0;
A:
i:=i+1;
Memo1.Lines.Add(IntToStr(i));
if i<10 then
Goto A;
End;
 
PERULANGAN TERSARANG (PERULANGAN DALAM PERULANGAN) 
Perulangan tersarang (nested loop) adalah suatu perulangan dimana di dalam perulangan tersebut ada 
perulangan lain. Perulangan yang di ada di bagian terdalam, maka akan dikerjakan dulu sampai selesai 
baru mengerjakan perulangan yang ada diluarnya. 
Nested loop bisa merupakan kombinasi antara For To Do, For DownTo Do, Repeat Until, While Do. 
Contoh Program 
procedure TForm1.Tbl_TersarangClick(Sender: TObject);
var
i,j:integer;
begin
Memo1.Clear;
for i:=1 to 5 do
begin
j:=0;
while j<5 do
begin
j:=j+1;
Memo1.Lines.Add(IntToStr(i)+' X '+IntToStr(j)
+' = '+IntToStr(i*j));
end;
Memo1.Lines.Add('-------------------');
end;
end;
 
DIKTAT PERKULIAHAN PEMROGRAMAN II 
  BORLAND DELPHI  
 
  55 
 
PERULANGAN BANYAK KONDISI 
Perulangan dengan banyak kondisi adalah suatu perulangan dimana berjalannya suatu perulangan tidak 
hanya berdasarkan suatu kondisi saja tetapi bisa lebih dari satu kondisi. Operator yang bisa digunakan 
biasanya seperti And, Or, Not dan lain‐lain. 
Contoh Program : 
procedure TForm1.Tbl_BanyakKondisiClick(Sender: TObject);
var
i:integer;
total:integer;
begin
Memo1.Clear;
total:=0;
i:=0;
repeat
i:=i+1;
Total:=Total+i;
Memo1.Lines.Add('Isi I = '+IntToStr(i));
Memo1.Lines.Add('Isi Total = '+IntToStr(Total));
until (total>150)or(i>25);
end;
 
PERINTAH CONTINUE 
Perintah continue merupakan suatu mekanisme agar alur program melanjutkan perulangan ke iterasi 
berikutnya  dengan  tidak  mengeksekusi  perintah  yang  ada  di  bawahnya.  Perintah  ini  berlaku  untuk 
perulangan for, while do atau repeat until. 
Contoh Program : 
procedure TForm1.Tbl_ContinueClick(Sender: TObject);
var
i:integer;
begin
Memo1.Clear;
for i:=1 to 20 do
begin
if (i>5)and(i<=10) then
continue;
memo1.Lines.Add(inttostr(i));
end;
end;
 
Perintah di atas akan melakukan perulangan dari 1 sampai 20 kecuali 6 s/d 10. 
 
PERINTAH BREAK 
Perintah break digunakan untuk menghentikan perulangan. Break berlaku pada perulangan for, while 
do, repeat until. Perintah di bawah break tidak akan dieksekusi. 
Contoh Program : 
procedure TForm1.Tbl_BreakClick(Sender: TObject);
var
i:integer;
DIKTAT PERKULIAHAN PEMROGRAMAN II 
  BORLAND DELPHI  
 
  56 
 
begin
Memo1.lines.Clear;
for i:=1 to 100 do
begin
if i>50 then
Break;
Memo1.Lines.add(inttostr(i));
end;
end;
 
Perintah di atas akan melakukan perulangan dari 1 sampai 100 tetapi akan berhenti ketika  counter I 
bernilai 50. 
 
KASUS : 
1. Buat suatu program untuk menentukan faktorial dan jumlah deret sampai ke N. Buat form sebagai 
berikut : 
Contoh Hasil : 
N : 5
Hasil yang didapat adalah : 
Faktorial : 120
Jumlah : 15
 
2. Buat suatu program untuk menghitung saldo akhir dari suatu tabungan dengan bunga dan jangka 
waktu tertentu : 
Contoh hasil : 
Saldo : 100000
Bunga : 10
Waktu : 3
 
Ketika user menekan tombol Hitung, maka akan muncul hasil seperti berikut di memonya. 
Saldo Bulan 1 = Rp. 110000
Saldo Bulan 2 = Rp. 121000
Saldo Bulan 3 = Rp. 133100
DIKTAT PERKULIAHAN PEMROGRAMAN II 
  BORLAND DELPHI  
 
  57 
 
 
3. Mirip  dengan  program  ke‐dua  hanya  input  yang  diberikan  adalah  :  Saldo  awal,  bunga  dan  saldo 
akhir. Dari ketiga input tersebut maka akan didapatkan lamanya jangka waktu yang diinginkan agar 
saldo mencapai saldo akhir. 
Contoh : 
Saldo Awal : 100000
Bunga : 10
Saldo Akhir : 150000
 
Maka hasil pada memonya adalah : 
Saldo Bulan 1 = Rp. 110,000
Saldo Bulan 2 = Rp. 121,000
Saldo Bulan 3 = Rp. 133,100
Saldo Bulan 4 = Rp. 146,410
Saldo Bulan 5 = Rp. 161,051
     
Form yang diinginkan : 
 
 

Contenu connexe

Tendances

Modul algoritma dan pemograman
Modul algoritma dan pemogramanModul algoritma dan pemograman
Modul algoritma dan pemograman
PANJI_ADITYAN
 

Tendances (17)

Laporan Praktikum Algoritma Pemrograman Modul II
Laporan Praktikum Algoritma Pemrograman Modul IILaporan Praktikum Algoritma Pemrograman Modul II
Laporan Praktikum Algoritma Pemrograman Modul II
 
Algoritma pemrograman
Algoritma pemrogramanAlgoritma pemrograman
Algoritma pemrograman
 
Pengulanganwhilealgoritma
PengulanganwhilealgoritmaPengulanganwhilealgoritma
Pengulanganwhilealgoritma
 
Looping Algoritma
Looping AlgoritmaLooping Algoritma
Looping Algoritma
 
Laporan praktikum modul ii & iii
Laporan praktikum modul ii & iiiLaporan praktikum modul ii & iii
Laporan praktikum modul ii & iii
 
Perulangan
PerulanganPerulangan
Perulangan
 
Tugas algoritma
Tugas algoritmaTugas algoritma
Tugas algoritma
 
Menerapkan struktur kontrol perulangan dalam bahasa pemrograman.
Menerapkan struktur kontrol perulangan dalam bahasa pemrograman.Menerapkan struktur kontrol perulangan dalam bahasa pemrograman.
Menerapkan struktur kontrol perulangan dalam bahasa pemrograman.
 
Topik 8 Perulangan
Topik 8 PerulanganTopik 8 Perulangan
Topik 8 Perulangan
 
Laporan hasil praktikum Alpro I Modul 1 (Pengenalan Pascal)
Laporan hasil praktikum Alpro I Modul 1 (Pengenalan Pascal)Laporan hasil praktikum Alpro I Modul 1 (Pengenalan Pascal)
Laporan hasil praktikum Alpro I Modul 1 (Pengenalan Pascal)
 
Algoritma perulangan
Algoritma perulanganAlgoritma perulangan
Algoritma perulangan
 
Modul algoritma dan pemograman
Modul algoritma dan pemogramanModul algoritma dan pemograman
Modul algoritma dan pemograman
 
Modul praktikum c++
Modul praktikum c++Modul praktikum c++
Modul praktikum c++
 
pemrograman php ii
pemrograman  php iipemrograman  php ii
pemrograman php ii
 
Struktur Runtunan Algoritma
Struktur Runtunan AlgoritmaStruktur Runtunan Algoritma
Struktur Runtunan Algoritma
 
Perulangan atau looping dalam java
Perulangan atau looping dalam javaPerulangan atau looping dalam java
Perulangan atau looping dalam java
 
Dasar dasar algoritma - 2
Dasar dasar algoritma - 2Dasar dasar algoritma - 2
Dasar dasar algoritma - 2
 

En vedette

Proyecto Resolucion de problemas.
Proyecto Resolucion de problemas.Proyecto Resolucion de problemas.
Proyecto Resolucion de problemas.
Lis Metalcorpse
 
Sylvastas
SylvastasSylvastas
Sylvastas
Ro0kie
 
Marketing with Facebook and Twitter
Marketing with Facebook and TwitterMarketing with Facebook and Twitter
Marketing with Facebook and Twitter
Lively Librarian
 
Business card side by side 1
Business card side by side 1Business card side by side 1
Business card side by side 1
sgkelley95
 
Kiến trúc máy tính và hợp ngữ bài 02
Kiến trúc máy tính và hợp ngữ bài 02Kiến trúc máy tính và hợp ngữ bài 02
Kiến trúc máy tính và hợp ngữ bài 02
Nhóc Nhóc
 

En vedette (20)

Proyecto Resolucion de problemas.
Proyecto Resolucion de problemas.Proyecto Resolucion de problemas.
Proyecto Resolucion de problemas.
 
Databases for Business
Databases for BusinessDatabases for Business
Databases for Business
 
Kurt_Okuma MA-600
Kurt_Okuma MA-600Kurt_Okuma MA-600
Kurt_Okuma MA-600
 
Sylvastas
SylvastasSylvastas
Sylvastas
 
Admitidos
AdmitidosAdmitidos
Admitidos
 
RIO TINTO PLC 2015
RIO TINTO PLC 2015RIO TINTO PLC 2015
RIO TINTO PLC 2015
 
Marketing with Facebook and Twitter
Marketing with Facebook and TwitterMarketing with Facebook and Twitter
Marketing with Facebook and Twitter
 
Azizi normes de rédaction d'une bibliographie
Azizi normes de rédaction d'une bibliographieAzizi normes de rédaction d'une bibliographie
Azizi normes de rédaction d'une bibliographie
 
Twitter for Business
Twitter for BusinessTwitter for Business
Twitter for Business
 
Business card side by side 1
Business card side by side 1Business card side by side 1
Business card side by side 1
 
Молдова XX век борьба против-фашистского нашествия 1941–-1945-гг. Moldova ...
Молдова XX век борьба  против-фашистского  нашествия 1941–-1945-гг.  Moldova ...Молдова XX век борьба  против-фашистского  нашествия 1941–-1945-гг.  Moldova ...
Молдова XX век борьба против-фашистского нашествия 1941–-1945-гг. Moldova ...
 
Vertov et le cinéma vérité
Vertov et le cinéma véritéVertov et le cinéma vérité
Vertov et le cinéma vérité
 
Franklin pashelle final pitch
Franklin pashelle  final pitch Franklin pashelle  final pitch
Franklin pashelle final pitch
 
Trabalho de estatística e probabilidade
Trabalho de estatística e probabilidadeTrabalho de estatística e probabilidade
Trabalho de estatística e probabilidade
 
Relevance, Not Loyalty
Relevance, Not LoyaltyRelevance, Not Loyalty
Relevance, Not Loyalty
 
Lodha Fiorenza Signature Duplex Sky Villas - Goregaon East
Lodha Fiorenza Signature Duplex Sky Villas - Goregaon EastLodha Fiorenza Signature Duplex Sky Villas - Goregaon East
Lodha Fiorenza Signature Duplex Sky Villas - Goregaon East
 
garcilaso
garcilasogarcilaso
garcilaso
 
Kiến trúc máy tính và hợp ngữ bài 03
Kiến trúc máy tính và hợp ngữ bài 03Kiến trúc máy tính và hợp ngữ bài 03
Kiến trúc máy tính và hợp ngữ bài 03
 
Google Tools for Business
Google Tools for BusinessGoogle Tools for Business
Google Tools for Business
 
Kiến trúc máy tính và hợp ngữ bài 02
Kiến trúc máy tính và hợp ngữ bài 02Kiến trúc máy tính và hợp ngữ bài 02
Kiến trúc máy tính và hợp ngữ bài 02
 

Similaire à Dasar dasar perulangan_delphi

Belajar perulangan di delphi 7
Belajar perulangan di delphi 7Belajar perulangan di delphi 7
Belajar perulangan di delphi 7
Elan Mailiyanto
 

Similaire à Dasar dasar perulangan_delphi (20)

3. teknik looping dalam_pemrograman
3. teknik looping dalam_pemrograman3. teknik looping dalam_pemrograman
3. teknik looping dalam_pemrograman
 
Logika algoritma dan pemograman
Logika algoritma dan pemogramanLogika algoritma dan pemograman
Logika algoritma dan pemograman
 
Muhammad ilham,1610530168,kls d
Muhammad ilham,1610530168,kls dMuhammad ilham,1610530168,kls d
Muhammad ilham,1610530168,kls d
 
Logika algoritma dan pemograman
Logika algoritma dan pemogramanLogika algoritma dan pemograman
Logika algoritma dan pemograman
 
Makalah perulangan
Makalah perulanganMakalah perulangan
Makalah perulangan
 
Modul Delphi ,buat pemula
Modul Delphi ,buat pemulaModul Delphi ,buat pemula
Modul Delphi ,buat pemula
 
materi 6.pptx
materi 6.pptxmateri 6.pptx
materi 6.pptx
 
materi9 perulangan (looping).ppt
materi9 perulangan (looping).pptmateri9 perulangan (looping).ppt
materi9 perulangan (looping).ppt
 
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunusTifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
Tifanieindahyulianti 1610530183 tugasperulangan_algoritma_muhammadyunus
 
Alwin pascal-01
Alwin pascal-01Alwin pascal-01
Alwin pascal-01
 
Alwin pascal-01
Alwin pascal-01Alwin pascal-01
Alwin pascal-01
 
Alwin pascal-01
Alwin pascal-01Alwin pascal-01
Alwin pascal-01
 
PBO Pert 5 Praktek
PBO Pert 5 PraktekPBO Pert 5 Praktek
PBO Pert 5 Praktek
 
PBO - Pert 5, Mengenal dan Memahami Konsep Perulangan Pada Java
PBO - Pert 5, Mengenal dan Memahami Konsep Perulangan Pada JavaPBO - Pert 5, Mengenal dan Memahami Konsep Perulangan Pada Java
PBO - Pert 5, Mengenal dan Memahami Konsep Perulangan Pada Java
 
Praktikum 4B
Praktikum 4BPraktikum 4B
Praktikum 4B
 
Laporan praktikum modul iv
Laporan praktikum modul ivLaporan praktikum modul iv
Laporan praktikum modul iv
 
Belajar perulangan di delphi 7
Belajar perulangan di delphi 7Belajar perulangan di delphi 7
Belajar perulangan di delphi 7
 
Diktat borlanddelphi 7
Diktat borlanddelphi 7Diktat borlanddelphi 7
Diktat borlanddelphi 7
 
Diktat borlanddelphi 7
Diktat borlanddelphi 7Diktat borlanddelphi 7
Diktat borlanddelphi 7
 
Pemograman delphi untuk pemula
Pemograman delphi untuk pemula Pemograman delphi untuk pemula
Pemograman delphi untuk pemula
 

Plus de radar radius

Plus de radar radius (20)

Gas Air Mata: Zat Kimia, Metode Penyebaran, dan Efek.docx
Gas Air Mata: Zat Kimia, Metode Penyebaran, dan Efek.docxGas Air Mata: Zat Kimia, Metode Penyebaran, dan Efek.docx
Gas Air Mata: Zat Kimia, Metode Penyebaran, dan Efek.docx
 
IPA SMP_KK C.pdf
IPA SMP_KK C.pdfIPA SMP_KK C.pdf
IPA SMP_KK C.pdf
 
IPA SMP_KK B.pdf
IPA SMP_KK B.pdfIPA SMP_KK B.pdf
IPA SMP_KK B.pdf
 
الإيمان
الإيمانالإيمان
الإيمان
 
Wahyu
WahyuWahyu
Wahyu
 
Urutan peristiwa kiamat besar
Urutan peristiwa kiamat besarUrutan peristiwa kiamat besar
Urutan peristiwa kiamat besar
 
Toleransi
ToleransiToleransi
Toleransi
 
Toleransi (hadis)
Toleransi (hadis)Toleransi (hadis)
Toleransi (hadis)
 
Tauhid dalam konsep islam
Tauhid dalam konsep islamTauhid dalam konsep islam
Tauhid dalam konsep islam
 
Tajwid (mad)
Tajwid (mad)Tajwid (mad)
Tajwid (mad)
 
Qurdis 7 1
Qurdis 7 1Qurdis 7 1
Qurdis 7 1
 
Qurban
QurbanQurban
Qurban
 
Problematika dakwah
Problematika dakwahProblematika dakwah
Problematika dakwah
 
Melestarikan alam (hadis)
Melestarikan alam (hadis)Melestarikan alam (hadis)
Melestarikan alam (hadis)
 
Materi qurdis IX 2
Materi qurdis IX 2Materi qurdis IX 2
Materi qurdis IX 2
 
Materi Quran Hadits VIII 2
Materi Quran Hadits VIII 2Materi Quran Hadits VIII 2
Materi Quran Hadits VIII 2
 
Fenomena alam kiamat
Fenomena alam kiamatFenomena alam kiamat
Fenomena alam kiamat
 
Materi Quran Hadist IX 2
Materi Quran Hadist IX 2Materi Quran Hadist IX 2
Materi Quran Hadist IX 2
 
Doa nur buwwah lengkap
Doa nur buwwah lengkapDoa nur buwwah lengkap
Doa nur buwwah lengkap
 
Gerak pada Tumbuhan dan Hewan
Gerak pada Tumbuhan dan HewanGerak pada Tumbuhan dan Hewan
Gerak pada Tumbuhan dan Hewan
 

Dasar dasar perulangan_delphi

  • 1. DIKTAT PERKULIAHAN PEMROGRAMAN II    BORLAND DELPHI       50    BAB VII  PERULANGAN    PENDAHULUAN  Salah satu kegunaan dari komputer adalah untuk melakukan proses yang berulang. Bagi manusia proses  berulang  bisa  menjadi  satu  hal  yang  melelahkan,  sehingga  bisa  membuat  proses  menghasilkan  kesalahan karena ketidakkonsentrasian atau kelalaian. Oleh karena itu di semua bahasa pemrograman  pasti memiliki mekanisme untuk melakukan perulangan. Demikian dengan juga dengan Delphi. Di Delphi  perulangan dapat dilakukan dengan beberapa cara, diantaranya :  ‐ Perulangan  menggunakan  Counter/Pencacah  sebagai  kendali  perulangannya.  Perulangan  dengan  cara ini dapat dilakukan dengan menggunakan pernyataan : For To Do atau For DownTo Do.  ‐ Perulangan menggunakan Kondisi Boolean sebagai kendali perulangannya. Perulangan dengan cara  ini dilakukan dengan menggunakan pernyataan : While Do, atau Repeat Until.  ‐ Perulangan menggunakan Label. (cara ini tidak disarankan untuk digunakan. Label akan diterangkan  sekedar untuk pembelajaran saja).  Untuk  lebih  memahami  perulangan,  buatlah  form  seperti  di  bawah  ini  yang  akan  digunakan  untuk  mendemonstrasikan berbagai jenis perulangan. 
  • 2. DIKTAT PERKULIAHAN PEMROGRAMAN II    BORLAND DELPHI       51          Komponen Memo digunakan untuk menampung data string lebih dari 1 baris. Memo bisa  diidentikan dengan program Notepad.  Memo bisa digunakan untuk membuat editor teks.    Ada beberapa metode yang dapat digunakan untuk mengolah/memanipulasi memo yaitu :  ‐ Memo.Lines.Add(s:string),  digunakan  untuk  menambah  baris  baru  di  baris  terakhir.  Parameternya harus string. Jika ingin menuliskan angka, maka harus dikonversi dulu.  ‐ Memo.Clear, digunakan untuk menghapus semua baris yang ada dalam memo.    Properti yang biasa dimodifikasi diantaranya :  ‐ Lines, properties yang menyimpan baris‐baris yang ada dalam memo  ‐ Alignment, digunakan untuk menentukan alignment baris (Left, Right, Center)  ‐ ScrollBars, digunakan untuk menentukan scrollbar mana yang akan ditampilkan (None,  Vertikal, Horizontal, Both/Keduanya)      Properties :  ScrollBars=ssBoth 
  • 3. DIKTAT PERKULIAHAN PEMROGRAMAN II    BORLAND DELPHI       52    PERULANGAN FOR TO DO  Perulangan  For  To  Do  merupakan  perulangan  yang  menggunakan  kendali  perulangannya  berupa  counter/pencacah. Counter akan menjalankan perulangan dimulai dari nilai awal yang diberikan sampai  counter mencapai nilai akhirnya. Syarat terjadinya perulangan adalah nilai awal counter harus lebih kecil  atau sama dengan nilai akhir counter.  Bentuk umum dari perulangan ini adalah :  For counter := nilai awal To Nilai akhir Do Begin Perintah; Perintah; End;   Contoh Program yang ditulis dalam event OnClick dari tombol For To Do  procedure TForm1.Tbl_ForToDoClick(Sender: TObject); var i:integer; c:char; begin Memo1.Clear; for i:=1 to 10 do Memo1.Lines.Add(IntToStr(i)); for c:='A' to 'Z' do Memo1.Lines.Add(c); end;   PERULANGAN FOR DOWNTO DO  Perulangan  ini  sama  seperti  perulangan  dengan  menggunakan  For  To  Do  tetapi  arah  isi  counternya  berkurang (mundur/turun).  Bentuk umum dari perulangan ini adalah :  For counter := nilaiawal DownTo Nilaiakhir Do Begin Perintah; Perintah; End; Perulangan ini akan berulang selama nilai variabel counter masih lebih besar atau sama dengan nilai  akhir. Nilai awal suatu counter harus lebih besar atau sama dengan daripada nilai akhirnya.  Contoh Program yang ditulis dalam event OnClick dari tombol For To Do  procedure TForm1.Tbl_FormDownToDoClick(Sender: TObject); var i:integer; c:char; begin Memo1.Clear; for i:=10 downto 1 do Memo1.Lines.Add(IntToStr(i)); for c:='Z' downto 'A' do Memo1.Lines.Add(c); end;  
  • 4. DIKTAT PERKULIAHAN PEMROGRAMAN II    BORLAND DELPHI       53    PERULANGAN REPEAT UNTIL  Perulangan ini bekerja sampai kondisi yang diinginkan tercapai. Perulangan ini bisa digunakan sebagai  perulangan yang menggunakan banyak kondisi keluar (multi condition loop).  Bentuk umum :  Repeat Perintah; Perintah; Until Kondisi;   Contoh Program  procedure TForm1.Tbl_RepeatUntilClick(Sender: TObject); var i:real; begin Memo1.Clear; i:=0; repeat i:=i+0.5; Memo1.Lines.Add(FloatToStr(i)); until i=10; end;   Perulangan ini berulang sampai kondisi yang ada setelah until mempunyai nilai true. Jadi repeat until  berjalan selama kondisi salah sampai kondisi benar.  Pengecekan kondisi berada di bagian bawah yaitu setelah until sehingga semua program yang memakai  perulangan ini akan melakukan minimal 1 kali proses perulangan.    PERULANGAN WHILE DO  Perulangan  ini  mirip  dengan  perulangan  Repeat  Until  tetapi pengecekannya berada  di  awal  sebelum  melakukan proses yang berulang. Perulangan ini berjalan selama kondisi pengecekan bernilai true. Jika  kondisi telah mempunyai nilai false maka perulangan tidak dilakukan lagi.  Bentuk umum dari While Do adalah seperti berikut :  While kondisi do Begin Perintah; Perintah; End;   Contoh program while do yang ditulis pada event onclick dari tombol While Do.  procedure TForm1.Tbl_WhileDoClick(Sender: TObject); var i:real; begin Memo1.Clear; i:=0; while i<10 do
  • 5. DIKTAT PERKULIAHAN PEMROGRAMAN II    BORLAND DELPHI       54    begin i:=i+0.5; Memo1.Lines.Add(FloatToStr(i)); end; end;   PERULANGAN LABEL  Label adalah suatu perintah untuk memandai suatu baris program. Untuk pindah ke posisi yang ditandai  oleh label, maka digunakan perintah Goto.  Untuk lebih jelasnya lihatlah program berikut yang ditulis dalam event OnClick dari tombol Label.  procedure TForm1.Tbl_Label5Click(Sender: TObject); label A; var i:integer; begin Memo1.Clear; i:=0; A: i:=i+1; Memo1.Lines.Add(IntToStr(i)); if i<10 then Goto A; End;   PERULANGAN TERSARANG (PERULANGAN DALAM PERULANGAN)  Perulangan tersarang (nested loop) adalah suatu perulangan dimana di dalam perulangan tersebut ada  perulangan lain. Perulangan yang di ada di bagian terdalam, maka akan dikerjakan dulu sampai selesai  baru mengerjakan perulangan yang ada diluarnya.  Nested loop bisa merupakan kombinasi antara For To Do, For DownTo Do, Repeat Until, While Do.  Contoh Program  procedure TForm1.Tbl_TersarangClick(Sender: TObject); var i,j:integer; begin Memo1.Clear; for i:=1 to 5 do begin j:=0; while j<5 do begin j:=j+1; Memo1.Lines.Add(IntToStr(i)+' X '+IntToStr(j) +' = '+IntToStr(i*j)); end; Memo1.Lines.Add('-------------------'); end; end;  
  • 6. DIKTAT PERKULIAHAN PEMROGRAMAN II    BORLAND DELPHI       55    PERULANGAN BANYAK KONDISI  Perulangan dengan banyak kondisi adalah suatu perulangan dimana berjalannya suatu perulangan tidak  hanya berdasarkan suatu kondisi saja tetapi bisa lebih dari satu kondisi. Operator yang bisa digunakan  biasanya seperti And, Or, Not dan lain‐lain.  Contoh Program :  procedure TForm1.Tbl_BanyakKondisiClick(Sender: TObject); var i:integer; total:integer; begin Memo1.Clear; total:=0; i:=0; repeat i:=i+1; Total:=Total+i; Memo1.Lines.Add('Isi I = '+IntToStr(i)); Memo1.Lines.Add('Isi Total = '+IntToStr(Total)); until (total>150)or(i>25); end;   PERINTAH CONTINUE  Perintah continue merupakan suatu mekanisme agar alur program melanjutkan perulangan ke iterasi  berikutnya  dengan  tidak  mengeksekusi  perintah  yang  ada  di  bawahnya.  Perintah  ini  berlaku  untuk  perulangan for, while do atau repeat until.  Contoh Program :  procedure TForm1.Tbl_ContinueClick(Sender: TObject); var i:integer; begin Memo1.Clear; for i:=1 to 20 do begin if (i>5)and(i<=10) then continue; memo1.Lines.Add(inttostr(i)); end; end;   Perintah di atas akan melakukan perulangan dari 1 sampai 20 kecuali 6 s/d 10.    PERINTAH BREAK  Perintah break digunakan untuk menghentikan perulangan. Break berlaku pada perulangan for, while  do, repeat until. Perintah di bawah break tidak akan dieksekusi.  Contoh Program :  procedure TForm1.Tbl_BreakClick(Sender: TObject); var i:integer;
  • 7. DIKTAT PERKULIAHAN PEMROGRAMAN II    BORLAND DELPHI       56    begin Memo1.lines.Clear; for i:=1 to 100 do begin if i>50 then Break; Memo1.Lines.add(inttostr(i)); end; end;   Perintah di atas akan melakukan perulangan dari 1 sampai 100 tetapi akan berhenti ketika  counter I  bernilai 50.    KASUS :  1. Buat suatu program untuk menentukan faktorial dan jumlah deret sampai ke N. Buat form sebagai  berikut :  Contoh Hasil :  N : 5 Hasil yang didapat adalah :  Faktorial : 120 Jumlah : 15   2. Buat suatu program untuk menghitung saldo akhir dari suatu tabungan dengan bunga dan jangka  waktu tertentu :  Contoh hasil :  Saldo : 100000 Bunga : 10 Waktu : 3   Ketika user menekan tombol Hitung, maka akan muncul hasil seperti berikut di memonya.  Saldo Bulan 1 = Rp. 110000 Saldo Bulan 2 = Rp. 121000 Saldo Bulan 3 = Rp. 133100
  • 8. DIKTAT PERKULIAHAN PEMROGRAMAN II    BORLAND DELPHI       57      3. Mirip  dengan  program  ke‐dua  hanya  input  yang  diberikan  adalah  :  Saldo  awal,  bunga  dan  saldo  akhir. Dari ketiga input tersebut maka akan didapatkan lamanya jangka waktu yang diinginkan agar  saldo mencapai saldo akhir.  Contoh :  Saldo Awal : 100000 Bunga : 10 Saldo Akhir : 150000   Maka hasil pada memonya adalah :  Saldo Bulan 1 = Rp. 110,000 Saldo Bulan 2 = Rp. 121,000 Saldo Bulan 3 = Rp. 133,100 Saldo Bulan 4 = Rp. 146,410 Saldo Bulan 5 = Rp. 161,051       Form yang diinginkan :