Looping di C++
· For
· Nested for
· Tak terhingga
· Go to
· While
· Do while
· Break
Operasi perulangan selalu dijumpai di dalam bahasa pemrograman. Di sini akan dibahas beberapa perintah perulangan itu.
Pernyataan For
Perulangan yang pertama adalah for. Bentuk umum pernyataan for adalah sebagai berikut:
for ( inisialisasi; syarat pengulangan; perubah nilai penacacah )
Bila pernyataan di dalam for lebih dari satu maka pernyataan-pernyataan tersebut harus diletakkan di dalam tanda kurung.
for ( inisialisasi; syarat pengulangan; pengubah nilai pencacah )
{
pernyataan / perintah;
pernyataan / perintah;
pernyataan / perintah;
}
Kegunaan dari masing-masing argumen for di atas adalah:
- Inisialisasi: bagian untuk memberikan nilai awal untuk variabelvariabel tertentu.
- Syarat Pengulangan: memegang kontrol terhadap pengulangan, karena bagian ini yang akan menentukan suatu perulangan diteruskan atau dihentikan.
- Pengubah Nilai Pencacah: mengatur kenaikan atau penurunan nilai pencacah.
Contoh:
Sebagai contoh, program untuk mencetak bilangan dari 1 hingga 10 secara menaik, secara menurun, dan menampilkan bilangan ganjil, adalah sebagai berikut:
/* Program for - bilangan naik */
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
void main()
{
int a;
for(a = 1; a <= 10; ++a)
cout«a;
getch ();
}
/* Program for - bilangan turun */
# include <stdio.h>
# include <conio.h>
# include <iostream.h>
void main()
{
int a;
for(a = 10; a >= 1; --a)
cout«a;
getch();
}
/* Program for - bilangan ganjil */
#include.<stdio.h>
#include <conio.h>
#include <iostream.h>
void main()
{
int a;
for(a = 1; a <= 10; a+=2)
cout«a;
getch();
}
/*Listing*/
#include<stdio.h>
#include<conio.h>
void main()
{
int a=2, b=1, c=2, d=1, e;
for(e=1; 17>e; e++)
{
gotoxy(e, e); textcolor(e);
cprintf("\nwarna ke-%d",e);
}
textcolor(4+BLINK); cprintf("Borland C++");
getche();
}
/*listing2*/
#include<stdio.h>
#include<conio.h>
int main(void)
{
int i;
for (i=0; i<20; i++)
{
textattr(i + ((i+l) « 4));
cprintf("Borland C++\r\n");
}
getch () ;
return 0;
}
· textattr () = Menentukan warna tulisan dan warnaa latar belakang berdasarkan ketentuan angka 8 bit biner, penataan warna.
· cprintf () = Menampilkan data dengan format pewamaan teks dan pewarnaan latar belakang .
Pernyataan Nested - For
Pernyataaan nested for adalah suatu perulangan for di dalam perulangan for
lainnya. Bentuk umum pernyataan nested for adalah sebagai berikut:
for ( inisialisasi; syarat pengulangan; pengubah nilai pencacah )
{
for ( inisialisasi; syarat pengulangan; pengubah nilai pencacah )
{
pernyataan / perintah;
}
}
Di dalain penggunaan nested-for, perulangan yang di dalam terlebih dahulu dihitung hingga selesai, baru kemudian perulangan yang di luar diselesaikan.
/*contoh Nested for*/
#include<stdio.h>
#include<conio.h>
#include <iostream.h>
void main()
{
int a, b;
for(a = 1; a <= 5; a++)
{
printf("\n");
for(b = a; b <= 5; b++)
cout<<a<<” ”;
}
getch ();
}
Dapat anda analisis mengapa hasilnya dapat menjadi seperti di atas. Berikut dapat dilihat tabel prosesnya
Tampilan hasil yang diperoleh dari perulangan di atas dapat anda lihat pada variable a. variable ini yang mencetak semua nilai yang ada pada variable a tersebut.
Perulangan Tidak Berhingga
Perulangan tak berhingga merupakan perulangan (loop) yang tak pernah berhenti, mengulang terus. Hal ini sering terjadi karena adanya kesalahan penanganan kondisi yang dipakai untuk keluar dari loop. Sebagai contoh, pada penulisan perintah berikut:
/*contoh*/
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
void main()
{
int bil;
for (bil = 60; bil >=10; bil++)
cout«bil«" " ;
getch();
}
Pernyataan ini tidak akan berhenti untuk menampilkan bilangan menurun. Kesalahan terjadi pada pengubah nilai pencacah, seharusnya penulisan yang benar adalah:
bil --
Akan tetapi yang ditulis adalah:
bil ++
Oleh karena kondisi bil >= 1 selalu bernilai benar (karena bil bernilai 6), maka pernyataan:
Cout<<bill<<” “;
akan terus dijalankan.
Jika terjadi hal semacam ini, untuk menghentikan proses yang terus-menerus dapat dilakukan dengan menekan tombol CTRL - PAUSE atau CTRL BREAK. Dapat juga dengan langsung klik tombol Close Button.
Pernyataan Go To
Pernyataan go to merupakan instruksi untuk mengarahkan eksekusi program ke pernyataan yang diawali dengan suatu label. Label merupakan suatu pengenal yang diikuti dengan tanda titik dua (:). Bentuk pemakaian go to adalah sebagai berikut:
goto label;
Contoh penggunaan go to dapat dilihat pada program berikut:
/*contoh go to*/
#include<iostream.h>
#include<stdio.h>
#include<conio.h>
void main()
{
int a, b;
char lagi;
atas:
cout<< "Masukkan Bilangan = "; cin>>a;
b = a % 2;
printf("Nilai %d $% 2 adalah = $d",a, b);
printf("\n\nlngin Hitung Lagi [Y/T1 : ");
lagi = getche() ,
if (lagi =='Y' || lagi == 'y')
goto atas;
getch();
}
Pernyataan While
Pernyataan perulangan while merupakan instruksi perulangan yang mirip dengan perulangan for. Bentuk perulangan while dikendalikan oleh syarat tertentu, yaitu perulangan akan terus dilaksanakan selama syarat tersebut terpenuhi.
Bentuk umum perulangan while adalah sebagai berikut:
while ( syarat ) ;
Pernyataan / perintah ;
Bentuk umum perulangan while, dengan lebih dari perintah/pernyataan,
adalah sebagai berikut:
while ( syarat )
{
Per
nyataan / perintah ;
Pernyataan / perintah ;
}
/*contoh while*/
#include <stdio.h>
#include <conio.h>
#include <iostream.h>
void main()
{
int bil=l;
while(bil<=10)
{
Cout<<bil<<” “;
} getch();
}
/*contoh while*/
#include <stdio.h>
#include <conio.h>
#include <iostream.h>
void main()
{
int bil=2;
while (bil<=10)
cout<<bil<<^ , bil+=2;
getch () ;
}
Pernyataan Do - While
Pernyataan perulangan do - while merupakan bentuk perulangan yang melaksanakan perulangan terlebih dahulu dan pengujian perulangan dilakukan belakangan.
Bentuk umum perulangan do - while adalah sebagai berikut:
do
pernyataan / perintah;
while ( syarat );
Bentuk umum perulangan do - while, dengan lebih dari perintah/pernyataan, adalah sebagai berikut:
do
{
Pernyataan / perintah ;
Pernyataan / perintah ;
}
while ( syarat );
/*contoh do while*/
#include <stdio.h>
#include <conio.h>
#include <iostream.h>
void main()
{
int bil=2;
do
{
cout<<bil<<" ";
bil+=2;
}
while(bil<=10);
getch();
}
Pernyataan Break
Pernyataan break telah dibahas pada pernyataan pengambilan keputusan switch. Pernyataan break ini berfungsi untuk keluar dari struktur switch. Selain itu pernyataan break juga berfungsi untuk keluar dari perulangan (for, while dan do-while). Jika pernyataan break dikerjakan maka eksekusi akan dilanjutkan ke pernyataan yang terletak sesudah akhir dari badan perulangan (loop).
/*contoh break*/
#include <stdio.h>
#include <conio.h>
#include <iostream.h>
void main()
{
int bil = 1;
do
{
if (bil >= 6)
break;
cout<<bil<<" ";
}
while(bil++);
getch(); )
}
Pada saat nilai bil = 6 maka proses seleksi bil >= 6, maka bemilai True, dan perintah break dijalankan. Selanjutnya proses menuju ke akhir perulangan.
/*contoh break*/
#include <stdio.h>
#include <conio.h>
void main ()
{
int a=3, b=2, c=1, bil;
printf("Bil-A | Bil-B | Bil-C\n");
printf("-----------------------------);
for(bil=1; bil<=10; ++bil)
{
a+=b; b+=c; c+=2;
printf("\n%d \t | %d \t | %d",a, b, c);
if (c==13)
break;
}
getche ();
}
Pernyataan Continue
Pernyataan continue digunakan untuk mengarahkan eksekusi ke iterasi (proses) berikutnya pada loop yang sama. Dengan kata lain, mengembalikan proses yang sedang dilaksanakan ke awal loop tanpa menjalankan sisa perintah yang ada dalam loop tersebut.
/*contoh continue*/
#include<stdio.h>
#include<conio.h>.
#include<iostream.h>
Void main ()
{
int bil;
for(bil=1; bil<=10; ++bil)
{
if(bil==6)
continue;
cout<<bil<<” “;
}
getch();
}
Pada saat nilai bil = 6, maka proses seleksi bil==6, maka bernilai True, dan perintah continue dijalankan. Selanjutnya proses menuju ke pernyataan ++bil, pada perintah perulangan, dan proses pencetakan tidak dilakukan. '
Kak fungsi dari textcolor 4+BLINK) apa yah?
BalasHapus