Anda di halaman 1dari 8

BAB II

PENGKONDISIAN DAN PERULANGAN

2.1 Pengkondisian
Dalam pemrograman, istilah kondisi digunakan untuk merujuk pada proses
memeriksa suatu nilai atau ekspresi atau keadaan tertentu untuk menentukan pilihan
selanjutnya yang akan dikerjakan. Jumlah pilihan yang tersedia dapat satu, dua atau
lebih dari dua. Jika pilihannya hanya satu, statemen kondisi digunakan untuk
menentukan apakah pilihan yang tersedia tersebut dikerjakan atau tidak. Jika
pilihannya ada dua maka statemen kondisi digunakan untuk memilih pilihan pertama
atau pilihan kedua. Sedangkan jika pilihannya lebih dari dua, maka jumlah statemen
kondisi akan menyesuaikan dengan jumlah pilihan yang tersedia (Rihartanto dan
Putra, 2015).
Bahasa C/C++ mengenal dua macam statemen kondisi yaitu if( ) dan
switc( ). If( ) digunakan untuk memilih satu dari dua alternative, sedangkan
switch( ) digunakan untuk memilih satu dari banyak alternatif (Rihartanto dan
Putra, 2015).

2. 1. 1 Statemen if( )
Statemen if( ) digunakan untuk memeriksa apakah sesuatu kondisi bernilai
benar atau salah. Jika ekspresi yang diberikan bernilai benar, maka statemen
setelah if akan dikerjakan, namun jika ekspresi tersebut bernilai salah maka
ekspresi tersebut tidak dikerjakan (Rihartanto dan Putra, 2015).
Sedangkan ekspresi yang diperiksa dalam statemen if( ) tersebut dapat
berupa ekspresi matematis atau pun ekspresi logika. Baik ekspresi matematis atau
ekspresi logika, output yang dihasilkan akan berupa nilai logika true (benar)
atau false (salah) (Rihartanto dan Putra, 2015).
Cara penulisan statemen if ( ) adalah sebagai berikut:

If( ekspresi_yg_diperiksa )
{
blok_statemen_yang_dikerjakan;
jika_ekspresi_bernilai_benar;
}
Ekspresi matematis atau logika yang di periksa diletakkandalam tanda kurung
setelah statemen if ( ). Jika ekspresi tersebut bernilai benar, maka blok
statemen setelah if akan dikerjakan, namun jika ekspresi tersebut bernilai salah
maka blok statemen setelah if tersebut tidak dikerjakan. Blok statemen yang
ditandai dengan sepasang tanda kurung kurawal hanya diperlukan jika jumlah
statemen yang dikerjakan berjumlah lebih dari satu. Jika jumlah statemennya
hanya satu maka pasangan blok kurung kurawal tidak diperlukan (Rihartanto dan
Putra, 2015).

2. 1. 2 Statemen if..else..
Statemen if..else.. digunakan untuk memeriksa kondisi untuk memilih
satu di antara dua pilihan. Dengan satu ekspresi yang sama, tersedia dua
alternative yang dapat dikerjakan, baik ekspresi itu bernilai benar maupun
bernilai salah (Rihartanto dan Putra, 2015).
Cara penulisan statemen if..else.. adalah sebagai berikut:
If( ekspresi_yg_diperiksa )
{
blok_statemen_yang_dikerjakan ;
jika_ekspresi_bernilai_benar ;
}
else
{
blok_statemen_yang_dikerjakan ;
jika_ekspresi_bernilai_salah ;
}
Jika ekspresi kondisi yang diperiksa bernilai benar, maka blok statemen setelah
if akan dikerjakan, namun jika ekspresi tersebut bernilai salah maka yang
dikerjakan adalah blok stateman setelah else (Rihartanto dan Putra, 2015).

