Anda di halaman 1dari 20

DECISION MAKING

CONSTRUCTS
Struktur ini digunakan untuk menguji suatu kondisi, kemudian melaksana-
kan satu urutan perintah.
Konstruksi pilihan (decision making constructs) dalam C++ meliputi :
 Perintah if.
 Perintah if - else.
 Perintah switch.

Perintah if
C++ tidak memiliki kata kunci (Keyword) then pada
konstruksi perintah if.
Syntax :
if ( kondisi )
pernyataan;
atau

1
if ( kondisi )
{
pernyataan_1;
pernyataan_2;

pernyataan_n;

}
Contoh :
- if ( detik == 60 ) menit = menit + 1 ;
- if ( Angka % 2 == 0 )
cout << “Bilangan Genap ! \n”;
- if ( sisi > 0 )
{
Luas = Panjang * Lebar;
Isi = Luas * Tinggi; }
2
 Kondisi digunakan untuk menentu- kan pengambilan
keputusan, dan operator yang digunakan pada kondisi
adalah Relational dan Logical Operators.
 Pernyataan dapat berupa sebuah pernyataan ataupun
pernyataan majemuk atau Blok Pernyataan (terdiri dari
dua atau lebih pernyataan). Bagian ini dijalankan hanya
jika kondisi bernilai benar (bernilai tidak sama dengan NOL).
 Pernyataan majemuk (Blok Pernyataan) harus diapit
tanda { dan }.

Contoh Program C++ :


// -- Prog-4-1.cpp - Pernyataan if
#include <iostream.h>
#include <conio.h>
void main()
{
int Angka; // Deklarasi Variabel
clrscr(); // Hapus Layar
// Memasukkan data dari keyboard
cout << "Masukkan bilangan bulat = ";
cin >> Angka;

3
// Menguji dan Menampilkan data
if ( Angka % 2 ) // if ( Angka % 2 != 0 )
cout << "Bilangan Ganjil ! \n";
getch();
}
Perintah if – else
 Perintah ini memberikan satu alternatif dari dua
kemungkinan, kemudian diikuti dengan urutan perintah sebagai hasil
uji boolean.
Syntax :
if ( kondisi )
{
blok_pernyataan_1;
}
else
{ blok_pernyataan_2; }

4
Pada bentuk ini, bila kondisi bernilai benar (tidak sama dengan NOL) maka
blok_-pernyataan_1 akan dijalankan. Bilakondisi bernilai salah
(sama dengan NOL ) maka blok_pernyataan_2 yang akan
dijalankan.

Contoh :
if ( Angka % 2 != 0 )
cout << “Bilangan Ganjil ! \n”;
else
cout << “Bilangan Genap ! \n”;
atau
if ( Angka % 2 )
cout << “Bilangan Ganjil ! \n”;
else
cout << “Bilangan Genap ! \n

5
if ( Pembagi ) { // if ( Pembagi != 0 )
Hasil = Nilai / Pembagi;
cout << “Hasil bagi = “ << Hasil << ‘ \ n’; }
else {
Hasil = 0;
cout << “Hasil tidak ada – pembagi = “<< Pembagi << ‘\n’; }

Contoh program C++ :


#include <iostream.h>
#include <conio.h>
#include <ctype.h>
int main()
{
char Kar; // Deklarasi Variabel
clrscr(); // Hapus Layar
 cout << "Masukkan satu karakter = "; cin >> Kar;
6
Kar = toupper( Kar ); // ubah isi Kar menjadi huruf besar
if ( Kar >= ‘A’ && Kar <= ‘Z’ )
cout << "Masukan Anda adalah huruf ! \n";
else
cout << “Masukan Anda bukan huruf ! \n”;
getch();
return 0;
}
Perintah Multiple if – else
 C++ memberikan fasilitas nested if – else untuk mendukung
fleksibilitas dalam program aplikasi.
Syntax :
if ( kondisi_1 )
{ blok_perintah_1; }
else if ( kondisi_2 )
{ blok_perintah_2; }
else if ( kondisi_3 )
{ blok_perintah_3; }

else
{ blok_perintah_n; }
7
Contoh :

float Nilai;
cout << “Masukkan Nilai ujian = “; cin >> Nilai;
if ( Nilai >= 85 && Nilai <= 100 )
cout << “Grade A \n”;
else if ( Nilai >= 75 )
cout << “Grade B \n”;
else if ( Nilai >= 65 )
cout << “Grade C \n”;
else if ( Nilai >= 55 )
cout << “Grade D \n”;
else
cout << “Grade E \n”;

8
Contoh Program C++ :
#include <iostream.h>
#include <conio.h>
void main()
{
char Kar;
clrscr(); // Hapus Layar
cout << “Masukkan satu karakter : “; cin >> Kar;
if ( Kar >= ‘A’ && Kar <= ‘Z’ )
cout << “Masukan Anda adalah huruf besar \n”;
else if ( Kar >= ‘a’ && Kar <= ‘z’ )
cout << “Masukan Anda adalah huruf kecil \n”;
else if ( Kar >= ‘0’ && Kar <= ‘9’ )
cout << “Masukan Anda adalah satu angka \n”;
else
cout << “Masukan Anda bukan alphanumeric\n”;
getch();
}

9
Perintah switch
 Perintah ini memiliki bentuk switch – case, yang digunakan untuk
pilihan berjumlah banyak.
 Perintah tersebut di atas tidak dianjurkan pada pilihan
