DPK Modul 3 Windhi
DPK Modul 3 Windhi
OPERASI KONDISI
Oleh:
Windhi Dwi Laksono Putro
160534611630
S1 PTE’16 OFF D
MODUL 3
OperasiKondisi
Tujuan
Setelahmempelajaribabinidiharapkanmahasiswaakanmampu :
Menjelaskantentangfungsioperasikondisi.
Menjelaskantentangfungsiif, if else, if else bertingkat,
danswitch case.
DASAR TEORI
Pernyataanpercabanganpadapemrogramandigunakanuntukmem
ecahkanpersoalanuntukmengambilsuatukeputusandiantarasekia
npernyataan yang ada, dimanasebuahinstruksi (pernyataan)
akandilaksanakanjikasebuahkondisi/persyaratanterpenuhi.
1. Pernyataan If
Pernyataan if mempunyaipengertian”
jikakondisibernilaibenar,
makapernyataanakandikerjakandanjikatidakmemenuhisya
ratmaka program akanmengabaikanpernyataan ”. Dari
pengertiantersebutdiatasmakadapatdilihat diagram
alirsepertipadagambar 1.
if (kondisi)
Pernyataan;
Jikapemakaian if diikutidenganpernyataanmajemuk,
bentukpenulisannyasebagaiberikut:
if (kondisi) {
Pernyataan1;
Pernyataan2;
...;
}
2. Pernyataan If – Else Pernyataan if
mempunyaipengertian, “ jikakondisibernilaibenar, maka
pernyataan-1 yang
akandieksekusidanjikatidakmemenuhisyaratmakaakandiek
sekusi pernyataan-2”. Dari pengertiantersebutdapatdilihat
di diagram alirpadagambar 2.
if (kondisi)
Pernyataan-1;
else
Pernyataan-2;
PadaGambar 2, diagram alir if-else pernyataan-1 dan
pernyataan-2 dapatberupasebuahpernyataantunggal,
pernyataanmajemukataupernyataankosong. Jika if- else
diikutidenganpernyataanmajemuk,
bentukpenulisannyaadalah:
if (kondisi) {
Pernyataan1;
...;
} else {
Pernyataan2;
...;
}
3. If – Else Bertingkat
Bentuk If-Else dapatdigunakansecarabertingkat. Ada
beberapabentuk If-Else bertingkat, antara lain nested
ifdanif – else if.
i. Nested If
Nested if merupakanbentukpernyataan if yang ada
di dalampernyataan if yang lain. Disebut juga if
bersarang. Eksekusinyamemperhatikanpernyataan
if yang mewadahipernyataan if yang ada.
Bentukumumdaripernyataaniniadalah:
if (kondisi1)
if (kondisi2)
Pernyataan; else
//untuk kondisi1
Pernyataan; else
//untuk kondisi2
Pernyataan;
ii. If – Else If
Bentukinimerupakanpenggunaanbentuk if else
secaramajemuk. Pernyataan if pada else if
akandieksekusijikahasilpernyataan if
sebelumnyabernilai false.
Bentukumumdaripernyataaniniadalah:
if (kondisi1) {
Pernyataan...;
...;
}
elseif (kondisi2) {
Pernyataan...;
...;
}
else {
Pernyataan...;
...;
}
switch (ekspresi)
{ case
konstanta1:
pernyataa
n1;
break;
case konstanta
2:
pernyataa
n2;
break;
case konstanta
3:
pernyataa
n3;
break;
...
case konstanta-
n:
pernyataa
n-n;
break;
default:
pernyataan-umum;
}
Setiapcabangakandijalankanjikasyaratnilaikonstantaterpenuhidan default
akandijalankanjikasemuacabangdiatasnyatidakterpenuhi.
Pernyataanbreakmenunjukkansetelaheksekusipernyataan, maka program
akankeluardari switch. jikapernyataaninitidakada, maka program
akanditeruskankecabang-cabang yang lainnya.
Latihan 1
Pemrograman C++
#include <iostream.h>
using namespace std;
int main ()
{
int a = 10;
if( a < 20)
{
cout << "a kurang dari 20;" <<endl;
}
cout << "nilai a adalah : " << a << endl;
return 0;
}
Output Program :
Flowchart :
Penjelasan Program :
Program di atas ini digunakan untuk mengetahui apakah nilai dari variabel
a adalah kurang dari 20
Menggunakan header #include <iostream.h> fungsinya untuk
mengeluarkan perintah cout dan cin
Fungsi utama yang digunakan :
int main () berarti int memberikan nilai balik
Tipe data yang digunakan :
int : tipe data yang digunakan untuk menyatakan bilangan bulat.
Assigment yang digunakan :
a=10 : deklarasi variabel a diberi nilai 10
Kondisi (pernyataan) yang digunakan :
if(a<20) digunakan untuk membandingkan nilai dari variabel a kurang
dari 20, jika benar maka akan memberikan keluaran “a kurang dari 20”
Latihan 2
Pemrograman C++
int main()
{
int bil;
cout <<"Masukkan 2 digit angka terakhir NIM Anda: ";
cin >> bil;
if (bil%2 ==0)
{
cout << "\nDigit NIM Anda adalah bilangan Genap" << endl;
}
else
{
cout << "Digit NIM Anda adalah bilangan Ganjil" << endl;
}
getch();
return 0;
}
Output Program :
Flowchart :
Penjelasan Program :
Program di atas digunakan untuk mengetahui apakah masukan nilai dari
variabel bilangan ganjil atau genap
Menggunakan header :
#include <iostream.h> karena berfungsi untuk mengeluarkan perintah
cout dan cin
#include <conio.h> karena berfungsi untuk mengeluarkan perintah
getch()
Fungsi utama yang digunakan :
int main () berarti int memberikan nilai balik, dan karena itu diberi
perintah return 0;
Tipe data yang digunakan :
int : tipe data yang digunakan untuk menyatakan bilangan bulat.
Kondisi pernyataan yang digunakan :
if(bil%2 == 0) fungsinya digunakan untuk apakah masukan nilai dari
variabel bilangan di bagi 2 memiliki sisa pembagian 0, jika benar maka
akan memberikan keluaran “Digit NIM Anda adalah bilangan GENAP”, jika
salah maka akan memberikan keluaran “Digit NIM Anda adalah bilangan
GANJIL”
Latihan 3
Pemrograman C++
#include <iostream.h>
int main ()
{
int x;
if (x >=10)
{
if (x <=20)
std::cout << "\nNilai " <<x<< " ada di antara 10 dan 20";
else
std::cout << "\nNilai " <<x<< " lebih dari 20";
}
else
{
std::cout << "\nNilai " <<x<< " kurang dari 10";
}
return 0;
}
Output Program :
Flowchart :
Penjelasan Program :
Program di atas ini digunakan untuk mengetahui apakah masukan nilai
dari variabel x kurang dari 10, diantara 10 dan 20, atau lebih dari 20.
Menggunakan Header :
#include <iostream> karena berfungsi untuk mengeluarkan perintah cout
dan cin
Fungsi utama yang digunakan :
int main () berarti int memberikan nilai balik, dan karena memiliki nilai
balik maka diberi perintah return 0;
Tipe data yang digunakan :
int : tipe data yang digunakan untuk menyatakan bilangan bulat.
Kondisi pernyataan yang digunakan :
if(x>=10) : kondisi ke-1 digunakan untuk mengkondisikan apakah
masukan nilai dari variabel x memiliki nilai lebih dari 10, jika benar maka
akan memberikan kondisi ke-2 yaitu (ifx<=20) : jika benar maka akan
memberikan keluaran “Nilai x ada di antara 10 dan 20”, jika salah maka
memberikan keluaran “Nilai x lebih dari 20”, jika kondisi ke-1 salah maka
keluaran “Nilai x kurang dari 10”
Latihan 4
Pemrograman C++
#include <iostream.h>
int main()
{
int x, y;
std::cout << "Masukkan sebuah bilangan bulat : ";
std::cin >> x;
return 0;
}
Output Program :
Flowchart :
Penjelasan Program :
Latihan 5
Pemrograman C++
int main ()
{
int bulan ;
cout << "please input month number (1-12): ";
cin >> bulan ;
switch (bulan) {
case 1:
cout << "The last 1st month is January" << endl ;
break;
case 2:
cout << "The 2nd month is February" << endl ;
break;
case 3:
cout << "The 3rd month is March" << endl ;
break;
case 4:
cout << "The 4th month is April" << endl ;
break;
case 5 :
cout << "The 5th month is May" << endl ;
break;
case 6 :
cout << "The 6th month is June" << endl ;
break;
case 7 :
cout << "The 7th month is July" << endl ;
break;
case 8:
cout << "The 8th month is August" << endl ;
break;
case 9 :
cout << "The 9th month is September" << endl ;
break;
case 10 :
cout << "The 10th month is October" << endl ;
break;
case 11 :
cout << "The 11th month is November" << endl ;
break;
case 12 :
cout << "The 12th month is December" << endl ;
break;
default :
cout << "Invalid month! \nMake sure your input is correct." << endl;
}
return 0;
}
Output Program :
Flowchart :
Penjelasan Program :
Latihan 6
Pemrograman C++
#include <iostream.h>
using namespace std;
int main ()
{
char nilai;
switch (nilai)
{
case 'A' :
case 'a' :
cout << "Excellent! :) " <<endl;
break;
case 'B' :
case 'b' :
cout << "Well done :) " << endl;
break;
case 'C':
case 'c' :
cout << "You passed. " << endl;
break ;
case 'D' :
case 'd' :
cout << "Better try again. " << endl;
break ;
case 'E':
case 'e' :
cout << "Sorry, you failed :(" << endl;
break ;
default :
cout << "Invalid grade" << endl;
}
cout << "Your grade is " << nilai << endl;
return 0;
}
Output Program :
Flowchart :
Penjelasan Program :
#include <iostream.h>
using namespace std;
int main()
{
double bayar,akhir,diskon;
char pembeli[10];
cout<<"Program Potongan Harga"<<endl;
cout<<"\nSupermarket Berkah Sejahtera"<<endl;
cout<<" Kasir : Windhi LP"<<endl;
cout<<" Pembeli : ";
cin>>pembeli;
cout<<"Masukkan Total Pembayaran = ";
cin>>bayar;
if (bayar<75000){
diskon=bayar*0.1;
akhir=bayar-diskon;
cout<<endl<<"Selamat Anda Mendapatkan Potongan Harga
Sebesar 10%"<<endl;
} else if ((bayar>=75000) && (bayar<=100000)){
diskon=bayar*0.2;
akhir=bayar-diskon;
cout<<endl<<"Selamat Anda Mendapatkan Potongan Harga
Sebesar 20%"<<endl;
} else if (bayar>100000){
diskon=bayar*0.3;
akhir=bayar-diskon;
cout<<endl<<"Selamat Anda Mendapatkan Potongan Harga
Sebesar 30%"<<endl;
}else {
akhir=bayar;
}
cout<<endl<<"Jadi Total Pembayarannya = "<<akhir<<endl;;
return 0;
}
Output Program :
Flowchart :
Penjelasan Program :
#include <iostream.h>
#include <conio.h>
int main()
{
double pendapatan,jasa = 0, komisi = 0, total = 0;
char sales[20];
cout<<"PT Makmur Sukses Jaya"<<endl;
cout<<"Kasir : Windhi LP"<<endl;
cout<<"Salesman : ";
cin>>sales;
cout<<"Pendapatan yg Diperoleh Hari Ini : Rp. ";
cin >> pendapatan;
getch();
}
Output Program :
Flowchart :
Penjelasan Program :
Program ini sama seperti program pada praktikum 1, saat inputannya sesuai atau benar
dengan kondisi yang ada maka akan di execute.
Program ini menggunakan header #include<iostream.h> untuk fungsi cin, cout. Header
#include<conio.h> untuk fungsi getch() untu menahan tampilan. Serta tipe data int untuk
bilangan bulat,dan char untuk karakter.
Tugas Rumah 1
Pemrograman C++
#include <iostream.h>
int main()
{
cout<<" TEKNIK ELEKTRO UNIVERSITAS NEGERI MALANG
"<<endl<<endl;
char nama[30], nim[30];
float murni_aktif,murni_tugas,murni_ujian;
float nilai_akhir;
float aktif, tugas, ujian;
murni_aktif=aktif*20/100;
murni_tugas=tugas*30/100;
murni_ujian=ujian*50/100;
nilai_akhir=murni_aktif+murni_tugas+murni_ujian;
return 0;
}
Output Program :
Flowchart :
Penjelasan Program :
Program ini adalah program konversi nilai dan akan menampilkan grade dari total semua
nilai, dalam program ini menggunakan operasi kondisi if-else bertingkat. Dalam operasi
kondisi ini, program akan di execute saat inputannya benar atau sesuai dengan kondisi yang
ada.
Program ini menggunakan header #include<iostream.h> untuk fungsi cin, cout. Serta tipe
data float untuk bilangan pecahan, dan char untuk karakter.Fungsi return 0 menyatakan hasil
keluaran dari fungsi main () adalah 0. Pada C++ return 0 menyatakan bahwa program
berakhir dengan normal.
Tugas Rumah 2
Pemrograman C++
int main()
{
cout<<endl;
cout<<" Perhitungan Rumus-Rumus "<<endl;
cout<<"=================================================="<<endl;
int rumus;
cout<<" 1. Rumus Menghitung Luas Permuukaan Bola"<<endl;
cout<<" 2. Rumus Menghitung Luas Permukaan Kubus"<<endl;
cout<<" 3. Rumus Menghitung Luas Permukaan Balok"<<endl;
cout<<" 4. Rumus Menghitung Luas Permukaan Tabung"<<endl;
cout<<" 5. Rumus Menghitung Luas Permukaan Kerucut"<<endl;
cout<<" 6. Rumus Menghitung Luas Permukaan Limas Segitiga"<<endl;
cout<<" 7. Rumus Untuk Mengetahui Tahun Kabisat"<<endl;
cout<<"===================================================="<<endl;
cout<<"Pilih Rumus Yang Anda Inginkan : ";
cin>>rumus;
switch (rumus)
{
case 1 :
cout<<"Menghitung Luas Permukaan Bola"<<endl;
int r, luas, phi;
phi=3.14;
cout<<"Masukan Jari-jari Bola : ";
cin>>r;
luas=4*3.14*r*r;
cout<<"Luas Permukaan Bola : "<<luas;
break;
case 2 :
int s;
float luas_permukaan_kubus;
cout<<"Program Menghitung Luas Kubus"<<endl<<endl;
cout<<"Masukan nilai sisi ( s ) = ";
cin>>s;
luas_permukaan_kubus=6*s*s;
cout<<endl;
cout<<"Luas permukaan kubus dengan sisi "<<s<<" adalah "<<luas_permukaan_kubus;
cout<<endl;
break;
case 3 :
int p, l, t, luas_balok;
cout<<"Menghitung Luas Permukaan Balok"<<endl;
cout<<endl<<"Masukkan Panjang : ";
cin>>p;
cout<<"Masukkan Lebar : ";
cin>>l;
cout<<"Masukkan Tinggi : ";
cin>>t;
luas_balok=(2*p*l)+(2*p*t)+(2*l*t);
cout<<endl<<"Luas Balok = (2*panjang*lebar)+(2*panjang*tinggi)
+(2*lebar*tinggi)"<<endl;
cout<<"Luas Balok = (2*"<<p<<"*"<<l<<")+(2*"<<p<<"*"<<t<<")
+(2*"<<l<<"*"<<t<<")"<<endl;
cout<<"Luas Balok = "<<luas_balok<<endl;
break;
case 4 :
int pi,tinggi,luas_permukaan_tabung;
cout<<"Menghitung Luas Permukaan Tabung\n\n";
cout<<"Masukan jari-jari = ";
cin>>r;
cout<<"Masukan Tinggi = ";
cin>>tinggi;
luas=2*pi*r*(tinggi+r);
cout<<"\n";
cout<<"\nLuas = "<<luas;
break;
case 5 :
int epi,lpk,jari,pelukis;
cout<<"Menghitung Luas Permukaan Kerucut"<<endl;
epi=3.14;
cout<<"Masukan Jari-jari : ";
cin>>jari;
cout<<"Masukan garis pelukis : ";
cin>>pelukis;
lpk=epi*jari*(jari+pelukis);
cout<<"Luas Permukaan kerucut : "<<lpk;
break;
case 6 :
int la, ls, luas_limas;
cout<<"Menghitung Luas Permukaan Limas Segitiga"<<endl;
cout<<"Masukkan Luas Alas : ";
cin>>la;
cout<<"Masukkan Luas Selimut : ";
cin>>ls;
luas_limas=la+ls;
cout<<"Luas Permukaan Limas Segitiga : "<<luas_limas;
break;
case 7 :
int tahun;
cout<<"Rumus Untuk Mengetahui Tahun Kabisat"<<endl;
cout<<"Masukkan Tahun : ";
cin>>tahun;
if (tahun % 4 != 0)
cout << "Tahun " << tahun << " bukanlah tahun kabisat" << endl;
else
if ((tahun % 100 == 0) && (tahun % 400 != 0))
cout << "Tahun " << tahun << " bukanlah tahun kabisat" << endl;
else
cout << "Tahun " << tahun << " merupakan tahun kabisat" << endl;
break;
}
return 0;
Output Program :
Flowchart :
Penjelasan Program :
Program di atas adalah program operasi kondisi switch case dan terdapat kondisi if di dalam
switch case. Switch case adalah percabangan. Dari setiap percabangan terdapat proses untuk
di execute. Program akan di tampilkan saat kita memilih salah satu case tersebut.
Program ini menggunakan header #include<iostream.h> untuk fungsi cin, cout. Serta tipe
data float untuk bilangan pecahan, dan int untuk bilangan bulat.Fungsi return 0 menyatakan
hasil keluaran dari fungsi main () adalah 0. Pada C++ return 0 menyatakan bahwa program
berakhir dengan normal.
KESIMPULAN
1. Dalam belajar pemrograman terlebih dahulu harus mengerti tentang sistem operasi,
algoritma dan flowchart.
2. Dibutuhkan ketelitian dalam penulisan kode program bahasa C maupun C++, karena salah
penulisan sekecil apapun tetap tidak akan bisa di eksekusi oleh program (error).
3. Memahami flowchart masing masing program, agar kita paham tentang alur berjalannya
suatu program. Sehingga mudah dalam proses identifikasi kesalahan program.
4. Ekspresi atau ungkapan adalah suatu bentuk yang menghasilkan suatu nilai. Dalam bentuk
sederhana, ekspresi berupa sebuah literal atau variabel. Dalam bentuk yang lebih kompleks,
suatu statement melibatkan operator, operand dan variabel.
5. Memahami Dasar Teori sebelum melakukan praktikum. Operasi kondisi terbagi menjadi 5
yaitu Pernyataan IF, Pernyataan IF-Else, Pernyataan Nested IF, Pernyataan IF-Else IF,
Pernyataan Switch-Case.
DAFTAR RUJUKAN
1. Tim Asisten Dosen. 2017. Modul 3 Operasi Kondisi. Malang : Universitas Negeri Malang.