Sabtu, 19 Desember 2015

Analysis Progam Converensi Suhu dengan C++






Progam Converensi Suhu


#include <iostream>
using namespace std;
void biodata ()
{
    cout<<"Nama : Nafia Nisaul Hamidah\n";
    cout<<"Prodi: Teknik Informatika\n";
    cout<<"Nim  : 15650018\n";
}
void garis ()
{
    cout<<"=====================================\n";
}

void enter()
{
    cout<<"\n";
}


float CelciusReamur(int a)
{
    float hasil;
    hasil = (4*a/5);
    return hasil;
}
float CelciusFahrenheit(int b)
{
    float hasil;
    hasil = (1.8*b)+32;
    return hasil;
}float ReamurCelcius(int c)
{
    float hasil;
    hasil = (5*c/4);
    return hasil;
}
float ReamurFahrenheit(int d)
{
    float hasil;
    hasil = (9*d/4)+32;
    return hasil;
}float FahtrenheitCelcius(int e)
{
    float hasil;
    hasil = (e-32)*5/9;
    return hasil;
}
float FahrenheitReamur(int f)
{
    float hasil;
    hasil = (f-32)*4/9;
    return hasil;
}

int main ()
{
    double t,nilai;
    string perintah;
    char suhu,lagi,y,Y;
    do
{
    cout<<"            ===CONVERENSI SUHU===\n";
    garis();
    biodata ();
    garis();
    enter();
    cout<<"A. Celcius ke Reamur \n";
    cout<<"B. Celcius ke Fahrenheit \n";
    cout<<"C. Reamur ke Celcius \n";
    cout<<"D. Reamur ke Fahrenheit \n";
    cout<<"E. Fahrenheit ke Celcius \n";
    cout<<"F. Fahrenheit ke Reamur \n";
    enter();
    cout<<"Masukin Pilihan Anda = ";cin>>suhu;
    enter();
    if(suhu=='A'||suhu=='B'||suhu=='C'||suhu=='D'||suhu=='E'||suhu=='F')
    {
        cout<<"Masukan Nilai Suhu =    ";cin>>nilai;
    enter();
    }
    switch(suhu)
    {
        case'A':
                perintah = "Celcius ke Reamur";
                t=CelciusReamur(nilai);
        break;
        case'B':
                perintah = "Celcius ke Fahrenheit";
                t=CelciusFahrenheit(nilai);
        break;
        case'C':
                perintah = "Reamur ke Celcius";
                t=ReamurCelcius(nilai);
        break;
        case'D':
                perintah = "Reamur ke Fahrenheit";
                t=ReamurFahrenheit(nilai);
        break;
        case'E':
                perintah = "Fahrenheit ke Celcius";
                t=FahtrenheitCelcius(nilai);
        break;
        case'F':
                perintah = "Fahremheit ke Reamur";
                t=FahrenheitReamur(nilai);
        break;
        default:
            cout<<"Pilihan Anda Salah, Silahkan Coba Lagi !!\n\n";
    }
    cout<<"Konvrensi suhu "<<perintah<<" adalah = "<<t<<endl;
    enter();
    cout<<"Konvrensi Lagi ? [y/n] : "<<endl;
    cin>>lagi;
    enter();
}
    while (lagi=='y' ||lagi=='Y');
    void garis ();




Analysis



1. Header
#include <iostream>
Pada program konversi suhu ini saya menggunakan header iostream karena dalam program ini saya menggunakan fungsi yang ada di iostream seperti cout, cin, endl, dll 

2.  Fungsi
1. Void adalah fungsi yang tidak ada nilai kembaliannya.

void biodata ()
{
            cout<<"Nama : Nafia Nisaul Hamidah\n";
            cout<<"Prodi: Teknik Informatika\n";
            cout<<"Nim  : 15650018\n";
}
void garis ()
{
            cout<<"=====================================\n";
}

void enter()
{
            cout<<"\n";
}

2. Non Void adalah fungsi yang ada nilai kembaliannya. 

float CelciusReamur(int a)
{
            float hasil;
            hasil = (4*a/5);
            return hasil;
}
float CelciusFahrenheit(int b)
{
            float hasil;
            hasil = (1.8*b)+32;
            return hasil;
}float ReamurCelcius(int c)
{
            float hasil;
            hasil = (5*c/4);
            return hasil;
}
float ReamurFahrenheit(int d)
{
            float hasil;
            hasil = (9*d/4)+32;
            return hasil;
}float FahtrenheitCelcius(int e)
{
            float hasil;
            hasil = (e-32)*5/9;
            return hasil;
}
float FahrenheitReamur(int f)
{
            float hasil;
            hasil = (f-32)*4/9;
            return hasil;
}

3. Fungsi Utama / int main()

1.  double berfungsi untuk nilai bilangan pecahan yang terdiri dari 15-16 digit.
     double t,nilai;
2. char berfungsi untuk satu karakter saja.
    char suhu, lagi, y, Y ;
3. string berfungsi untuk beberapa karakter (maksimal 225 karakter)
    string perintah;

Pada program ini saya menggunakan looping do-while yaitu melakukan proses dahulu kemudian baru diidentifikasikan

1. Do
            cout<<"                      KONVERSI SUHU              "<<endl<<endl;
            garis ();
            cout<<" CELCIUS KE REAMURt\t = A "<<endl;
            cout<<" CELCIUS KE FAHRENHEIT\t = B "<<endl;
            cout<<" FAHRENHEIT KE CELCIUSt\t = C"<<endl;
            cout<<" FAHRENHEIT KE REAMUR\t = D"<<endl;
            cout<<" REAMUR KE CELCIUSt\t = E"<<endl;
            cout<<" REAMUR KE FAHRENHEIT\t = F "<<endl<<endl;
cout<<"Pilih Suhu yang Akan di Konversi = ";cin>>suhu; digunakan untuk menginput data sesuai dengan data yang sudah disebut diatas.
Exm : ‘A’ maka yang akan keluar adalah konversi suhu dari celcius ke reamur.
if(suhu=='A'||suhu=='B'||suhu=='C'||suhu=='D'||suhu=='E'||suhu=='F')
            {
                        cout<<"Masukkan Nilai Suhu : ";cin>>a;
                        cout<<endl;
            }

Program di atas digunakan untuk menentukan apakah suhu=A , suhu =B, suhu=C , suhu=D, suhu=E, suhu=F. Jika iya maka yang ada di dalam if akan di proses jika tidak maka akan berlanjut pada program selanjutnya.
  
switch(suhu){
            case 'A':
                                      pesan="celcius_ke_reamur";
                                      s=celcius_reamur(a);
            break;
            case 'B':
                                      pesan="celcius_ke_fahrenheit";
                                      s=celcius_fahrenheit(a);
            break;             
            case 'C':
                                      pesan="fahrenheis_ke_celcius";  
                                      s=fahrenheit_celcius(a);     
            break;
            case 'D':
                                      pesan="fahrenheit_ke_reamur";
                                      s=fahrenheit_reamur(a);
            break;
            case 'E':
                                      pesan="reamur_ke_celcius";
                                      s=reamur_celcius(a);
            break;
            case 'F':
                                      pesan="reamur_ke_fahrenheit";
                                      s=reamur_fahrenheit(a);
            break;                                       
            default:
 cout<<"MAAF SEPERTINYA DATA YANG ANDA MASUKKAN   SALAH!!!"<<endl<<endl;                                                                                                     
            break;                                                                                                     
            }
Dalam Program diatas saya buat tidak menggunakan  if-else akan tetapi menggunakan switch-case. Pada dasarnya if-else dan switch-case adalah sama.   



2. While  
            cout<<"Apakah Anda Ingin Mengulang Kembali(y/n)? = ";cin>>back;
            cout<<endl;
            while(back=='y'||back=='Y');