Anda di halaman 1dari 40

LAPORAN PRAKTIKUM III

OPERASI KONDISI

Disusun untuk Memenuhi Matakuliah Praktikum Dasar Pemrograman C++


Dibimbing oleh Bapak Wahyu Sakti Gunawan Irianto

Oleh:
MARIO HENDRIAL CHRISTANTO AY
160533611503
S1 PTI’16 OFF B

UNIVERSITAS NEGERI MALANG


FAKULTAS TEKNIK
JURUSAN TEKNIK ELEKTRO
PRODI S1 PENDIDIKAN TEKNIK INFORMATIKA
September 2016
OPERASI KONDISI

TUJUAN
Setelah mempelajari bab ini diharapkan mahasiswa akan mampu :
1. Menjelaskan tentang jenis-jenis operator.
2. Menjelaskan masing-masing fungsi operator.
3. Memahami cara penggunaan masing-masing operator.
4. Membuat program dengan mengaplikasikan operator.
5. Mengevaluasi kesalahan pada program.

DASAR TEORI
Operator Kondisi

Pernyataan bercabang pada pemrograman digunakan untuk memecahkan persoalan untuk


mengambil suatu keputusan diantara sekian pernyataan yang ada, dimana sebuah instruksi
akan dilaksnakan jika sebuah kondisi terpenuhi. Terdapat 5 jenis operasi kondisi, antara lain :
Pernyataan If, Pernyataan If-Else, If-Else Bertingkat (Nested If dan If-Else If), Pernyataan
Switch-Case.

1. Pernyataan IF
Pernyataan IF mempunyai pengertian “jika kondisi bernilai benar, maka
pernyataan akan dikerjakan dan jika memenuhi syarat maka program akan
mengabaikan pernyataan”. Dari pengertian tersebut, maka dapat dilihat diagram alir
seperti gambar 1.
Bentuk umum pernyataan if adalah :
If (kondisi)
Pernyataan;

