latest Post

Sorting and search program with validation in C ++



#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;
    }






About Unknown

Unknown
Recommended Posts × +

0 comments:

Post a Comment