#include <iostream>
#include <math.h>
#include <limits>
#include <cstdlib>
#include <cstring>
using namespace std;
const float phi=3.14;
void hitung_luast(float p,float l);
void hitung_volumet(float p,float l);
void volumebalok (float panjang ,float lebar,float tinggi);
void luasbalok (float panjang,float lebar, float tinggi);
void kelilingbalok (float panjang,float lebar, float tinggi);
void volumebola (float r);
void luasbola (float r);
void hitung_luasl(float p,float l,float t,float u);
void hitung_volumel(float p,float l,float t,float u);
void hitung_luasp(float p,float l,float u);
void hitung_volumep(float p,float l,float u);
//validasi
int kata;
char val [100];
int validasi()
{
do
{
kata=0;
cout<<"\t\t";cin>>val;
for(int i=0; i<strlen(val); i++)
{
if(isdigit(val[i])==0)
kata++;
}
if(kata !=0)
cout<<"\t\tInput salah !\n"<<endl;
}
while(kata!=0);
return 0;
}
int main(){
int pilihan;
float panjang,lebar,alas,tinggi,jari,tinggi1,tinggi2,tinggi3,sisi,sisi2;
cout<<"\tProgram Untuk Menghitung Volume danLluas Permukaan Bangun Ruang"<<endl;
cout<<"\t==============================================================="<<endl;
cout<<"\t\tTekan 1 untuk Balok \n\t\tTekan 2 untuk Bola \n\t\tTekan 3 untuk Limas Segitiga sama sisi \n\t\tTekan 4 untuk Prisma Segitiga \n\t\tTekan 5 untuk Tabung \n\t\tTekan 6 untuk Berhenti"<<endl;
balik:
cout<<"\n\t\tMasukkan Pilihan : ";
validasi(); pilihan=atoi(val);
switch(pilihan){
case 1 : {
cout<<"\n\t\tLuas Permukaan dan Volume Balok";
cout<<"\n\t\tMasukkan Nilai Panjang\t : ";
validasi(); panjang=atoi(val);
cout<<"\t\tMasukkan Nilai Lebar\t : ";
validasi(); lebar=atoi(val);
cout<<"\t\tMasukkan Nilai Tinggi\t : ";
validasi(); tinggi=atoi(val);
if (panjang<=0||lebar<=0||tinggi<=0)
cout<<"\t\tNilai harus berupa bilangan bulat positif";
else
volumebalok (panjang ,lebar,tinggi);
luasbalok (panjang,lebar,tinggi);
break;
}
case 2 :{
cout<<"\n\t\tLuas Permukaan dan Volume Bola";
cout<<"\n\t\tMasukkan Jari-jari\t : ";
validasi(); jari=atoi(val);
if (jari<=0)
cout<<"\t\tNilai harus berupa bilangan bulat positif";
else
volumebola (jari);
luasbola (jari);
break;
}
case 3 :{
cout<<"\n\t\tLuas Permukaan dan Volume Limas Segitiga Sama Sisi";
cout<<"\n\t\tMasukkan Segitiga Alas : ";
validasi(); alas=atoi(val);
cout<<"\t\tMasukkan Tinggi alas\t : ";
validasi(); tinggi=atoi(val);
cout<<"\t\tMasukkan Tinggi Permukaan: ";
validasi(); tinggi2=atoi(val);
cout<<"\t\tMasukkan Tinggi Limas\t : ";
validasi(); tinggi3=atoi(val);
if (alas<=0||tinggi<=0||tinggi2<=0||tinggi3<=0)
cout<<"\t\tNilai harus berupa bilangan bulat positif";
else
hitung_luasl(alas,tinggi,tinggi2,tinggi3);
hitung_volumel(alas,tinggi,tinggi2,tinggi3);
break;
}
case 4 :{
cout<<"\n\t\tLuas Permukaan dan Volume Prisma Segitiga";
cout<<"\n\t\tMasukkan Segitiga Alas\t : ";
validasi(); alas=atoi(val);
cout<<"\t\tMasukkan Tinggi Alas\t : ";
validasi(); tinggi=atoi(val);
cout<<"\t\tMasukkan Tinggi Prisma\t : ";
validasi(); tinggi2=atoi(val);
if (alas<=0||tinggi<=0||tinggi2<=0)
cout<<"\t\tNilai harus berupa bilangan bulat positif";
else
hitung_luasp(alas,tinggi,tinggi2);
hitung_volumep(alas,tinggi,tinggi2);
break;
}
case 5 :{
cout<<"\n\t\tLuas Permukaan dan Volume Tabung";
cout<<"\n\t\tMasukkan Jari-jari\t : ";
validasi(); jari=atoi(val);
cout<<"\t\tMasukkan Nilai Tinggi\t : ";
validasi(); tinggi=atoi(val);
if (jari<=0||tinggi<=0)
cout<<"\t\tNilai harus berupa bilangan bulat positif";
else
hitung_luast(jari,tinggi);
hitung_volumet(jari,tinggi);
break;
}
case 6:{
cout<<"\t\tBye ";
return 0;
}
default :
cout<<"\t\tPilihan salah !";
}
cout<<"\n\t---------------------------------------------------------------"<<endl;
system("pause");
goto balik;
}
void hitung_luast(float p,float l)
{
float luaspermukaan;
luaspermukaan=(2*phi*p*l)+ (2*phi*pow(p,2));
cout<<"\t\tLuasnya : "<< luaspermukaan<<endl;
}
void hitung_volumet(float p,float l)
{
float volume;
volume=phi*pow(p,2)*l;
cout<<"\t\tVolumenya : "<<volume<<endl;
}
void volumebalok (float panjang ,float lebar,float tinggi){
float volume;
volume=panjang * lebar * tinggi;
cout<<"\t\tVolumenya : "<<volume<<endl;
}
void luasbalok (float panjang,float lebar, float tinggi){
float luaspermukaan;
luaspermukaan=2*((panjang*lebar)+(panjang*tinggi)+(lebar*tinggi));
cout<<"\t\tLuasnya : "<< luaspermukaan<<endl;
}
void volumebola (float r){
float volume;
volume = 4*(phi*pow(r,3))/3;
cout<<"\t\tVolumenya : "<<volume<<endl;
}
void luasbola (float r){
float luaspermukaan;
luaspermukaan= 4*phi*pow(r,2);
cout<<"\t\tLuasnya : "<< luaspermukaan<<endl;
}
void hitung_luasl(float p,float l,float t,float u)
{
float luas;
luas=((p*t)/2)+(3*((p*t)/2));
cout<<"\t\tLuasnya : "<<luas<<endl;
}
void hitung_volumel(float p,float l,float t,float u)
{
float volume;
volume=(((p*t)/2)*u)/3;
cout<<"\t\tVolumenya : "<<volume<<endl;
}
void hitung_luasp(float p,float l,float u)
{
float luasalas, kelilingalas, luaspermukaan;
luasalas=0.5*p*l;
kelilingalas=sqrt(pow(p,2)+pow(l,2)) + l + p;
luaspermukaan=(kelilingalas*u)+ (2*luasalas);
cout<<"\t\tLuasnya : "<< luaspermukaan<<endl;
}
void hitung_volumep(float p,float l,float u)
{
float volume,luasalas;
luasalas=0.5*p*l;
volume=luasalas*u;
cout<<"\t\tVolumenya : "<<volume<<endl;
}
Subscribe to:
Post Comments
(
Atom
)


0 comments:
Post a Comment