Penulisan kondisi harus didalam kurung (…….) dan berupa ekspresi bolean
(hasil logika true atau false, dan pernyataan dapat berupa sebuah pernyataan tunggal,
pernyataan majemuk atau pernyataan kosong.
Jika pemakaian if diikuti dengan pernyataan majemuk, bentuk penulisannya adalah
sebagai berikut:

If (kondisi)
{
Pernyataan1;
Pernyataan2;
…….;
}

2. Pernyataan IF-Else
Pernyataan if mempunyai pengertian “jika kondisi bernilai benar, maka
pernyataan-1 yang akan di eksekusi. Dan jika tidak memenuhi syarat makan akan
dieksekusi pernyataan-2”. Dari pengertian tersebut dapat dilihat di diagram alir pada
gambar 2.
Bentuk umum dari pernyataan if-else adalah:

If (kondisi)

Pernyataan-1;

Else

Pernyataan-2;

Pada gambar 2, diagram alir if-else pernyataan 1 dan pernyataan 2 dapat berupa
sebuah pernyataan tunggal, pernyataan majemuk, atau pernyataan kosong. Jika if-else
diikuti dengan persyaratan majemuk, bentuk penuliisan nya adalah;

If (kondisi){

Pernyataan-1;

……;

} else {

Pernyataan-2;

…..;

3. IF-Else Bertingkat
Bentuk If-Else dapat digunakan secara bertingka. Ada beberapa bentuk if-Else
bertingkat, antara lain, nested if dan if-else if.

Nested IF
Nested if merupakan bentuk pernyataan if yang ada di dalam pernyataan if
yang lain. Disebut juga if bersarang. Eksekusinya memperhatikan pernyataan if
yang ada.
Bentuk umum dari pernyataan ini adalah

IF-Else IF
Bentuk ini merupakan penggunaan bentuk if else secara majemuk. Pernyataan
if pada else if akan dieksekusi jika hasil pernyataan if sebelumnya bernilai false.

Bentuk umum dari pernyataan ini adalah

4. Pernyataan Switch – Case


Bentuk switch-case merupakan pernyataan yang dirancang khusus untuk
menanggani pengambilan keputusan yang akan melibatkan sejumlah atau banyak
alternative. Pernyataan switch-case ini memiliki kegunaan yang sama seperti if-else
bertingkat, tetapi dengan kondisi yang bertipe karakter atau interger.
Latihan Praktikum 1
Pemrograman C++
Nama Program : Latihan 1
Bahasa Pemrogramam : C++
Compiler : MinGW Developer Studio
Script program :
#include <iostream.h>

int main()
{
int a=10;
if (a<20){
cout<<" a kurang dari 20"<<endl;
}
cout<<" nilai a adalah : "<<a<<endl;
}

Output Program :
Jika a<20

Jika a>=20
Flowchart :

if

output

output

Penjelasan Program :
Program ini digunakan untuk menenttukan perbandingan pada variable a.
- Jika nilai a kurang dari 20, maka yang menjadi outputan adalah “a kurang dari 20”,
setelah itu di bawahnya akan di outputkan “nilai a adalah : a”.
- JIka nilai a lebih dari 20 atau 20, maka yang menjadi outputan adalah “nilai a adalah : a”
Latihan Praktikum 2
Pemrograman C++
Nama Program : Mengetahui bilangan ganjil genap
Bahasa Pemrogramam : C++
Compiler : MinGW Developer Studio
Script program :
#include <iostream.h>

int main()
{
int bil;
cout<<" Masukkan 2 digit angka terakhir NIM Anda : ";
cin>>bil;
if(bil%2==0){
cout<<"\n Digit NIM Anda adalah bilangan GENAP"<<endl;
}
else cout<<"\n Digit NIM Anda adalah bilangan GANJIL"<<endl;
}

Output Program :
JIka (bil%2==0)

Jika (bil%2!=0)
Flowchart :

input

if

output output

Penjelasan Program :
Program ini digunakan untuk mengetahui bilangan ganjil atau genap pada nilai variabel bil.
Pertama kita harus memasukkan dua digit terakhir NIM kita, lalu nilai tersebut masuk ke
variable bil. Jika :
- Nilai bil adalah bilangan genap, maka akan memenuhi kondisi (bil%2==0), dan akan
dioutputkan “Digit NIM Anda adalah bilangan GENAP”.
- Nilai bil adalah bilangan ganjil, maka tidak memenuhi kondisi (bil%2==0), dan akan
dioutputkan “Digit NIM Anda adalah bilangan GANJIL”.
Latihan Praktikum 3
Pemrograman C++
Nama Program : Menentukan letak angka
Bahasa Pemrogramam : C++
Compiler : MinGW Developer Studio
Script program :
#include <iostream.h>

int main()
{
int x;
cout<<" Masukkan sebuah angka : ";
cin>>x;
if(x>=10){
if(x<=20)
{
cout<<"\n Nilai "<<x<<" ada diantara 10 dan 20";
}
else cout<<"\n Nilai "<<x<<" lebih dari 20";
}
else cout<<"\n Nilai "<<x<<" kurang dari 10";
}

Output Program :
Jika (x<=20)

Jika (x<10)

Jika (x>20)
Flowchart :

input

if

output output
else if
10

output

Penjelasan Program :
Program ini digunakan untuk mengetahui letak bilangan pada urutan bilangan dan
perbandingan nilai bilangan pada variabel x. Pertama kita harus memasukkan nilai yang akan
menjadi nilai x. Jika :
- Nilai x lebih dari 10 atau 10, maka akan memenuhi kondisi (x>=10), kemudian akan
bertemu kondisi lagi, jika :
- Nilai x kurang dari 20 atau 20, maka akan memenuhi kondisi (x<=20), kemudian
akan dioutputkan menjadi “Nilai x ada di antara 10 dan 20”.
- Nilai x lebih dari 20, maka tidak akan memenuhi kondisi (x<=20), kemudian akan
dioutputkan menjadi “Nilai x lebih dari 20”.
- Nilai x kurang dari 10 , maka tidak akan memenuhi kondisi (x>=10), kemudian akan
dioutputkan menjadi “Nilai x kurang dari 10”.
Latihan Praktikum 4
Pemrograman C++

Nama Program : Mengetahui bilangan bulat positif


Bahasa Pemrogramam : C++
Compiler : MinGW Developer Studio
Script program :
#include <iostream>

int main()
{
int x, y;
std::cout<<" Masukkan sebuah bilangan bulat : ";
std::cin>>x;
std::cout<<" Masukkan sebuah bilangan bulat lain : ";
std::cin>>y;
if (x>0 && y>0){
std::cout<<" Kedua bilangan tersebut adalah bilangan
POSITIF\n";
}
else if (x>0 || y>0){
std::cout<<" Salah satu bilangan tersebut adalah bilangan
POSITIF\n";
}
else std::cout<<" Kedua bilangan tersebut BUKAN bilangan POSITIF\n";
}

Output Program :.
Jika (x>0 || y>0)

Jika (x>0 && y>0)

Jika (x<0 && y<0)


Flowchart :
input

output

output

output

Penjelasan Program :
Program ini digunakan untuk mengetahui perbandingan dua bilangan bulat, apakah positif
atau bukan. #include<iostream> digunakan karena pada program ini menggunakan
std::cout. Pertama kita harus memasukkan nilai x dan y. Jika :
- Nilai x lebih dari 0 dan y lebih dari 0, maka akan memenuhi kondisi (x>0 && y>0),
kemudian akan dioutputkan menjadi “Kedua bilangan tersebut adalah bilangan
POSITIF”.
- Nilai x lebih dari 0 atau y lebih dari 0, maka akan memenuhi kondisi (x>0 || y>0),
kemudian akan dioutputkan menjadi “Salah satu bilangan tersebut adalah bilangan
POSITIF”.
- Nilai x kurang dari 0, maka tidak memenuhi kedua kondisi di atas, kemudian akan
dioutputkan menjadi “Kedua bilangan tersebut BUKAN bilangan POSITIF”.
Latihan Praktikum 5
Pemrograman C++

Nama Program : Menentukan bulan


Bahasa Pemrogramam : C++
Compiler : MinGW Developer Studio
Script program :
#include <iostream.h>

int main()
{
int bulan;
cout<<" Please input month numbers (1-12) : ";
cin>>bulan;
switch(bulan){
case 1:
cout<<" The 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 Mei"<<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 Desember"<<endl;
break;
default:
cout<<" Invalid month! \nmake sure your input is
correct."<<endl;
}
}
Output Program :
Jika (bulan<=12)

Jika (bulan>12)
Flowchart :

defau
lt Invalid
grade
Penjelasan Program :
Program ini digunakan untuk menentukan bulan. Pertama kita harus memasukkan bilangan
yang menununjukkan urutan bulan tersebut, kemudian masuk menjadi nilai variabel bulan.
Pada program ini operasi kondisi yang digunakan adalah switch-case. Jika :
- Nilai bulan = 1, maka memenuhi kondisi case 1,, kemudian akan dioutputkan menjadi
“January”.
- Nilai bulan = 2, maka memenuhi kondisi case 2, kemudian akan dioutputkan menjadi
“February”.
- Nilai bulan = 3, maka memenuhi kondisi case 3, kemudian akan dioutputkan menjadi
“March”.
- Nilai bulan = 4, maka memenuhi kondisi case 4, kemudian akan dioutputkan menjadi
“April”.
- Nilai bulan = 5, maka memenuhi kondisi case 5, kemudian akan dioutputkan menjadi
“May”.
- Nilai bulan = 6, maka memenuhi kondisi case 6, kemudian akan dioutputkan menjadi
“June”.
- Nilai bulan = 7, maka memenuhi kondisi case 7, kemudian akan dioutputkan menjadi
“July”.
- Nilai bulan = 8, maka memenuhi kondisi case 8, kemudian akan dioutputkan menjadi
“August”.
- Nilai bulan = 9, maka memenuhi kondisi case 9, kemudian akan dioutputkan menjadi
“September”.
- Nilai bulan = 10, maka memenuhi kondisi case 10, kemudian akan dioutputkan menjadi
“October”.
- Nilai bulan = 11, maka memenuhi kondisi case 11, kemudian akan dioutputkan menjadi
“November”.
- Nilai bulan = 12, maka memenuhi kondisi case 12, kemudian akan dioutputkan menjadi
“Desember”.
- Nilai bulan >= 13, maka tidak memenuhi kondisi default, kemudian akan dioutputkan
menjadi “Invalid Month”.

-
Latihan Praktikum 6
Pemrograman C++

Nama Program : Menentukan predikat sebuah nilai


Bahasa Pemrogramam : C++
Compiler : MinGW Developer Studio
Script program :
#include <iostream.h>

int main()
{
char nilai;
cout<<" Please insert a grade (A, B, C, D, or E) : ";
cin>>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;
}
Output Program :
Jika nilai = A.

Jika nilai = F

Flowchart :
Penjelasan Program :
Program ini digunakan untuk menentukan predikat sebuah nilai, menggunakan kondisi
switch-case. Pertama kita harus memasukkan nilai untuk variabel nilai. JIka :
- nilai=’A’||nilai=’a’, maka akan memenuhi kondisi case ’A’ atau case ‘a’, kemudian
akan dioutputkan menjadi “Excellent : )”.
- nilai=’B’||nilai=’b’, maka akan memenuhi kondisi case ’B’ atau case ‘b’, kemudian
akan dioutputkan menjadi “Well done : )”.
- nilai=’C’||nilai=’c’, maka akan memenuhi kondisi case ’C’ atau case ‘c’, kemudian
akan dioutputkan menjadi “You passed”.
- nilai=’D’||nilai=’d’, maka akan memenuhi kondisi case ’D’ dan case ‘d’, kemudian
akan dioutputkan menjadi “Better try again”.
- nilai=’E’||nilai=’e’, maka akan memenuhi kondisi case ’E’ dan case ‘e’, kemudian akan
dioutputkan menjadi “Sorry, you failled”.
- Jika nilai tidak memenuhi kondisi di atas, maka dioutputkan menjadi “Invalid grade”.
Masalah 1
Pemrograman C++

