Anda di halaman 1dari 10

Nama : Mila Setia Dewi

NIM : 180803019
Grup : LAB P-1
Asisten : 1. Zainuddin Siregar (160803010)
2. Mutia Sari (150803023)

A. Source Code
#include <iostream>
#include <stdlib.h>
using namespace std;

float luaslingkaran(float r)
{
float ling;
ling=3.14*r*r;
return ling;
}

float luassegitiga(float a, float t)


{
float segi;
segi=0.5*a*t;
return segi;
}

float luaslayang(float d1, float d2 )


{
float lay;
lay=0.5*d1*d2;
return lay;
}

float luastrapesium(float s1, float s2, float t)


{
float trap;
trap=(s1+s2)*t*0.5;
return trap;
}

float luasjajargenjang(float a, float t)


{
float jar;
jar=a*t;
return jar;
}
float luaspersegi(float s)
{
float persegi;
persegi=s*s;
return persegi;
}

float luaspersegipanjang(float p, float l)


{
float pp;
pp=p*l;
return pp;
}

float volkubus(float s)
{
float kubus;
kubus=s*s*s;
return kubus;
}

float volprismasegitiga(float a, float b, float t)


{
float prisma;
prisma=0.5*a*b*t;
return prisma;
}

float volbola(float r)
{
float bola;
bola=4/3*3.14*r*r*r;
return bola;
}

float voltabung(float r, float t)


{
float tabung;
tabung=3.14*r*r*t;
return tabung;
}

float volkerucut(float r, float t)


{
float kerucut;
kerucut=1/3*3.14*r*r*t;
return kerucut;
}

float vollimassegitiga(float a, float b, float t)


{
float limas;
limas=1/3*(1/2*a*b)*t;
return limas;
}

float vollimassegiempat(float p, float l, float t)


{
float lim;
lim=1/3*(p*l)*t;
return lim;
}

