Anda di halaman 1dari 54

Pemrograman

Dasar
32022PRD3

Andita Dani Achmad


OPERASI PENYELEKSIAN
KONDISI/PERCABANGAN
Salah satu permasalahan yang
pasti akan dijumpai dalam
pembuatan program adalah
suatu percabangan.
Percabangan yang dimaksud
disini tidak lain adalah suatu
pemilihan statement yang
akan dieksekusi dimana
pemilihan tersebut didasarkan
atas kondisi tertentu.
Statemen-statemen yang
terdapat dalam sebuah blok
percabangan akan dieksekusi
hanya jika kondisi yang
didefinisikan terpenuhi
(bernilai benar). Artinya jika
kondisi tidak terpenuhi
(bernilai salah), maka
statemen-statemen tersebut
juga tidak ikut dieksekusi atau
dengan kata lain akan
diabaikan oleh compiler.
Di dalam C++, tedapat dua buah jenis
struktur (blok program) yang digunakan
untuk mengimplentasikan suatu
percabangan, yaitu dengan
menggunakan struktur if dan struktur
switch.
Salah/
kondisi False

Benar/
True

perintah
Operator logika ! akan memberikan
nilai kebalikan dari ekspresi yang
disebutkan.
Jika nilai yang disebutkan bernilai BENAR
maka akan menghasilkan nilai yang
SALAH, begitu pula sebaliknya.
Kalimat di atas yang
merupakan kondisi adalah
lulus ujian. Pada kasus ini
sepeda motor hanya akan
dibeli jika andi lulus ujian.
Sebaliknya, jika tidak
lulus, maka sepeda motor
pun tidak akan dibeli.
Struktur if Satu
Kondisi/Pernyataa
n if
Struktur ini merupakan
struktur yang paling
sederhana karena
hanya melibatkan satu
buah ekspresi yang
akan diperiksa.
Bentuk umum dari struktur
percabangan yang
memiliki satu kondisi
adalah sebagai berikut :

if (kondisi)
{
Statement1;
Statement2;

}
Contoh

Masukkan sebuah huruf vocal = <<input>>

Jika huruf yang diinput a/i/u/e/o

<<input>> adalah salah satu huruf vocal.


Flowchart
star
t

input
huruf