2. 1. 3 Statemen if..else..if..else
Sering terjadi bahwa kondisi yang diperiksa memiliki banyak alternative yang
dapat dipilih, dalam arti bahwa alternative tersebut berjumlah lebih dari dua.
Untuk menangani kondisi seperti ini diperlukan lebih dari satu statemen if
sekaligus. Cara sederhana untuk menentukan jumlah statemen if yang
diperlukan adalah dengan mengurangkan alternatif pilihan yang tersedia dengan
satu. Misalkan terdapat tiga alternative pilihan, maka diperlukan dua statemen
if. Jika terdapat 10 alternatif pilihan, maka diperlukan 9 stateman if
(Rihartanto dan Putra, 2015).
Sebagai contoh, digunakanlalh statemen if untuk memeriksa apakah variable
angka bernilai 0 (nol), negatif atau positif. Di sini dapat terlihat bahwa
terdapat tiga alternatif yang dapat dipilih, sehingga akan diperlukan dua buah
statemen if (Rihartanto dan Putra, 2015).
Angka dinyatakan bernilai positif jika nilainya lebih besar dari nol, dan
dinyatakan negatif jika nilainya lebih kecil daro nol dan dinyatakan nol jika
nilainya adalah nol. Contoh pada C sebagai berikut:
#include<stdio.h>
main()
{
int angka;
printf(“masukkan sebuah angka: “);
scanf(“%”, &angka);

if(angka > 0)
printf(“angka %d adalah positif”, angka);
else if(angka==0)
printf(“yang dimasukkan adalah NOL”);
else
printf(“angka %d adalah negatif”,
angka);

return 0;
}
2. 1. 4 Nested if
Nested if secara harfiah menyatakan bahwa terdapat statemen if di
dalam statemen if yang lain. Atau dapat juga dikatakan bahwa terdapat
statemen if yang di dalamnya mengandung statemen if lainnya. Nested if
ini biasanya digunakan untuk melakukan pemeriksaan kondisi yang
bertingkat-tingkat. Jadi secara sederhana nested dapat dinyatakan sebagai
“statemen yang memiliki statemen yang sama di dalamnya”. Seberapa bnyak
jumlah nested if ini diizinkan dalam C/C++ sesungguhnya tidak dibatasi.
Hanya saja tidak dianjurkan untuk membuat nested yang terlalu banyak karena
dikhawatirkan akan menyulitkan dalam debugging program. Contoh program
yang menggunakan nested if sebagai berikut:
#include<stdio.h>

main()
{
int angka;
printf(“masukkan sebuah angka: “);
scanf(“%d”, &angka);

if(angka != 0)
if(angka < 0)
printf(“angka %d adalah negatif”,
angka);
else
printf(“angka %d adalah positif”,
angka);
else
printf(“yang dimasukkan adalah NOL”);
return 0;
}
(Rihartanto dan Putra, 2015).

2. 1. 5 Statemen switch..case
Switch case digunakan jika alternatif yang tersedia cukup banyak.
Statemen switch() ini digunakan untuk memeriksa nilai yang disimpan dalam
satu variable untuk menentukan alternatif mana yang akan dikerjakan
selanjutnya. Berbeda dengan statemen if() yang memeriksa kondisi benar atau
salah, statemen switch() akan memeriksa nilai variable menurut tipe datanya.
Kemudian nilai variable inilah yang secar langsung diletakkan pada keyword
case untuk mengarahkan berjalannya aliran program. Dalam bahasa yang lebih
sederhana, isi variable pada keyword switch() akan dibandingkan dengan nilai
yang berada pada case. Jika nilainya cocok, maka blok perintah pada case yang
bersesuaian itulah yang akan dijalankan (Rihartanto dan Putra, 2015).
Struktur perintah switch case terdiri dari keyword switch yang
digunakan untuk mengidentifikasi variable yang akan dievaluasi, sebuah variable
yang berisi nilai yang akan dievaluasi, sepasang kurung kurawal untuk
membatasi blok milik perintah switch case, sejumlah keyword case yang
mengandung nilai perbandingan terhadap isi variable, keyword break untuk
menghentukan perintah yang dijalankan, keyword default yang berisi perintah
jika tidak satupun nilai pada case yang cocok dengan isi variable. Dan
mengikuti aturan dalam bahasa C/C++, setiap baris perintah diakhiri dengan
tanda titik koma. Contoh program menggunakan switch case sebagai berikut:
#include<stdio.h>
int main()
{
int angka;
printf(“Masukkan angka antar 0-9: “);
scanf(“%d”, &angka);

switch(angka) {
case 0 : printf(“\nAngka yang dimasukkan
adalah Nol”); break;
case 1 : printf(“\nAngka yang dimasukkan
adalah Satu”); break;
case 2 : printf(“\nAngka yang dimasukkan
adalah Dua”); break;
case 3 : printf(“\nAngka yang dimasukkan
adalah tiga”); break;
case 4 : printf(“\nAngka yang dimasukkan
adalah Empat”); break;
case 5 : printf(“\nAngka yang dimasukkan
adalah Lima”); break;
case 6 : printf(“\nAngka yang dimasukkan
adalah Enam”); break;
case 7 : printf(“\nAngka yang dimasukkan
adalah Tujuh”); break;
case 8 : printf(“\nAngka yang dimasukkan
adalah Delapan”); break;
case 9 : printf(“\nAngka yang dimasukkan
adalah Sembilan”); break;

default: printf(“\nAngka bukan antara 0 dan


9”); break;
}
return 0;
}
(Rihartanto dan Putra, 2015).