int main()
{
char pilihan;
do
{
int pilih,q;
float s,p,l,r,t,s1,s2,d1,d2,a,b;
system("cls");
cout<<"\t\tProgram Menghitung Luas dan
Volume\n\n";
cout<<"1.Menghitung Luas Bangun
Datar\n2.Menghitung Volume Bangun Ruang";
cout<<"\nMasukkan Pilihan Anda : "; cin>>pilih;
cout<<endl;
switch(pilih)
{
case 1:
cout<<"1.persegi \n2.persegi panjang
\n3.lingkaran \n4.jajargenjang \n5.trapesium
\n6.segitiga \n7.layang-layang\n";
cout<<"Masukkan pilihan : "; cin>>q;
cout<<endl;
switch(q)
{

case 1:
system("cls");
cout<<"Luas Persegi\n";
cout<<"masukkan sisi : "; cin>>s;
cout<<"Luas Persegi = s x s = "<<s <<" x "
<<s <<" = "<<luaspersegi(s)<<endl;
break;

case 2:
system("cls");
cout<<"Luas Persegi Panjang\n";
cout<<"masukkan panjang : "; cin>>p;
cout<<"masukkan lebar : "; cin>>l;
cout<<"Luas Persegi Panjang = p x l = "<<p
<<" x "<<l <<" = "<<luaspersegipanjang(p,l)<<endl;
break;

case 3:
system("cls");
cout<<"Luas Lingkaran\n";
cout<<"masukkan jari-jari : "; cin>>r;
cout<<"Luas Lingkaran = phi x r x r = 3,14
x "<<r <<" x " <<r <<" = "<<luaslingkaran(r)<<endl;
break;

case 4:
system("cls");
cout<<"Luas Jajar Genjang\n";
cout<<"masukkan alas : "; cin>>a;
cout<<"masukkan tinggi : "; cin>>t;
cout<<"Luas Jajar Genjang = a x t = "<<a
<<" x " <<t << " = "<<luasjajargenjang(a,t)<<endl;
break;

case 5:
system("cls");
cout<<"Luas Trapesium\n";
cout<<"masukkan sisi pertama : "; cin>>s1;
cout<<"masukkan sisi kedua : "; cin>>s2;
cout<<"masukkan tinggi : "; cin>>t;
cout<<"Luas Trapesium = (s1 + s2) x t : 2
= " <<"("<<s1 <<" + "<<s2 <<") x "<<t <<" : 2 =
"<<luastrapesium(s1,s2,t)<<endl;
break;

case 6:
system("cls");
cout<<"Luas Segitiga\n";
cout<<"masukkan alas : "; cin>>a;
cout<<"masukkan tinggi : "; cin>>t;
cout<<"Luas Segitiga = 1/2 x a x t = 1/2
x "<<a <<" x " <<t <<" = "<<luassegitiga(a,t)<<endl;
break;

case 7:
system("cls");
cout<<"Luas Layang-layang\n";
cout<<"masukkan diagonal 1 : "; cin>>d1;
cout<<"masukkan diagonal 2 : ";cin>>d2;
cout<<"Luas Layang-layang = 1/2 x d1 x d2
= 1/2 x "<<d1 <<" x "<<d2 <<" =
"<<luaslayang(d1,d2)<<endl;
break;

default:
cout<<"pilihan tidak tersedia";

}
break;

case 2:
cout<<"1.Kubus \n2.Prisma Tegak segitiga
\n3.Bola \n4.Tabung \n5.Kerucut \n6.Limas Segitiga
\n7.Limas Segiempat\n";
cout<<"masukkan pilihan : "; cin>>q;
switch(q)
{

case 1:
system("cls");
cout<<"Volune Kubus\n";
cout<<"masukkan sisi : "; cin>>s;
cout<<"Volune Kubus = s x s x s = "<<s <<"
x "<<s <<" x "<<s <<" = "<<volkubus(s)<<endl;
break;

case 2:
system("cls");
cout<<"Volume Prisma Tegak Segitiga\n";
cout<<"masukkan alas : "; cin>>a;
cout<<"masukkan tinggi alas segitiga : ";
cin>>b;
cout<<"masukkan tinggi prisma : "; cin>>t;
cout<<"Volume Prisma Tegak Segitiga = 1/2
x alas x tinggi alas x tinggi prisma = 1/2 x "<<a <<"
x "<<b <<" x "<<t<<" =
"<<volprismasegitiga(a,b,t)<<endl;
break;

case 3:
system("cls");
cout<<"Volume Bola\n";
cout<<"masukkan jari-jari : "; cin>>r;
cout<<"Volume Bola = 4/3 x phi x r x r x r
= 4/3 x 3,14 x "<<r <<" x "<<r <<" x "<<r <<" =
"<<volbola(r)<<endl;
break;

case 4:
system("cls");
cout<<"Volume Tabung\n";
cout<<"masukkan jari-jari : "; cin>>r;
cout<<"masukkan tinggi : "; cin>>t;
cout<<"Volume Tabung = phi x r x r x t =
3,14 x "<<r <<" x "<<r <<" x "<<t <<" =
"<<voltabung(r,t)<<endl;
break;

case 5:
system("cls");
cout<<"Volume Kerucut\n";
cout<<"masukkan jari-jari : "; cin>>r;
cout<<"masukkan tinggi : "; cin>>t;
cout<<"Volume Kerucut = 1/3 x phi x r x r
x t = 1/3 x 3,14 x "<<r <<" x "<<r <<" x "<<t <<" =
"<<volkerucut(r,t)<<endl;
break;

case 6:
system("cls");
cout<<"Volume Limas Segitiga\n";
cout<<"masukkan alas : "; cin>>a;
cout<<"masukkan tinggi alas segitiga : ";
cin>>b;
cout<<"masukkan tinggi limas : "; cin>>t;
cout<<"Volume Limas Segitiga = 1/3 x 1/2 x
a x t alas x t limas = 1/3 x 1/2 x "<<a <<" x "<<b <<"
x "<<t <<" = "<<vollimassegitiga(a,b,t)<<endl;
break;

case 7:
system("cls");
cout<<"Volume Limas Segiempat\n";
cout<<"masukkan panjang : "; cin>>p;
cout<<"masukkan lebar : "; cin>>l;
cout<<"masukkan tinggi : "; cin>>t;
cout<<"Volume Limas Segiempat = 1/3 x s x
s x t = 1/3 x "<<s <<" x "<<s <<" x "<<t <<" =
"<<vollimassegiempat(p,l,t)<<endl;
break;

default:
cout<<"pilihan tidak tersedia";

}
break;

default:
cout<<"pilihan tidak tersedia";
}

do
{
cout<<"Apakah anda ingin menghitung lagi? : ";
cin>>pilihan;
}while(pilihan !='y'&&pilihan
!='Y'&&pilihan!='t'&&pilihan!='T');
}while(pilihan=='y'||pilihan=='Y');
}

