Dokumen membahas tentang perulangan atau looping dalam bahasa pemrograman, termasuk penjelasan tentang pernyataan for, while, do-while, nested loop, dan penggunaan pernyataan goto. Juga contoh kode program untuk menerangkan konsep-konsep tersebut.
Perulangan digunakan untuk memproses suatu statemen dalam sebuah program secara berulang-ulang atau terus menerus sampai ada kondisi untuk menghentikannya.
Sebuah program biasanya tidak terbatas hanya pada intruksi yang terurut saja, tetapi juga memungkinkan terjadinya percabangan, perulangan dan pengambilan keputusan. Untuk mengatasi kebutuhan itu C++ menyediakan struktur kontrol yang dapat menangani hal-hal tersebut.
Perulangan digunakan untuk memproses suatu statemen dalam sebuah program secara berulang-ulang atau terus menerus sampai ada kondisi untuk menghentikannya.
Sebuah program biasanya tidak terbatas hanya pada intruksi yang terurut saja, tetapi juga memungkinkan terjadinya percabangan, perulangan dan pengambilan keputusan. Untuk mengatasi kebutuhan itu C++ menyediakan struktur kontrol yang dapat menangani hal-hal tersebut.
2. Materi Tujuan
PROSES PERULANGAN (LOOPING)
Menjelaskan proses perulangan menggunakan for.
Menjelaskan proses perulangan menggunakan do-while.
Menjelaskan proses perulangan menggunakan while.
„
Menjelaskan loop di dalam loop (nested loop) dan contoh
kasusnya.
„
Menjelaskan penggunaan pernyataan goto.
3. Pernyataan For
Bentuk umum dari for
For (inisialisasi; penghenti; penaikan)
{
Pernyataan;
}
For (inisialisasi; penghenti; penaikan)
{
Pernyataan1;
.
.
Pernyataan2;
}
For dengan pernyataan majemuk :
4. Pernyataan For
Ungkapan1(inisialisasi): digunakan untuk memberikan
inisialisasi terhadap variabel pengendali loop.
„Ungkapan2 (penghenti): dipakai sebagai kondisi untuk
keluar dari loop.
„Ungkapan3 (penaikan/penurunan) : dipakai sebagai
pengatur kenaikan nilai variabel pengendaliloop.
Digunakan untuk membuat looping dengan jumlah perulangan yang
ditentukan di awal.
„
5. Contoh:
For ( ; ; )
{
Cout << i << endl;
}
i = 1; i <= n; i ++ F
O
R
6. Latihan FOR
#include <iostream>
#include <conio.h>
using namespace std;
int main ()
{
int i , n;
atas:
cout << " masukan bilangan bulat (n) : "; cin >> n;
for (i = 1; i <= n; i++)
{
cout << i << endl;
}
goto atas;
return 0;
}
7. Latihan FOR
#include <iostream>
#include <conio.h>
using namespace std;
int main ()
{
int i , n;
cout << " masukan bilangan bulat (n) : ";
cin >> n;
for (i = 1; i <= n; i++)
{
cout << i <<" Fiorentina " << endl;
}
return 0;
}
8. Latihan FOR
#include <iostream>
#include <conio.h>
using namespace std;
int main ()
{
int i , n;
cout << " masukan bilangan bulat (n) : ";
cin >> n;
for (i = n; i > 0; i--)
{
cout << i <<" Fiorentina " << endl;
}
return 0;
}
9. Perulangan adalah suatu bentuk pemrograman yang ringkas didalam menangani suatu
langkah yang berulang
Cth: cout << “C++” << endl;
Bagaimana bentuk perulangan dengan WHILE ?
Bentuk sederhana WHILE :
inisialisasi;
While (kondisi/penghenti)
{
Pernyataan;
Penaik;
}
Kondisi diuji terlebih dahulu; jika
kondisi bernilai benar maka bagian
pernyataan akan di eksekusi dan
kemudian kondisi di uji kembali
hingga kondisi bernilai salah
Perulangan WHILE
11. Contoh WHILE
#include <iostream>
#include <conio.h>
using namespace std;
int main ()
{
int i , n;
cout << " masukan bilangan bulat (n) : "; cin >> n;
i=1;
while (i <= n)
{
cout << i <<" Fiorentina " << endl;
i++;
}
return 0;
}
13. Contoh Program
#include <iostream>
using namespace std;
int main() {
int i, n;
cout << "Masukkan bilangan bulat (n): “; cin >> n;
i = 1;
while (i <= n) {
cout << i <<“ Fiorentina” << endl;
i++;
}
return 0;
}
14. i = 1;
while ( i <= n) {
cout << i << endl;
i++;
}
Biasanya melibatkan variabel pencacah (i) dan variabel lain (n)
Inisialisasi variabel pencacah
Kondisi penentu perulangan
Pernyataan untuk menampilkan
nilai yg diulang
Menaikan/menurun nilai
variabel pencacah
Variabel pencacah
15. Jika anda menginginkan tampilan yg terbalik :
i = n;
while ( i >0) {
cout << i << endl;
i--;
}
16. VARIABEL PENCACAH TIDAK HARUS BERUPA SATU
#include <iostream>
using namespace std;
int main() {
int i, n;
cout << "Masukkan bilangan bulat (n): "; cin >> n;
i = 1;
while (i <= n) {
cout << i << endl;
i = i + 2;
}
return 0;
}
18. Menampilkan bilangan 1 ke N yang habis dibagi
Pada kasus seperti ini maka harus dipikirkan dulu solusi yang tdk melibatkan
perkecualian; setelah itu tambahkan IF didalam WHILE.
int main() {
int i, n;
cout << "Masukkan bilangan bulat (n): ";
cin >> n;
i = 1;
while (i <= n) {
if (i % 5)
cout << i << endl;
i = i + 1;
}
return 0;
}
19. int main() {
int i, bil, n;
cout << "Masukkan bilangan bulat (n): ";
cin >> n;
i = 1;
bil = 0;
while (true) {
bil = bil + i;
if (bil > n)
break; // Keluar dari while
cout << bil << endl;
i = i + 1;
}
return 0;
}
20. Hal yang menarik pada latihan diatas adalah kondisi whie menggunakan konstanta boolean
bernama true, dilihat sekilas while dgn kondisi true akan menyebabkan perulangan yg tdk
berhenti,.
i = 1;
bil = 0;
while (true) {
bil = bil + i;
cout << bil << endl;
i = i + 1;
}
return 0;
}
Membuat perulangan selamanya; maka perlu
penanganan utk keluar dari perulangan
Mekanisme utk
keluar dari while if (bil > n)
break;
21. Pernyataan continue dalam while
Pernyataan continue digunakan utk mengarahkan eksekusi kebagian kodisi while; artinya
pernyataan tersebut akan membuat bagian kondisi diuji kembali.
While (kondisi) {
…
…
}
Bagian tersisa diabaikan
Continue;
22. int main() {
int bil;
bil = 7;
while (bil <= 30) {
cout << bil << endl;
if (bil == 10) {
bil = bil + 15;
continue;
}
bil++;
}
return 0;
}
Contoh:
Perhatikan pada hasil yg didapat tidak ada angka
11hingga 24; hal tersebut karena akibat adanya perintah
23. PERULANGAN DENGAN DO-WHILE
Bentuk umum pernyataan do-while adalah seperti berikut:
inisialisasi;
Do {
Pernyataan
penaik;
} while (kondisi/penghenti);
Berbeda dengan while, do-while menjalankan bagian pernyataan terlebih dahulu dan kemudian
menguji kondisi; sehingga paling tidak bagian pernyataan dari do-while akan dijalankan sekali.
25. Contoh DO-WHILE
int main ()
{
int i , n;
cout << " masukan bilangan bulat (n) : "; cin >> n;
i=0;
do
{
cout << i <<" Fiorentina " << endl;
i++;
}
while (i<=n);
return 0;
}
26. int main() {
int bil;
bool salah;
do {
cout << "Masukkan bilangan bulat: ";
cin >> bil;
salah = cin.fail();
if (salah)
cout << "Anda salah memasukkan bilangan!" << endl;
cin.clear(); // Hapus kesalahan kalau , // sebelumnya terjadi
cin.ignore(255,'n'); // Buang karakter tersisa, // termasuk newline
} while (salah);
cout << "Bilangan yang Anda masukkan: " << bil << endl;
return 0;
}
27. code Hexadecimal perubah warna
0 = Black
1 = Blue
2 = Green
3 = Aqua
4 = Red
5 = Purple
6 = Yellow
7 = White
8 = Gray
9 = Light Blue
A = Light Green
B = Light Aqua
C = Light Red
D = Light Purple
E = Light Yellow
F = Light White
28. Contoh
#include<iostream> //library input output stream, yang digunakan untuk support cout dan cin
#include<Windows.h>
using namespace std; //Baris ini memberitahu kompilator untuk menggunakan sekelompok fungsi std
int main()
{
system("color 8C");
cout<< “Algoritma dan Pemrograman II "<<endl<<endl;
system("pause");
return 0;
}
29. #include <stdio.h>
#include <windows.h> // include untuk pemberian warna
int main (){
int count;
HANDLE hConsole;
hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
for (count=0; count<257; count++)
{ SetConsoleTextAttribute(hConsole, count);
printf ("Warna pada nomer %in",count);
}
SetConsoleTextAttribute(hConsole, 7);
system ("pause");
return 0;
}
30. #include <iostream> // standard library buat cout dan cin
#include <conio.h> //standard library buat getch();
#include <windows.h> //standard library buat tipe data HANDLE, fungsi GetStdHandle dan prosedur
SetConsoleTextAtrribute
using namespace std;
void setcolor(unsigned short color)
{
HANDLE hCon = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(hCon,color);
}
int main()
{
cout<<"Warna Text Default"<<endl; //menamppilkan kalimat “Warna Text Default”
setcolor(10); //Mengeset warna text menjadi warna hijau
cout<<"Warna Text Hijau"<<endl;
setcolor(21);
cout<<"Contoh Text Berwarna Dengan Block"<<endl;
setcolor(37);
cout<<"Warna Text Kembali Seperti Default"<<endl;
getch(); //menahan sekuensi program bisa juga dibilang menunggu inputan dri user
}
31. #include<Windows.h>//processor
#include<iostream> //library input output stream, yang digunakan untuk support cout dan cin
using namespace std;
void setcolor(unsigned short color) //fungsi untuk pemberian warna
{
HANDLE hCon = GetStdHandle(STD_OUTPUT_HANDLE);//membuat objek hCon
SetConsoleTextAttribute(hCon,color);//program untuk merubah warna,color akan diganti
dengan nilai i nantinya
}
int main(){
int i;
for(i=0;i<300;i++){
setcolor(i);//panggil fungsi setcolor dan beri nilai warnasesuai looping i
cout<<"Warna "<<i <<"t";
}
system("pause");
return 0;
}
32. TUGAS
Gunakan while untuk menyelesaikan kasus berikut :
Notasi diatas identik dengan 1+2+3+…. +n;
Algoritma untuk menyelesaikan persoalan seperti itu adalah sbb:
1. Ambil sebuah bilangan bulat dari keyboard dan simpan di N
2. Berikan nilai 1 ke variabel pencacah I .
3. Berikan nilai 0 ke variabel pencatat jumlah nilai bernama jum.
4. While I <= N
5. Tambahkan I ke jum dan simpan kembali ke jum
6. Naikan isi I sebesar 1
33. Gunakan while untuk menyelesaikan kasus berikut :
Notasi diatas identik dengan 1x2x3x…. X(n-1)xn;
Algoritma untuk menyelesaikan n faktorial adalah sbb:
1. Ambil sebuah bilangan bulat dari keyboard dan simpan di N
2. Berikan nilai 1 ke variabel pencacah I .
3. Berikan nilai 1 ke variabel pencatat hasil perkalian bernama hasil .
4. While I < N
5. Kalikan I ke hasil dan simpan kembali ke hasil.
6. Naikan isi I sebesar 1
N! didefinisikan sebagai berikut :