Nama Program : Program kasir


Bahasa Pemrogramam : C++
Compiler : MinGW Developer Studio
Script program :
#include <iostream.h>
#include <windows.h>

int main()
{
system ("color F0");
char kasir[99], pembeli[99];
int total,a,b,c;
cout<<" +---------------------------------------------------------------------------+ "<<endl;
cout<<" | Toko 'BERKAH SEJAHTERA' | "<<endl;
cout<<" +-------------------------------------------+-------------------------------+ "<<endl;
cout<<" | Untuk pembelian barang dengan harga total | Diskon 10% | "<<endl;
cout<<" | kurang dari Rp. 75.000,- | | "<<endl;
cout<<" +-------------------------------------------+-------------------------------+ "<<endl;
cout<<" | Untuk pembelian barang dengan harga total | Diskon 20% | "<<endl;
cout<<" | antara Rp. 75.000,- sampai Rp 100.000,- | | "<<endl;
cout<<" +-------------------------------------------+-------------------------------+ "<<endl;
cout<<" | Untuk pembelian barang dengan harga total | Diskon 30% | "<<endl;
cout<<" | lebih dari Rp. 100.000,- | | "<<endl;
cout<<" +-------------------------------------------+-------------------------------+ "<<endl;
cout<<endl;
cout<<" Nama Kasir : ";
cin>>kasir;
cout<<" Nama Pembeli : ";
cin>>pembeli;
cout<<" Total harga (belum diskon) : Rp. ";
cin>>total;
cout<<"";
if (total<=74999){
a=total-((10*total)/100);
cout<<" Anda mendapatkan diskon sebesar 10%\n Total harga (sudah diskon) : Rp.
"<<a<<",-"<<endl;
}
else if (total>=75000 && total<99999){
b=total-((20*total)/100);
cout<<" Anda mendapatkan diskon sebesar 20%\n Total harga (sudah diskon) : Rp.
"<<b<<",-"<<endl;
}
else if (total>=100000){
c=total-((30*total)/100);
cout<<" Anda mendapatkan diskon sebesar 30%\n Total harga (sudah diskon) : Rp.
"<<c<<",-"<<endl;
}
cout<<endl;
cout<<" Terima kasih, silahkan datang kembali :)"<<endl;
}
Output Program :

