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="">
|
{
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="">
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