(huruf == 'a') ||
(huruf (huruf == 'u')
|| (hur
(huruf ==
#include <iostream>

using namespace std;

main()
{
char huruf;

cout<<"Masukkan sebuah huruf vokal = ";


cin>>huruf;

if ((huruf == 'a') || (huruf == 'i') || (huruf == 'u') ||


(huruf == 'e') || (huruf == 'o'))
{
cout<<huruf<<" adalah salah satu huruf vokal";
}
}
Output
Struktur if Dua
Kondisi/Pernyataa
n if - else
Struktur percabangan jenis ini
sedikit lebih kompleks bila
dibandingkan dengan struktur
yang hanya memiliki satu
buah kondisi.
“Jika kondisi bernilai benar,
maka perintah 1 akan
dikerjakan dan jika tidak
memenuhi syarat maka akan
mengerjakan perintah 2”
Bentuk umum dari struktur percabangan yang memiliki dua kondisi adalah sebagai berikut :
if (kondisi)
{
Statement Jika kondisi terpenuhi;
Statement Jika kondisi terpenuhi;

}
else
{
Statement Jika kondisi tidak terpenuhi;
Statement Jika kondisi tidak terpenuhi;

}
Contoh

Menentukan suatu bilangan yang diinput,


apakah termasuk ke dalam bilangan ganjil
atau genap
Flowchart
star
t

input
angka

F
angka % 2 ==
0

output output
"Genap "Ganjil
" "

en
d
#include <iostream>

using namespace std;

main()
{
int bil;

cout<<"Masukkan bilangan = ";


cin>>bil;

if (bil %2 == 0)
{
cout<<bil<<" adalah bilangan genap";
}
else
{
cout<<bil<<" adalah bilangan ganjil";
}
}
Output
Struktur if Tiga
Kondisi atau
Lebih/Pernyataan
if
– else Majemuk
Struktur jenis ini merupakan
struktur percabangan yang
biasanya membingungkan
para programmer pemula.
Percabangan jenis ini
merupakan perluasan dari
struktur yang memiliki dua
kondisi diatas, yaitu dengan
menyisipkan (menambahkan)
satu atau lebih kondisi ke
dalamnya.
Bentuk umum dari
struktur percabangan
yang memiliki lebih
dari dua kondisi adalah
sebagai berikut:
if (kondisi1)
{
Statement jika kondisi1 terpenuhi;
Statement jika kondisi1 terpenuhi;

}
else if (kondisi2)
{
Statement jika kondisi2 terpenuhi;
Statement jika kondisi2 terpenuhi;

}
else if (kondisi3)
{
Statement jika kondisi3 terpenuhi;
Statement jika kondisi3 terpenuhi;

}
else
{
Statement jika semua kondisi tidak terpenuhi;
Statement jika semua kondisi tidak terpenuhi;

}
Contoh
Layar Keluaran
PROGRAM HITUNG NILAI RATA-RATA NILAI PERTANDINGAN

Nama Siswa : <<input>>


Nilai Pertandingan I : <<input>>
Nilai Pertandingan II : <<input>>
Nilai Pertandingan III : <<input>>

Siswa yang bernama <input nama>


Memperoleh nilai rata-rata <<hasil proses>> dari hasil perlombaan yang
diikutinya.
Hadiah yang didapat adalah <<hasil>>
Nama siswa, Nilai Pertandingan I, Nilai Pertandingan II, dan
Nilai Pertandingan III diinput.
Nilai rata-rata merupakan nilai dari hasil pertandingan I, II, dan III dibagi
dengan 3.
Ketentuan mendapatkan hadiah dari pertandingan:
• Jika nilai rata-rata >85, maka mendapat hadiah notebook processor i7.
• Jika nilai rata-rata >=70, maka mendapat hadiah uang sebesar
Rp20.000.000,00.
• Jika nilai rata-rata <70, maka mendapat hadiah hiburan.
start

Flowchar input nama,


nilaipertandingan1,

t
nilaipertandingan2,
nilaipertandingan3

ratarata =
(nilaipertandingan1 +
nilaipertandingan2 +
nilaipertandingan3) /3

F
ratarata >= 85

F
ratarata >= 70
T

Output “Notebook Output “Uang Output “Hadiah


processor i7" Rp20000000,00" Hiburan"
end
#include <iostream>
#include <iomanip>

using namespace std;

main()
{

string nama;
float pertandingan1, pertandingan2, pertandingan3, rata_rata;

cout<<"PROGRAM HITUNG NILAI RATA-RATA"<<endl;


cout<<"\nNama Siswa\t\t: ";
getline(cin, nama);
cout<<"Nilai Pertandingan I\t: ";
cin>>pertandingan1;
cout<<"Nilai Pertandingan II\t: ";
cin>>pertandingan2;
cout<<"Nilai Pertandingan III\t: ";
cin>>pertandingan3;

rata_rata = ((pertandingan1+pertandingan2+pertandingan3)/3);

cout<<"\nSiswa yang bernama "<<nama;


cout<<"\nMemperoleh nilai rata-rata "<fixed<<setprecision(2)<<rata_rata<<" dari hasil
perlombaan yang diikutinya."<<endl;
if (rata_rata >=0 && rata_rata<70)
{
cout<<"Hadiah yang didapat adalah hadiah hiburan";
}
else if (rata_rata >=70 && rata_rata <85)
{
cout<<"Hadiah yang didapat adalah uang sebesar Rp20000000,00";
}
else
{
cout<<"Hadiah yang didapat adalah Notebook Processor i7";
}
}
Output
Struktur switch
- case
Bentuk dari switch – case
merupakan pernyataan yang
dirancang khusus untuk menangani
pengambilan keputusan yang
melibatkan sejumlah atau banyak
alternatif. Pernyataan switch –
case ini memiliki kegunaan sama
seperti if – else bertingkat,
tetapi penggunaannya untuk
memeriksa data yang bertipe
karakter atau integer. Ekspresi
switch dapat pula dievaluasi
menjadi sebuah nilai logical.
Bentuk umum penulisan:
switch (ekspresi integer atau karakter)
{
case konstanta-1:
Statement 1;
Statement 2;
break;
case konstanta-2:
Statement 1;
Statement 2;
break;
default:
Statement 1;
Statement 2;
break;
}
Setiap cabang akan dijalankan jika syarat
nilai konstanta tersebut dipenuhi dan default
akan dijalankan jika semua cabang diatasnya
tidak terpenuhi. Pernyataan break
menunjukan bahwa perintah siap keluar dari
switch. Jika pernyataan ini tidak ada, maka
program akan diteruskan kecabang-cabang
yang lainnya.
Contoh

Pengguna dapat memilih untuk


menentukan luas persegi panjang, keliling
persegi panjang, dan panjang diagonal
persegi panjang. Pada setiap pilihan menu,
dibaca panjang dan lebar persegi panjang,
lalu dihitung hasil yang diinginkan
pengguna.
Flowchart
start

output
1 Hitung Luas
2 Hitung Keliling
3 Hitung Panjang
Diagonal

input
pilihan, panjang,
lebar

T outpu
pilihan == Luas = panjang *
t
1 lebar
Luas

T Keliling = 2 * panjang output


pilihan ==
+ 2 * lebar Kelilin
2
g

T Diagonal = sqrt
output
pilihan == (panjang * panjang
Diagona
3 + lebar * lebar) l

end
#include
<iostream>
#include <math.h>
#include <iomanip>

using namespace std;

main()
{
int pilihan, panjang, lebar, Luas, Keliling, Diagonal;

cout<<"Menu Persegi Pajang"<<endl;


cout<<"1. Hitung Luas"<<endl;
cout<<"2. Hitung Keliling"<<endl;
cout<<"3. Hitung Panjang Diagonal"<<endl;
cout<<"Masukan Pilihan : "; cin>>pilihan;
cout<<"Panjang : "; cin>>panjang;
cout<<"Lebar : "; cin>>lebar;
switch (pilihan)
{
case 1 :
Luas = panjang * lebar;
cout<<Luas;
break;
case 2 :
Keliling = 2 * panjang + 2 * lebar;
cout<<Keliling;
break;
case 3 :
Diagonal = sqrt(panjang * panjang + lebar * lebar);
cout<<fixed<<setprecision(2)<<Diagonal;
break;
}
}
Output

Anda mungkin juga menyukai