.
Flowchart :
Penjelasan Program :
Program ini digunakan untuk menghitung harga total belanjaan setelah di diskon. Pertama
kita harus memasukkan nama kasir yang menjadi nilai variabel kasir, nama pembeli yang
menjadi nilai variabel pembeli, dan roral harga sebelum diskon yang menjadi nilai variabel
total, Jika :
- Nilai total kurang dari 74999 atau 74999, maka akan memenuhi kondisi (total<=74999),
kemudian akan diproses dengan rumus a=total-((10*total)/100), dan dioutputkan
menjadi “Anda mendapatkan diskon sebesar 10%. Total harga (sudah diskon) Rp. a”.
- Nilai total lebih dari 75000 sampai 99999, maka akan memenuhi kondisi
(total>=75000&&total<=99999), kemudian akan diproses dengan rumus b=total-
((20*total)/100), dan dioutputkan menjadi “Anda mendapatkan diskon sebesar 20%.
Total harga (sudah diskon) Rp. b”.
- Nilai total lebih dari 100000, maka akan memenuhi kondisi (total>=10000), kemudian
akan diproses dengan rumus c=total-((30*total)/100), dan dioutputkan menjadi “Anda
mendapatkan diskon sebesar 30%. Total harga (sudah diskon) Rp. c”.
- Yang terakhir dioutputkan adalah “Terima kasih, silahkan datang kembali : )”.
Pada program ini ada statement baru yang saya pakai yaitu cin.getline. statement ini
digunakan agar inputan nama kasir dan nama pembeli bisa lebih dari satu kalimat,
strukturnya adalah cin.getline (variabel, jumlah_karakter_maksimal);
Masalah 2
Pemrograman C++

Nama Program : Program kasir


Bahasa Pemrogramam : C++
Compiler : MinGW Developer Studio
Script program :
include <iostream.h>

int main()
{
char kasir[99], pembeli[99];
int total,a,b,c;
cout<<" + --------------------------------------------------------------------------+
"<<endl;
cout<<" | PT. MAKMUR SUKSES JAYA |
"<<endl;
cout<<" +-------------------------------------------+ ------------------------------+
"<<endl;
cout<<" | Keterangan | Bonus |
"<<endl;
cout<<" +-------------------------------------------+ ------------------------------+
"<<endl;
cout<<" | Jika salesman dapat menjual barang hingga | Rp. 15.000,- dan |
"<<endl;
cout<<" | Rp. 60.000,- | komisi 15% dari pendapatan |
"<<endl;
cout<<" +-------------------------------------------+ ------------------------------+
"<<endl;
cout<<" | Jika salesman dapat menjual barang hingga | Rp. 30.000,- dan |
"<<endl;
cout<<" | diatas Rp. 60.000,- | komisi 20% dari pendapatan |
"<<endl;
cout<<" +-------------------------------------------+ ------------------------------+
"<<endl;
cout<<" | Jika salesman dapat menjual barang hingga | Rp. 50.000,- dan |
"<<endl;
cout<<" | diatas Rp. 100.000,- | komisi 30% dari pendapatan |
"<<endl;
cout<<" +-------------------------------------------+ ------------------------------+
"<<endl;
cout<<endl;
cout<<" Nama Kasir : ";
cin.getline (kasir,99)
cout<<" Nama Salesman : ";
cin.getline (pembeli,99);
cout<<" Total Pendapatan : Rp. ";
cin>>total;
cout<<"";
if (total<60000){
a=15000+(total+((15*total)/100));
cout<<" Anda mendapatkan bonus Rp. 15.000,- dan komisi 15% dari pendapatan anda\n Total
pendapatan (sudah bonus) : Rp. "<<a<<",-"<<endl;
}

else if (total>=60000 && total<100000){


b=30000+(total+((20*total)/100));
cout<<" Anda mendapatkan bonus Rp. 30.000,- dan komisi 20% dari pendapatan anda\n Total
pendapatan (sudah bonus) : Rp. "<<b<<",-"<<endl;
}
else if (total>=100000){
c=50000+(total+((30*total)/100));
cout<<" Anda mendapatkan bonus Rp. 50.000,- dan komisi 30% dari pendapatan anda\n Total
pendapatan (sudah bonus) : Rp. "<<c<<",-"<<endl;
}
cout<<endl;
cout<<" Terima kasih sudah bekerja keras hari ini :)"<<endl;
}

