Dalam tutorial ini, kita akan mempelajari penggunaan perulangan While dan do…while Loop C++ dengan bantuan beberapa contoh.
Dalam pemrograman komputer, loop digunakan untuk mengulangi blok kode.
Misalnya, katakanlah kita ingin menampilkan pesan 100 kali. Maka alih-alih menulis pernyataan cetak 100 kali, kita bisa menggunakan satu loop atau perulangan.
Itu hanya contoh sederhana; kami dapat mencapai efisiensi dan kecanggihan yang jauh lebih dalam program kami dengan memanfaatkan While dan do…while Loop C++ secara efektif.
Ada 3 types dari loop pada C++ diantaranya adalah
for
loopwhile
loopdo...while
loops
C++ while
Loop
while (condition) {
//statement(s);
// body of the loop
}
Here,
while
loop mengacu atau mengevaluasi kecondition
- Jika
condition
mengacu ketrue
, kode yang di dalamwhile
loop dijalankan. -
condition
dievaluasi lagi. - Proses ini berlanjut hingga
condition
bernilaifalse
. - Ketika
condition
mengacu atau bernilaifalse
, loop berakhir.
Contoh 1:
// Program C ++ untuk mencetak angka dari 1 hingga 5
#include <iostream>
using namespace std;
int main() {
int i = 1;
// while loop from 1 to 5
while (i <= 5) {
cout << i << " ";
++i;
}
return 0;
}
Output
1 2 3 4 5
Kode diatas bekerja dengan
Iteration | Variable | i <= 5 | Action |
---|---|---|---|
1 | i = 1 | true | 1 dicetak dan i di tingkatkan menjadi 2 . |
2 | i = 2 | true | 2 dicetak dani di tingkatkan menjadi 3 . |
3 | i = 3 | true | 3 dicetak dan i di tingkatkan menjadi 4 |
4 | i = 4 | true | 4 dicetak dan i di tingkatkan menjadi 5 . |
5 | i = 5 | true | 5 dicetak dani di tingkatkan menjadi 6 . |
6 | i = 6 | false | Loop dihentikan |
Contoh 2:
// program untuk menemukan jumlah angka positif
// jika pengguna memasukkan angka negatif, loop berakhir
// angka negatif yang dimasukkan tidak ditambahkan ke jumlah
#include <iostream>
using namespace std;
int main() {
int number;
int sum = 0;
// take input from the user
cout << "Enter a number: ";
cin >> number;
while (number >= 0) {
// add all positive numbers
sum += number;
// take input again if the number is positive
cout << "Masukkan angka : ";
cin >> number;
}
// display the sum
cout << "\nJumlahnya adalah " << sum << endl;
return 0;
}
Output
Masukkan angka : 6 Masukkan angka : 12 Masukkan angka : 7 Masukkan angka : 0 Masukkan angka : -2 Jumlahnya adalah 25
Dalam program ini, pengguna diminta untuk memasukkan nomor, yang disimpan dalam variabel number
.
Untuk menyimpan jumlah angka, kami mendeklarasikan variabel sum
dan menginisialisasi ke nilai 0
.
Loop while
berlanjut sampai pengguna memasukkan angka negatif. Selama setiap iterasi, angka yang dimasukkan oleh pengguna ditambahkan ke variabel sum
.
Ketika pengguna memasukkan angka negatif, loop berakhir. Akhirnya, jumlah total ditampilkan.
C++ do
…while
Loop
Loop do
… while
merupakan varian dari while
loop dengan satu perbedaan penting: body do
… while
loop dieksekusi sekali sebelum kondisinya diperiksa.
Sintaksnya adalah:
do {
// body of loop;
}
while (condition);
Dimana,
- body loop dijalankan pada awalnya. Kemudian
condition
dievaluasi. - Jika
condition
bernilaitrue
, isi loop di dalam pernyataan do dieksekusi lagi. condition
dievaluasi sekali lagi.- Jika
condition
bernilaitrue
, isi loop di dalam pernyataando
dieksekusi lagi. - Proses ini berlanjut hingga
condition
bernilaifalse
. Kemudian loop berhenti.
Contoh 3:
// Program C ++ untuk mencetak angka dari 1 hingga 5
#include <iostream>
using namespace std;
int main() {
int i = 1;
// do...while loop from 1 to 5
do {
cout << i << " ";
++i;
}
while (i <= 5);
return 0;
}
Output
1 2 3 4 5
Kode diatas bekerja dengan
Iteration | Variable | i <= 5 | Action |
---|---|---|---|
0 | i = 1 | tidak diperiksa | 1 dicetak dan i ditingkatkan menjadi 2 |
1 | i = 2 | true | 2 dicetak dan i ditingkatkan menjadio 3 |
2 | i = 3 | true | 3 dicetak dan i ditingkatkan menjadi 4 |
3 | i = 4 | true | 4 dicetak dan i ditingkatkan menjadi 5 |
4 | i = 5 | true | 5 dicetak dan i ditingkatkan menjadi 6 |
5 | i = 6 | false | Loop dihentikan |
Contoh 4:
// program untuk menemukan jumlah angka positif
// Jika pengguna memasukkan angka negatif, loop berakhir
// angka negatif yang dimasukkan tidak ditambahkan ke jumlah
#include <iostream>
using namespace std;
int main() {
int number = 0;
int sum = 0;
do {
sum += number;
// take input from the user
cout << "Masukkan angka : ";
cin >> number;
}
while (number >= 0);
// display the sum
cout << "\nJumlahnya adalah " << sum << endl;
return 0;
}
Output 1
Masukkan angka : 6 Masukkan angka : 12 Masukkan angka : 7 Masukkan angka : 0 Masukkan angka : -2 Jumlahnya adalah 25
Di sini, loop do … while
terus berlanjut hingga pengguna memasukkan angka negatif. Ketika angkanya negatif, loop berakhir; angka negatif tidak ditambahkan ke variabel sum
.
Output 2
Masukkan angka -6 Jumlahnya adalah 0.
Body do … while
hanya berjalan sekali jika pengguna memasukkan angka negatif.