yang melibatkan jangkauan nilai (range ), tetapi dianjurkan
pada pilihan berupa konstanta dan banyak, misalnya: untuk
memilih menu.
Syntax :
switch ( pernyataan )
{
case konstan_1:
blok_pernyataan_1;
break ;
case konstan_2:
blok_pernyataan_2;
break ;

default:
blok_pernyataan_n;
}
10
 Contoh :
char op; int OK=1; float x, y, z;
cout << “Masukkan angka, operator, angka = “;
cin >> x >> op >> y;
switch ( op )
{
case ‘+’ :
z = x + y;
break ;
case ‘-‘ :
z = x – y;
break ;
case ‘*’ :
z = x * y;
break ;
case ‘/’ :
if ( y != 0 )
z = x / y;
else
OK = 0;
break ;
default : OK = 0;
}

11
Contoh Program C++ :
#include <iostream.h>
#include <conio.h>
void main()
{
char Kar;
clrscr(); // Hapus Layar
cout << “Masukkan satu karakter : “; cin >> Kar;
if ( Kar >= ‘A’ && Kar <= ‘Z’ )
cout << “Masukan Anda adalah huruf besar \n”;
else if ( Kar >= ‘a’ && Kar <= ‘z’ )
cout << “Masukan Anda adalah huruf kecil \n”;
else if ( Kar >= ‘0’ && Kar <= ‘9’ )
cout << “Masukan Anda adalah satu angka \n”;
else
cout << “Masukan Anda bukan alphanumeric
getch(); }

12
LOOPS
 Pengulangan (Loops) merupakan fasilitas bahasa C++ yang
mampu melakukan proses yang berulang, karena itu
komputer dapat mengerjakan proses berulang-ulang dengan
cepat, tepat dan tanpa lelah.
 Konstruksi pengulangan dalam C++ meliputi :

Perintah for
Perintah do – while
Perintah while

For Loop
 C++ memiliki dua jenis pengulangan for – fixed dan conditional.

Syntax :
 for ( <inisialisasi variabel pengulangan>; <kondisi>;<penambahan/pengurangan> )
 { blok_pernyataan; }

13
Contoh :
for ( int i = 0; i < 10; i++ )
cout << “Kuadrat dari “ << i << “ = “<< i * i << “\n”;

·Contoh Program C++ :


#include <iostream.h>
main()
{ double sum, sumx=0.0;
int first, last, temp;
cout << “Masukkan bilangan pertama = “; cin >> first;
cout << “Masukkan bilangan kedua = “; cin >> last;
if ( first > last )
{ temp = first;
first = last;
last = temp;
}
for ( int i = first; i <= last; i++ )
{ sum++; sumx += (double) i; }

14
cout << “Jumlah semua bilangan dari “ << first << “ s/d “ << last << “ = “
<< sumx << “\n”;
cout << “Rata-rata nilai = “ << sumx / sum;
return 0;
}

Infinite Loop
 C++ mengijinkan pembentukan infinite loop / open loop,
dengan menghilangkan ketiga parameter yang ada pada for
loop.

Contoh Program C++ :


#include <iostream.h>
#include <conio.h>
#include <ctype.h>
void main()
{ char ch;
double x, y;

15
for ( ; ; )
{ cout << “\nMasukkan satu bilangan = “; cin >> x;
if ( x != 0 )
{ y = 1 / x;
cout << “1/(“ << x << “) = “ << y << “\n”;
cout << “Hitung lagi ? (Y/N) .. “; cin >> ch;
ch = toupper (ch);
if ( ch != ‘Y’ ) break ;
}
else
cout << “Error: cannot accept 0 \n”;
}
getch();
}

do-while Loop
 Loop ini dikenal dengan nama conditional loop, dimana
kondisi pengulangan diperiksa pada akhir blok loop.

16
Syntax :
do
{ blok_pernyataan; }
while ( kondisi );

Contoh :
int i = 2;
do
{ cout << i << “^2 = “ << i * i << “\n”; }
while ( ++i < 11 );
int i = 0;
do
{ cout << “Selamat Belajar PBO \n”;
if ( i % 20 == 0 ) { i = 0; getch(); }
} while ( i++ >= 0 );

17
While Loop
 Loop ini juga merupakan conditional loop, dimana kondisi
pengulangan diuji pada awal blok pengulangan.
 Pada pengulangan dengan perintah while loop kemungkinan
tidak ada satu pernyataanpun yang akan dikerjakan bila
kondisinya bernilai salah (sama dengan nol).
 Sedang pada pengulangan menggunakan do-while
loop, memungkinkan minimal ada satu pernyataan yang
akan dikerjakan bila kondisinya bernilai salah (sama dengan
nol).

Syntax :
while ( kondisi )
{
blok_pernyataan;
}

18
Contoh Program C++:
#include <iostream.h>
#include <conio.h>
void main()
{ double
int first, last, temp, i;
cout << “Masukkan bilangan pertama = “; cin >> first;
cout << “Masukkan bilangan kedua = “; cin >> last;
if ( first > last )
{ temp = first; first = last; last = temp; }
i = first;
while ( i <= last )
{ sum++;
sumx += (double) i++;
}

19
// Menampilkan Hasil
cout << “Jumlah semua bilangan dari “<< first << “ s/d “ << last << “ = “
<< sumx << “\n”;
cout << “Rata -rata nilai = “ << sumx / sum;
getch();
}

Latihan :
Buat program C++ dengan menggunakan while
loop untuk menghitung dan menampilkan jumlah
bilangan genap dari 11 s/d 121.

20

Anda mungkin juga menyukai