Output Program :
Jika (total>=100000)

.
Jika (total>=75000&&total<=99999)
Flowchart :
Penjelasan Program :
Program ini digunakan untuk menghitung bonus pendapatan salesman. Pertama kita harus
memasukkan nama kasir yang menjadi nilai variabel kasir, nama pembeli yang menjadi nilai
variabel pembeli, dan roral harga sebelum diskon yang menjadi nilai variabel total, Jika :
- Nilai total kurang dari 60000, maka akan memenuhi kondisi (total<60000), kemudian
akan diproses dengan rumus a=15000+(total+((15*total)/100), dan dioutputkan menjadi
“Anda mendapatkan bonus Rp. 15.000,- dan komisi 15% dari pendapatan anda. Total
pendapatan (sudah bonus) : Rp. a”.
- Nilai total lebih dari 60000 sampai 100000, maka akan memenuhi kondisi
(total>=60000&&total<100000), kemudian akan diproses dengan rumus
b=30000+(total+((20*total)/100), dan dioutputkan menjadi “Anda mendapatkan bonus
Rp. 30.000,- dan komisi 20% dari pendapatan anda. Total pendapatan (sudah bonus) :
Rp. b”.
- Nilai total lebih dari 100000 atau 100000, maka akan memenuhi kondisi (total>=10000),
kemudian akan diproses dengan rumus c=50000+(total+((30*total)/100), dan
dioutputkan menjadi Anda mendapatkan bonus Rp. 50.000,- dan komisi 30% dari
pendapatan anda. Total pendapatan (sudah bonus) : Rp. c”.
- Yang terakhir dioutputkan adalah “Terima kasih sudah bekerja keras hari ini : )”.
Pada program ini ada statement baru yang saya pakai yaitu cin.getline. statement ini
digunakan agar inputan nama kasir dan nama pembeli bisa lebih dari satu kalimat,
strukturnya adalah cin.getline (variabel, jumlah_karakter_maksimal);
Tugas Rumah 1
Pemrograman C++

Nama Program : Menghitung Nilai Mahasiswa


Bahasa Pemrogramam : C++
Compiler : MinGW Developer Studio
Script program :
#include <iostream>
#include <windows.h>

using namespace std;

void gotoxy(int x, int y)


{
HANDLE hConsoleOutput;
COORD dwCursorPosition;
dwCursorPosition.X = x;
dwCursorPosition.Y = y;
hConsoleOutput = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleCursorPosition(hConsoleOutput,dwCursorPosition);
}

int main()
{
float n1, n2, n3, n4;
string p1, p2, p3, p4, ket;
cout<<" + --------------------------------------------------------------------------+
"<<endl;
cout<<" | Nilai Akhir Mahasiswa Teknik Elektro |
"<<endl;
cout<<" | UNIVERSITAS NEGERI MALANG |
"<<endl;
cout<<" +-----+-----------------------------------------------+----------+ ----------+
"<<endl;
cout<<" | No. | Aspek Penilaian | Nilai | Predikat |
"<<endl;
cout<<" +-----+-----------------------------------------------+----------+ ----------+
"<<endl;
for (int i=1; i<=1; i++){
gotoxy(1,5+i);cout<<"|";
gotoxy(4,5+i);cout<<"1";
gotoxy(7,5+i);cout<<"|";
gotoxy(10,5+i);cout<<" Nilai Keaktifan";
gotoxy(55,5+i);cout<<"|";
gotoxy(60,5+i);cin>>n1;
gotoxy(66,5+i);cout<<"|";
if (n1>=0 && n1<=44){
p1="E";}
else if (n1>=45 && n1<=55){
p1="D";}
else if (n1>=56 && n1<=65){
p1="C";}
else if (n1>=66 && n1<=75){
p1="B-";}
else if (n1>=76 && n1<=80){
p1="B";}
else if (n1>=81 && n1<=85){
p1="B+";}
else if (n1>=86 && n1<=90){
p1="A-";}
else if (n1>=91 && n1<=100){
p1="A";}
gotoxy(71,5+i);cout<<p1;
gotoxy(77,5+i);cout<<"|";
gotoxy(1,6+i);cout<<"|";
gotoxy(7,6+i);cout<<"|";
gotoxy(55,6+i);cout<<"|";
gotoxy(66,6+i);cout<<"|";
gotoxy(77,6+i);cout<<"|";
gotoxy(1,7+i);cout<<"|";
gotoxy(4,7+i);cout<<"2";
gotoxy(7,7+i);cout<<"|";
gotoxy(10,7+i);cout<<" Nilai Tugas";
gotoxy(55,7+i);cout<<"|";
gotoxy(60,7+i);cin>>n2;
gotoxy(66,7+i);cout<<"|";
if (n2>=0 && n2<=44){
p2="E";}
else if (n2>=45 && n2<=55){
p2="D";}
else if (n2>=56 && n2<=65){
p2="C";}
else if (n2>=66 && n2<=75){
p2="B-";}
else if (n2>=76 && n2<=80){
p2="B";}
else if (n2>=81 && n2<=85){
p2="B+";}
else if (n2>=86 && n2<=90){
p2="A-";}
else if (n2>=91 && n2<=100){
p2="A";}
gotoxy(71,7+i);cout<<p2;
gotoxy(77,7+i);cout<<"|";
gotoxy(1,8+i);cout<<"|";
gotoxy(7,8+i);cout<<"|";
gotoxy(55,8+i);cout<<"|";
gotoxy(66,8+i);cout<<"|";
gotoxy(77,8+i);cout<<"|";
gotoxy(1,9+i);cout<<"|";
gotoxy(4,9+i);cout<<"3";
gotoxy(7,9+i);cout<<"|";
gotoxy(10,9+i);cout<<" Nilai Ujian";
gotoxy(55,9+i);cout<<"|";
gotoxy(60,9+i);cin>>n3;
gotoxy(66,9+i);cout<<"|";
if (n3>=0 && n3<=44){
p3="E";}
else if (n3>=45 && n3<=55){
p3="D";}
else if (n3>=56 && n3<=65){
p3="C";}
else if (n3>=66 && n3<=75){
p3="B-";}
else if (n3>=76 && n3<=80){
p3="B";}
else if (n3>=81 && n3<=85){
p3="B+";}
else if (n3>=86 && n3<=90){
p3="A-";}
else if (n3>=91 && n3<=100){
p3="A";}
gotoxy(71,9+i);cout<<p3;
gotoxy(77,9+i);cout<<"|";
gotoxy(1,10+i);cout<<"|";
gotoxy(7,10+i);cout<<"|";
gotoxy(55,10+i);cout<<"|";
gotoxy(66,10+i);cout<<"|";
gotoxy(77,10+i);cout<<"|";
gotoxy(1,11+i);cout<<"+-----+-----------------------------------------------+---
-------+----------+ ";
gotoxy(1,12+i);cout<<"|";
gotoxy(55,12+i);cout<<"|";
gotoxy(66,12+i);cout<<"|";
gotoxy(77,12+i);cout<<"|";
gotoxy(1,13+i);cout<<"|";
gotoxy(4,13+1);cout<<" NILAI AKHIR";
gotoxy(55,13+i);cout<<"|";
n4=(0.2*n1)+(0.3*n2)+(0.5*n3);
gotoxy(60,13+i);cout<<n4;
gotoxy(66,13+i);cout<<"|";
if (n4>=0 && n4<=44){
p4="E";}
else if (n4>=45 && n4<=55){
p4="D";}
else if (n4>=56 && n4<=65){
p4="C";}
else if (n4>=66 && n4<=75){
p4="B-";}
else if (n4>=76 && n4<=80){
p4="B";}
else if (n4>=81 && n4<=85){
p4="B+";}
else if (n4>=86 && n4<=90){
p4="A-";}
else if (n4>=91 && n4<=100){
p4="A";}
gotoxy(71,13+i);cout<<p4;
gotoxy(77,13+i);cout<<"|";
gotoxy(1,14+i);cout<<"|";
gotoxy(55,14+i);cout<<"|";
gotoxy(66,14+i);cout<<"|";
gotoxy(77,14+i);cout<<"|";
gotoxy(1,15+i);cout<<"+---------------------------------------------------
--+----------+----------+ ";
gotoxy(1,16+i);cout<<"|";
if (n4>=0 && n4<=55){
ket="Maaf, Anda belum dapat diluluskan. Tingkatkan terus belajar
Anda.";}
else if (n4>=56 && n4<=65){
ket="Anda lulus, tingkatkan lagi pencapaian Anda.";}
else if (n4>=66 && n4<=85){
ket="Anda lulus dengan baik, tingkatkan terus prestasi Anda.";}
else if (n4>=86 && n4<=100){
ket="Selamat!, Anda lulus dengan nilai yang EXCELLENT!";}
gotoxy(4,16+i);cout<<ket;
gotoxy(77,16+i);cout<<"|";
gotoxy(1,17+i);cout<<"+---------------------------------------------------
------------------------+ "<<endl;
}
cout<<" *NILAI AKHIR = 20% Nilai Keterampilan + 30% Nilai Tugas + 50% Nilai
Ujian";
Output Program :
Flowchart :
Penjelasan Program :
- Pada program ini digunakan fungsi tambahan gotoxy, strukturnya adalah gotoxy
(kolom_ke, baris ke+i), fungsi gotoxy memanfaatkan perulangan for dimana (int i=1;
i<=1; i++). Kegunaan fungsi gotoxy adalah untuk memberikan perintah enter ke
samping.
- Pertama masukkan nilai afektif, yang menjadi nilai variabel n1.
- Kedua masukkan nilai tugas, yang menjadi nilai variabel n2.
- Ketiga masukkan nilai ujian, yang menjadi nilai variabel n3.
- Nilai akhir dihitung dengan rumus n4=(0.2*n1)+(0.3*n2)+(0.5*n3), yang dioutputkan
oleh variabel n4.
- Lalu akan muncul outputan dari variabel ket, nilai ket bergantung pada nilai n4.
Tugas Rumah 2
Pemrograman C++
Nama Program : Mengitung rumus bangun ruang dan mengetahui tahun kabisat
Bahasa Pemrogramam : C++
Compiler : MinGW Developer Studio
Script program :
#include <iostream.h>
#include <windows.h>

int main()
{
int pilih, tahun;
char ulang;
float Lbola, Lkubus, Lbalok, Ltabung, Lkerucut, Llimas;
float rbola, rkubus, pbalok, lbalok, tbalok, rtabung, ttabung, rkerucut, skerucut,
alimas, tlimas;
do {
system ("cls");
cout<<" +----+ ---------------------------------------------------------------------+
"<<endl;
cout<<" | No | Pilihan |
"<<endl;
cout<<" +----+ ---------------------------------------------------------------------+
"<<endl;
cout<<" | 1. | Rumus Menghitung Luas Permukaan 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 Segiempat |
"<<endl;
cout<<" | 7. | Rumus Mengetahui Tahun Kabisat |
"<<endl;
cout<<" +----+ ---------------------------------------------------------------------+
"<<endl<<endl;
cout<<" Pilih salah satu dari pilhan di atas (1-7) : ";cin>>pilih;
cout<<endl;
switch(pilih){
case 1:
cout<<" Rumus Menghitung Luas Permukaan Bola"<<endl;
cout<<" -------------------------------------------------------------------------
---- "<<endl;
cout<<" Masukkan jari-jari (cm) : ";cin>>rbola;
Lbola=4*3.14*(rbola*rbola);
cout<<" Luas Permukaan Bola adalah "<<Lbola<<"cm2"<<endl;
break;
case 2:
cout<<" Rumus Menghitung Luas Permukaan Kubus"<<endl;
cout<<" -------------------------------------------------------------------------
---- "<<endl;
cout<<" Masukkan panjang rusuk (cm) : ";cin>>rkubus;
Lkubus=6*(rkubus*rkubus);
cout<<" Luas Permukaan Kubus adalah "<<Lkubus<<"cm2"<<endl;
break;
case 3:
cout<<" Menghitung Luas Permukaan Balok"<<endl;
cout<<" -------------------------------------------------------------------------
---- "<<endl;
cout<<" Masukkan panjang : ";cin>>pbalok;
cout<<" Masukkan lebar : ";cin>>lbalok;
cout<<" Masukkan tinggi : ";cin>>tbalok;
Lbalok=2*((pbalok*lbalok)+(pbalok*tbalok)+(lbalok*tbalok));
cout<<" Luas Permukaan Balok adalah "<<Lbalok<<"cm2"<<endl;
break;
case 4:
cout<<" Menghitung Luas Permukaan Tabung"<<endl;
cout<<" -------------------------------------------------------------------------
---- "<<endl;
cout<<" Masukkan jari-jari : ";cin>>rtabung;
cout<<" Masukkan tinggi : ";cin>>ttabung;
Ltabung=2*3.14*rtabung*(rtabung+ttabung);
cout<<" Luas Permukaan Tabung adalah "<<Ltabung<<"cm2"<<endl;
break;
case 5:
cout<<" Menghitung Luas Permukaan Kerucut"<<endl;
cout<<" -------------------------------------------------------------------------
---- "<<endl;
cout<<" Masukkan jari-jari : ";cin>>rkerucut;
cout<<" Masukkan sisi miring : ";cin>>skerucut;
Lkerucut=(3.14*rkerucut*rkerucut)+(3.14*rkerucut*skerucut);
cout<<" Luas Permukaan kerucut adalah "<<Lkerucut<<"cm2"<<endl;
break;
case 6:
cout<<" Menghitung Luas Permukaan Tabung Limas Segiempat"<<endl;
cout<<" -------------------------------------------------------------------------
---- "<<endl;
cout<<" Masukkan panjang sisi alas : ";cin>>alimas;
cout<<" Masukkan tinggi : ";cin>>tlimas;
Llimas=alimas*alimas+(2*alimas*tlimas);
cout<<" Luas Permukaan Limas Segiempat adalah "<<Llimas<<"cm2"<<endl;
break;
case 7:
cout<<" Mengetahui Tahun Kabisat"<<endl;
cout<<" -------------------------------------------------------------------------
---- "<<endl;
cout<<" Masukkan tahun : ";cin>>tahun;
if (tahun%4==0){
cout<<" Tahun "<<tahun<<" adalah tahun kabisat"<<endl;}
else{
cout<<" Tahun "<<tahun<<" bukan tahun kabisat"<<endl;}
break;
default:
cout<<" Masukkan Anda salah."<<endl;
}
cout<<" -----------------------------------------------------------------------------
"<<endl;
cout<<" Apakah Anda ingin mengulang kembali? (y/n) : ";cin>>ulang;
}
while (ulang=='Y'||ulang=='y');
}
Output Program :
Flowchart :
Penjelasan Program :
Pada program ini terdapat 6 macam pilihan rumus bangun ruang dan mengetahui tahun
kabisat. Pertama kita harus memasukkan nilai variabel pilih, untuk memilih program yang
kita inginkan, Jika :
- Nilai pilih = 1, maka akan memenuhi kondisi case 1, dan akan masuk ke program
Menghitung Rumus Menghitung Luas Permukaan Bola. Untuk menghitung luas
permukaan bola, digunakan rumus Lbola=4*3.14*(rbola*rbola).
- Nilai pilih = 2, maka akan memenuhi kondisi case 2, dan akan masuk ke program
Menghitung Rumus Menghitung Luas Permukaan Kubus. Untuk menghitung luas
permukaan kubus, digunakan rumus Lkubus=6*(rkubus*rkubus).
- Nilai pilih = 3, maka akan memenuhi kondisi case 3, dan akan masuk ke program
Menghitung Rumus Menghitung Luas Permukaan Balok. Untuk menghitung luas
permukaan balok, digunakan rumus Lbalok = 2 * ((pbalok*lbalok) + (pbalok*tbalok)
+ (lbalok*tbalok)).
- Nilai pilih = 4, maka akan memenuhi kondisi case 4, dan akan masuk ke program
Menghitung Rumus Menghitung Luas Permukaan Tabung. Untuk menghitung luas
permukaan tabung, digunakan rumus Ltabung=2*3.14*rtabung*(rtabung+ttabung)
- Nilai pilih = 5, maka akan memenuhi kondisi case 5, dan akan masuk ke program
Menghitung Rumus Menghitung Luas Permukaan Kerucut. Untuk menghitung luas
permukaan kerucut, digunakan rumus Lkerucut = (3.14*rkerucut*rkerucut) +
(3.14*rkerucut*skerucut).
- Nilai pilih = 6, maka akan memenuhi kondisi case 6, dan akan masuk ke program
Menghitung Rumus Menghitung Luas Permukaan Limas Segiempat. Untuk menghitung
luas permukaan limas segiempat, digunakan rumus
Llimas=alimas*alimas+(2*alimas*tlimas).
- Nilai pilih = 7, maka akan memenuhi kondisi case 7, dan akan masuk ke program
Mengetahui Tahun Kabisat. Pertama kitah harus memasukkan nilai variabel tahun,
untuk mengetahui tahun kabisat digunakan kondisi if(tahun%4==0), jika nilai tahun
memenuhi ondisi tersebut, maka output “Tahun Kabisat”, jika tidak memenuhi, maka
output “Bukan Tahun Kabisat”.
KESIMPULAN
1. Dalam belajar pemrograman terlebih dahulu harus mengerti tentang sistem operasi,
algoritma dan flowchart.
2. Dalam pembuatan sebuah program harus teliti untuk menamahkan header. Karena header
sangat membantu untuk pembuatan fungsi sebuah program
3. Sebuah algoritma dan logika sangatlah penting untuk menentukan suatu pemecahan
masalah. Salah satunya dengan mempelajari operator, maka akan mempermudah dalam
pemecahan masalah yang di hadapi ketika membuat program
4. Operasi kondisi digunakan untuk memecahkan masalah-masalah yang memiliki lebih
dari satu pilihan.
5. Penulisan naskah / script program harus tepat dan lengkap, jika ada tanda baca dan
keyword yang kurang, maka program tidak bisa berjalan.

DAFTAR RUJUKAN

1. Tim Asisten Dosen. 2016. Modul 1 Operasi Kondisi. Malang : Universitas Negeri
Malang.

Anda mungkin juga menyukai