B. Output
C. Penjelasan

Dalam program menghitung luas bangun datar dan volume bangun ruang
menggunakan perulangan (do while), keputusan (switch case), dan fungsi.
Berikut penjelasannya masing-masing:
1. Perulangan (do while)
Dalam program ini, digunakan 2 perulangan (do while). Yang pertama
terletak di awal pada fungsi main dan digunakan untuk mengulang pilihan,
yaitu mengulang kembali ke awal program. Dimana jika pilihan=y/Y,
maka program akan diulang. Tetapi jika pilihan=t/T, maka program akan
di akhiri. Yang kedua terletak didalam perulangan (do while) yang
pertama dan digunakan untuk mengulang kembali pertanyaan apabila
pilihan!=(tidak sama dengan) y/Y/t/T.

do
{
cout<<"Apakah anda ingin menghitung lagi? : ";
cin>>pilihan;
}while(pilihan !='y'&&pilihan
!='Y'&&pilihan!='t'&&pilihan!='T');

Tetapi jika pilihan=y/Y atau pilihan=t/T maka program akan menjalankan


perintah di baris selanjutnya, yaitu perulangan (do while) yang pertama.
2. Keputusan (switch case)
Dalam program ini, digunakan 3 Keputusan (switch case) yang gunanya
untuk membuat pilihan. Untuk keputusan (switch case) yang pertama
digunakan untuk memilih pilihan antara mengitung luas bangun datar atau
menghitung volume bangun ruang. Jadi didalam keputusan (switch case)
yang pertama terdapat 2 case (pilihan). Pada case pertama menampilkan
pilihan untuk menghitung luas bangun datar, yang didalamnya terdapat
switch case lagi. Switch case ini berisi 7 case, dimana masing-masing case
adalah pilihan untuk menghitung salah satu bentuk bangun datar. Pada
case kedua menampilkan pilihan untuk menghitung volume bangun ruang,
yang didalamnya terdapat switch case lagi. Switch case ini berisi 7 case,
dimana masing-masing case adalah pilihan untuk menghitung salah satu
bentuk bangun ruang.
3. Fungsi
Dalam program ini, digunakan 14 fungsi pemanggil (7 fungsi untuk
bangun datar, 7 fungsi untuk bangun ruang) dan 1 fungsi utama.
Pembuatan fungsi pemanggil dalam program berguna untuk
mempersingkat program, dimana fungsi pemanggil akan dipanggil
didalam fungsi main. Untuk program ini pemanggilan fungsi terdapat di
masing-masing case. Cara penulisan dalam memanggil fungsi yaitu nama
fungsi(variabel yang digunakan). Sebagai contoh:

case 2:
system("cls");
cout<<"Volume Prisma Tegak Segitiga\n";
cout<<"masukkan alas : "; cin>>a;
cout<<"masukkan tinggi alas segitiga : ";
cin>>b;
cout<<"masukkan tinggi prisma : "; cin>>t;
cout<<"Volume Prisma Tegak Segitiga = 1/2
x alas x tinggi alas x tinggi prisma = 1/2 x "<<a <<"
x "<<b <<" x "<<t<<" =
"<<volprismasegitiga(a,b,t)<<endl;
break;

Didalam fungsi, semua variabel yang digunakan didalamnya harus


dideklarasi beserta tipe data masing-masing variabel. Kemudian fungsi
tersebut diberi nama untuk inisialisasi pada saat pemanggilan. Sebagai
contoh:

float volprismasegitiga(float a, float b, float t)


{
float prisma;
prisma=0.5*a*b*t;
return prisma;
}

Return pada fungsi berguna untuk mengembalikan nilai fungsi.

Pada program ini menggunakan system(“cls”); yang digunakan untuk


membersihkan layar (clear screen) agar program yang ditampilkan berikutnya
adalah program setelah perintah system(“cls”); . Perintah ini menggunakan library
#include(stdlib.h).

Anda mungkin juga menyukai