Cute Finding Nemo

Jumat, 08 April 2016

Diktat Alpro Bab 2 - No.1

#Diktat Alpro Bab 2 - No.1

Workshop Pemrograman : Operator Overloading
1. Buatlah program yang meminta user memasukkan jam, menit dan detik

kemudian
menampilkannya dengan format jam:menit:detik. Deklarasikan jam dan

menit berupa
integer, sedangkan menit berupa floating point. Buat masukan dan

keluaran
menggunakan operator overloading << dan >> sesuai yang dikehendaki.
a. Buat class waktu, termasuk operator overloading input dan output
class waktu {
friend ostream& operator<<(ostream&, const waktu&);
friend istream& operator>>(istream&, waktu &);
public:
// berisi methods atau fungsi
private:
};
b. Buat implementasi operator overloading input dan output
c. Buat main function
Untuk soal selanjutnya ulangi langkah-langkah sebagaimana soal nomor

Programnya:
#include <iostream>
#include <cstdlib>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */

using namespace std;

class Konversi{
      friend istream& operator>>(istream&, Konversi&);
      friend ostream& operator<<(ostream&, Konversi&);
public:
       Konversi(){};
       int j();
       int m();
       int d();
private:
        int jam;
        int menit;
        int detik;
        int sekon;
};
        int Konversi :: j(){
        jam=sekon/3600;
        return jam;
        }

        int Konversi :: m(){
        menit=(sekon-(3600*(sekon/3600)))/60;
        return menit;
        }

        int Konversi :: d(){
        detik=((sekon-(3600*(sekon/3600)))-(((sekon-(3600*(sekon/3600)))/60)*(60)));
        return detik;
        }

istream& operator>>(istream& in,Konversi& masukan){
         cout<<"\t\tPROGRAM KONVERSI DENGAN FORMAT : JAM.MENIT.DETIK"<<endl;
         cout<<endl;
         cout<<"Masukkan Waktu Dalam Detik : ";
         in>>masukan.sekon;
         cout<<endl;
         return in;
        }
ostream& operator<<(ostream& out,Konversi& keluaran){
        out<<keluaran.j()<<" Jam - ";
        out<<keluaran.m()<<" Menit - ";
        out<<keluaran.d()<<" Detik";
        return out;
        }

int main(int argc, char** argv) {
    Konversi X;
    cin>>X;
    cout<<X;
    cout<<endl;
    cout<<endl;

    system("PAUSE");
    system("cls");

    return 0;
}



0 komentar:

Posting Komentar