2. 2 Perulangan
Perulangan atau iterasi yang dalam pemrograman sering disebut dengan loop
atau looping merupakan suatu mekanisme dalam pemrograman untuk mengulangi
pengejaan satu atau sekelompok perintah program sebanyak jumlah tertentu atau selama
kondisi tertentu masih terpenuhi. Dalam bahasa C/C++ terdapat tiga perintah yang dapat
digunakan untuk melakukan perulangan yaitu while(), do while(), dan for().
Masing-masing perintah memiliki karakteristik dan aturan-aturan tertentu dalam
penggunaannya (Rihartanto dan Putra, 2015).
Pada while loop, ekspresi kondisi akan diperiksa terlebih dahulu, jika
kondisi bernilai benar maka blok statemen akan dikerjakan namun jika kondisi bernilai
salah maka blok statemen tidak dikerjakan. Artinya dengan while loop, blok statemen
akan dikerjakan berulang-ulang selama kondisi yang diberikan bernilai benar atau dapat
juga tidak dikerjakan sama sekali jika kondisi yang diberikan tidak pernah bernilai benar.
Pada do while loop, blok statemen akan dikerjakan terlebih dahulu kemudian baru
ekspresi kondisinya diperiksa. Jika bernilai benar maka blok statemen akan dikerjakan
kembali. Artinya, degan menggunakan do while loop, blok statemen minimal akan
dikerjakan sebanyak satu kali (Rihartanto dan Putra, 2015).
For loop biasanya digunakan untuk melakukan perulangan yang jumlahnya
sudah diketahui atau sudah ditentukan terlebih dahulu. For loop juga sering disebut
dengan perulangan dengan penghitung otomatis (automatic counter looping), karena
pada for loop terdapat mekanisme untuk melakukan perhitungan jumlah perulangan.
While loop dan do while loop digunakan untuk melakukan perulangan selama
kondisi yang diberikan masih terpenuhi atau bernilai benar, sedangkan for loop
digunakan untuk melakukan perulangan dengan jumlah tertentu (Rihartanto dan Putra,
2015).

2. 3 While Loop
While loop bekerja dengan cara memeriksa apakah kondisi yang diberikan
bernilai benar, jika benar maka statemen yang ada pada tubuh loop akan dikerjakan.
Namun jika kondisinya bernilai salah maka aliran program akan dilanjutkan dengan
perintah berikutnya yang berada setelah statemen while. Sintaks penulisan statemen
while dalam C/C++ adalah:

While( kondisi )
Statemen_yang_dikerjakan;

atau, jika yang statemen yang dikerjakan berjumlah lebih dari satu, maka sintaksnya
adalah:

While( kondisi )
{
blok_statemen_yang_dikerjakan;
secara berulang;
}

Contoh program dengan menggunakan fungsi printf() pada while loop sebagai berikut:
#include<stdio.h>

main()
{
char ch=’\0’;

printf(“Masukkanlah sembarang karakter\n”);


printf(“Masukkan huruf Y untuk menghentikan program\n”);

while(ch != ‘Y’)
cin >> ch;

return 0;
}
(Rihartanto dan Putra, 2015).
2. 4 do while Loop
do while loop bekerja dengan cara kebalikan dari while loop. Pada
while loop, tubuh loop akan dikerjakan terlebih dahulu baru statemen kondisinya
diperiksa. Jika kondisi yang diberikan bernilai benar, maka statemen yang ada pada
tubuh loop akan dikerjakan kembali. Namun jika kondisinya bernilai salah maka aliran
program akan dilanjutkan dengan perintah berikutnya yang berada setelah statemen do
while. Sintaks penulisan statemen while dalam C/C++ adalah:

do
statemen_yang_dikerjakan ;
while( kondisi );

atau, jika yang statemen yang dikerjakan berjumlah lebih dari satu, maka sintaksnya
adalah:

do
{
blok_statemen_yang_dikerjakan ;
secara berulang;
} while( kondisi );
(Rihartanto dan Putra, 2015).
Pada do while() loop, statemen pada tubuh loop akan dikerjakan terlebijh
dahulu baru ekspresi kondisinya diperiksa. Artinya minimal tubuh loop dikerjakan
sebanyak satu kali, dan akan diulangi jika ekspresi kondisinya menghasilkan nilai benar.
Hal ini berbeda dengan while() loop dimana ekspresi kondisi diperiksa terlebih
dahulu, yang berarti tubuh loop dapat tidak pernah dikerjakan sama sekali jika ekspresi
kondisi tidak pernah menghasilkan nilai benar (Rihartanto dan Putra, 2015).

2. 5 for Loop
for loop atau sering juga disebut automatic counter loop merupakan
perulangan yang biasanya digunakan untuk perulangan yang jumlahnya sudah atau dapat
diketahui. Sintaks penulisan statemen for dalam C/C++ adalah:

for( inisialisasi; kondisi; counter )


statement_yang_dikerjakan;

atau, jika yang statemen yang dikerjakan berjumlah lebih dari satu, maka sintaksnya
adalah:

for( inisialisasi; kondisi; counter )


{
blok_statement_yang_dikerjakan ;
secara berulang;
}
(Rihartanto dan Putra, 2015).
Statemen for() memiliki tiga bagian di dalamnya yaitu inisialisasi, kondisi,
dan incement/decrement. Inisialisasi merupakan pemberian nilai awal pada variable yang
digunakan sebagai indeks. Kondisi merupakan ekspresi relasional yang digunakan untuk
menentukan kapan perulangan berhenti, kondisi ini biasanya memeriksa nilai dari
variable indeks. Counter digunakan untuk mengontrol perubahan nilai pada variable
yang digunakan sebagai indeks. Setiap bagian dipisahkan dengan titik koma (Rihartanto
dan Putra, 2015).
Perulangan akan terus dilakukan sampai variable indeks memiliki nilai
tertentu. Ketika indeks sudah mencapai nilai seperti yang dikondisikan maka perulangan
akan dihentikan, dan dilanjutkan dengan pengejaan statemen berikutnya yang terletak
setelah statemen for(). Contoh program untuk mencetak angka 1 sampai 10 adalah
sebagai berikut:
#include<stdio.h>

main()
{
int j;

printf(“Urutan nilai variable j adalah: \n”);


for(j=0; j<10; j++)
printf(“%d “, j+1);

return 0;

Pada contoh di atas, tubuh for() loop tidak menggunakan pasangan kurung kurawal
karena tubuh loop hanya berisi satu statemen. Namun jika jumlah statemennya lebih dari
satu maka pasangan kurung kurawal harus disertakan (Rihartanto dan Putra, 2015).

2. 6 Nested Loop
Yang dimaksud dengan nested loop adalah adanya loop di dalam loop lainnya.
Atau dapat juga dikatakan bahwa dalam tubuh sebuah loop terdapat satu atau lebih loop
lainnya. Pada nested loop, setiap loop memiliki variable indeks yang berbeda sebagai
fungsi control setiap loop yang ada (Rihartanto dan Putra, 2015).
Pasangan loop pada nested loop dapat terdiri dari loop for() dengan for(),
for() dengan while(), for() dengan do while(), while() dengan for()
dan seterusnya. Kombinasi dan jumlah loop yang digunakan dalam nested loop
disesuaikan dengan kebutuhan dalam pembuatan program. Contoh program untuk
mencetak baris dan kolom dengan nested loop for() dan for() sebagai berikut:
#include<stdio.h>
main()
{
int i, j, n;

printf(“Masukkan jumlah baris: “);


scanf(“%d”, %n);

printf(“\n\nBentuk output untuk n=%d adalah\n”, n);


for(i=0; I,n; i+1)
{
for(j=0; j<=I; j++)
printf(“%d “, j);
printf(“\n”);
}
}

Anda mungkin juga menyukai