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. Terdapat tiga macam statement perulangan yang dapat
digunakan yaitu statement FOR, statement DO..WHILE, dan statement WHILE. Masing-masing
statement digunakan pada jenis perulangan yang berbeda, meski untuk menyelesaikan
sebuah kasus, statement perulangan dapat diganti dengan statement perulangan
yang lain.
Perulangan/Statement For.
Perulangan dengan statement For digunakan untuk
mengulang statement atau suatu blok statement berulang kali. Dengan kata lain,
pernyataan ini digunakan bila Anda sudah tahu berapa kali Anda akan mengulang
satu atau beberapa pernyataan.
1. Perulangan For, yang sifatnya menaik(increment)
Bentuk umum
dari perulangan For adalah sebagai berikut:
for (variable=
nilai_awal; kondisi; variable++)
{
Statement/pernyataan
yang akan diulang;
}
|
Pada bentuk FOR diatas:
- Nilai
awal dari variable yang kita definisikan haruslah lebih kecil dari nilai
akhir yang dituliskan pada kondisi(ekspresi). Kalau nilai_akhir lebih
kecil daripada nilai_awal, maka bagain pernyataan tidak dijalankan sama
sekali.
- Kondisi
adalah untuk menyatakan keluar dari proses looping.
- Variable++
adalah pengatur kenaikan atau penurunan nilai variable pengendali looping.
Supaya lebih jelas penggunaan statement FOR,
perhatikan beberapa contoh kasus berikut:
Contoh kasus 1
:
Misalakan Anda diminta untuk membuat algoritma dan
program menampilkan angka/bilangan 1 sampai 10 dengan penambahan 1.
Penyelesaian:
Algoritma dari masalah tersebut adalah:
1.
Tentukan nilai awal, batas akhir
dan pertambahan nilai
2.
Cetak bilangan
3.
Ulangi langkah 1 sampai batas
akhir
Penjelasan:
Pada baris pertama, Anda menentukan nilai awal
bilangan, karena masalah diatas anka yang akan ditampilkan mulai dari 1.
Bilangan tersebut disimpan dalam variable n. Kemudian batas bilangan ditentukan
angka 10 dan prosses pertambahannya adalah 1. Proses pertambahan sebanyak 1
pada C++ bisa ditulis n++. Setelah semua dilakukan, maka proses akan berlanjut
ke baris kedua dan ketiga yaitu mencetak bilangan itu sampai batas akhir dari
bilangan dan sampai semua syarat yang diminta dipenuhi.
Sedangkan implementasi dari algoritma diatas dalam
program adalah sebagai berikut:
Untuk menyelesaikan contoh kasus diatas, akan
menggunakan 2 macam cara yaitu: dengan menggunakan statement perulangan for dan
tanpa menggunakan statement perulangan.
(Tujuannya agar Anda dapat mengetahui efisiensi dan perbedaan dari penggunaan
statement for)
Cara 1: tanpa menggunakan statement FOR
//Program
Ulang01
#include
main()
{
cout<<”1”<
|
cout<<”2”<
cout<<”3”<
cout<<”4”<
cout<<”5”<
cout<<”6”<
cout<<”7”<
cout<<”8”<
cout<<”9”<
cout<<”10”<
return 0;
}
Jika
program dijalankan, maka hasilnya :
1
2
3
4
5
6
7
8
9
10
Press
any key to continue
Cara 2: menggunakan statement FOR
//Program
Ulang01
#include
main()
{
int n;
for(n=1;n<=10;n++)
cout<
|
return 0;
}
Jika
program dijalankan, maka hasilnya :
1
2
3
4
5
6
7
8
9
10
Press any key to continue
Bila Anda perhatikan dari kedua cara diatas dapat
Anda lihat bahwa kode program yang dihasilkan untuk menampilkan angka/bilangan
1 sampai dengan 10 akan lebih singkat jika menggunakan statement FOR
Contoh kasus 2:
Buatlah
program yang menampilkan tulisan “ Bahasa C++” sebanyak 5 kali.
Penyelesaian :
//Program
Ulang02
#include
main()
{
int n;
for(n=1;n<=5;n++)
cout<
|
return 0;
}
Jika
program dijalankan, maka hasilnya :
1 Bahasa C++
2 Bahasa C++
3 Bahasa C++
4 Bahasa C++
5 Bahasa C++
Press any key to
continue
Penjelasan : Berarti statement Bahasa C++ akan
diulang sebanyak 5 kali yaitu dengan menghitung nilai n dari n ke 1 sampai
nilai n terakhir yaitu i ke 5.
Contoh Kasus 3:
Buatlah program yang membaca sebuah angka positif
(integer) yang diinputkan lebih dari 1, dan menuliskan deret angka 1 sampai
dengan angka yang diinputkan tersebut !
Penyelesaian :
//Program ulang03
#include
main()
{
int c,n;
cout<<"Mau diulang berapa kali?";
cin>>n;
for(c=1;c<=n;c++)
cout<
|
cout<
return 0;
}
Jika program dijalankan,
maka hasilnya :
Mau diulang berapa kali? 7
1 2
3 4 5
6 7
Press any key to continue
Jika program dijalankan
dengan inputan yang berbeda, maka hasilnya:
Mau diulang berapa kali? 4
1 2 3
4
Press any key to continue
# Contoh dengan menggunakan blok statement:
Cara penulisannya dengan pada awal blok diawali
dengan tanda { dan pada akhir blok diakhiri dengan };
//Program Ulang00
#include
main()
{
int c;
for(c=1;c<=5;c++)
{
cout<<"Aku
Belajar"<
|
cout<<"Bahasa
C++"<
}
return 0;
}
Jika program dijalankan,
maka hasilnya:
Aku Belajar
Bahasa C++
Aku Belajar
Bahasa C++
Aku Belajar
Bahasa C++
Aku Belajar
Bahasa C++
Aku Belajar
Bahasa C++
Press any key to continue
2. Perulangan For yang sifatnya menurun(decrement)
Perulangan For yang sifatnya menurun adalah
perulangan dengan menghitung (counter) dari besar ke kecil. Bentuk Umum dari perulangan For yang sifatnya
menurun(decrement)
for (variable
= nilai_awal; kondisi; variable--)
{
Statement/pernyataan yang akan diulang;
}
|
contoh :
Buatlah program untuk menampilkan bilangan 10 sampai
dengan 1
Jawab:
//Program Ulang00
#include
main()
{
int c;
for(c=10;c>=1;c--)
cout<
|
return 0;
}
Hasil
:
10
9
8
7
6
5
4
3
2
1
Press
any key to continue
3. 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 :
//Program Ulang
#include
int main()
{
for(int j=1; j<=5; j++)
{
for (int k=1; k<=j; k++)
{
cout<
|
}
cout<
}
return 0;
}
Hasil
:
1
2 4
3 6 9
4 8 12
16
5 10 15
20 25
Press any key to continue
#
Perulangan while
1. Perulangan While
Statement while digunakan untuk melakukan proses
perulangan statement atau blok statement terus-menerus selama kondisi ungkapan
logika pada While masih bernilai logika benar.
Bentuk pernyataan WHILE :
while (kondisi)
{
Statement/pernyataan yang akan diulang;
}
|
Contoh Kasus :
Misalkan Anda diminta untuk membuat algoritma dan
program untuk menampilkan angka 10 sampai dengan 1.
Penyelesaian:
Algoritma dari masalah tersebut adalah:
- tentukan
nilai awal
- lakukan
proses pengulangan selama i>0
- cetak
bilangan
- ulangi
langkah 2 sampai batas akhir
Penjelasan:
Pada baris pertama, Anda tentukan nilai awal
bilangan, karena masalah diatas angka yang ditampilkan mulai angka 10. Bilangan
tersebut disimpan dalam variable i. Proses pengurangan sebanyak 1 dalam C++
bisa ditulis i--. Pada baris kedua akan dilakukan proses pengulangan dimana
bilangan yang akan dicetak melebihi 0, misalkan bilangan tersebut sama dengan 0
maka proses pengulangan akan terhenti. Setelah semua dilakukan, maka proses
akan berlanjut ke baris ketiga dan keempat yaitu mencetak bilangan itu sampai
batas dari pengulangan.
Sedangkan implementasi dari algoritma diatas dalam
program adalah sebagai berikut:
//Program Ulang
#include
int main()
{
int i;
i=10;
while(i>0)
{
cout<
|
i--;
}
return 0;
}
Hasilnya:
10
9
8
7
6
5
4
3
2
1
Press any key to continue
Contoh yang lain:
//Program Ulang
#include
int main()
{
int c;
c=0;
while(c<5 o:p="">5>
|
{
cout<
c++;
}
return 0;
}
Hasilnya
:
0Bahasa C++
1Bahasa C++
2Bahasa C++
3Bahasa C++
4Bahasa C++
Perulangan WHILE juga dapat bersifat
menurun(decrement). Contohnya sebagai berikut:
#include
int main()
{
int c;
c=4;
while(c>=1)
{
cout<
|
c--;
}
return 0;
}
Hasilnya:
4Bahasa C++
3Bahasa C++
2Bahasa C++
1Bahasa C++
Contoh Lain:
#include
int main()
{
double nilai=0.0;
double jumlah=0.0;
int i=0;
char lagi='y';
while((lagi=='y') || (lagi=='Y'))
{
cout<<"Masukkan ssembarang nilai=";
cin>> nilai;
++i;
jumlah+=nilai;
cout<<"ingin memasukkan nilai yang lain lagi?";
cin>>lagi;
}
cout<<"Anda
telah"<
|
cout<<"dengan nilai
rata-rata="<
return 0;
}
Hasilnya:
Masukkan
ssembarang nilai=4
ingin
memasukkan nilai yang lain lagi?y
Masukkan
ssembarang nilai=3
ingin
memasukkan nilai yang lain lagi?t
Anda
telah2kali memasukkan nilai
dengan
nilai rata-rata=3.5
Press
any key to continue
2. Perulangan while tersarang
Perulangan while tersarang (nested while) merupakan perulangan while yang satu di dalam perulangan while yang lainnya.
Contoh :
//Program Ulang00
#include
int main()
{
int c=5;
int k;
while(c>=1)
{
k=1;
while(k<=c)
{
cout<
|
k++;
}
cout<
c--;
}
return 0;
}
Hasilnya:
5 10 15
20 25
4 8 12
16
3 6 9
2 4
1
Press any key to continue
# Perulangan do..while
1. Perulangan Do While
Do..while
digunakan untuk mengulang statement-statement atau blok statement sampai
kondisi yang diseleksi pada while
tidak terpenuhi.
Sintak dari statement ini adalah :
do
{
Statement
yang akan diulang;
}
while(kondisi);
|
Contoh Kasus :
Misalkan Anda diminta untuk membuat algoritma dan
program untuk menampilkan tulisan Bahasa C++ sebanyak 5 kali dengan penambahan
sebanyak 1.
Penyelesaian:
Algoritma dari masalah diatas adalah:
- tentukan
nilai awal perhitungan=0
- lakukan
pengulangan
- nilai
perhitungan bertambah 1
- ulangi
langkah 3 sampai nilai perhitungan kurang dari 5
Penjelasan:
Pada baris pertama, Anda tentukan nilai awal
perhitungan, perhitungan akan dimulai dari 0. Perhitungan tersebut akan
disimpan pada variable c. kemudian pada baris kedua dan ketiga dilakukan
pengulangan dan mencetak tulisan “Bahasa C++”. Selama proses pencetakan
tulisan, pada baris keempat nilai perhitungan atau c akan bertambah 1 dan pengulangan
akan dilakukan terus menerus sampai nilai c < 5. Apabila c > 5, maka
proses pencetakan akan berhenti.
Sedangkan implementasi dari algoritma diatas dalam
program adalah sebagai berikut:
#include
int main()
{
int c=0;
do
{
cout<<"Bahasa C++"<
|
c++;
}while(c<5 o:p="">5>
return 0;
}
hasilnya
:
Bahasa
C++
Bahasa
C++
Bahasa
C++
Bahasa
C++
Bahasa
C++
Press
any key to continue
2. Perulangan do..while bersarang
#include
int main()
{
int
j=5;
int k;
do
{
k=1;
do
{
cout<
|
k++;
}
while
(k<=j);
cout<
j--;
}while
(j>=1);
return
0;
}
Hasilnya:
5 10 15
20 25
4 8 12
16
3 6 9
2 4
1
Press any key to continue
Lalu kapan kita menggunakan jenis perulangan for, while dan do while?
Singkatnya,
for digunakan untuk perulangan yang jumlah perulangannya sudah pasti. For ini perulangan yang dilakukan terus hingga jumlah iterasi sesuai dengan batas maksimal.
while digunakan untuk perulangan yang jumlah iterasinya tidak diketahui karena mengandalkan pada kondisi true. Perulangan ini dilakukan terus hingga berapapun dan berhenti pada kondisi true (memenuhi syarat).
do.. while hampir sama dengan while, namun do while dilaksanakan minimal sekali karena kondisi perulangan ada pada akhir statement. sedangkan perulangan while mungkin saja tidak dilakukan sama sekali mengingat kondisi ada pada awal statement.
Sumber : materi smk telkom added by trisna
MY BLOG
BalasHapusMY CAMPUS
Terimakasih.. tulisannya sangat bermanfaat..
BalasHapusMy blog
My Campus
Terimakasih ini semua sangat bermanfaat
BalasHapus