Input Output dengan Overload

Assalamualaikum wr.wb
Hello Brokz
 
Disini saya akan memposting tentang cara input dan output menggunakan operator overload, overload tidak jauh berbeda dengan operator cin(input) dan cout(output), yang membuat berdeda adalah kita perlu menggunakan class jika ingin menggunakan operator overload, oke langsung kita ke analisis dan algoritmanya.

Analisis :
jam = 1
menit = 30
detik = 50
jam:menit:detik=1:30:50

Algoritma jam

Deklarasi :
jam : integer
menit : integer
detik : integer

Deskripsi :
read(jam,menit,detik)
write(jam,menit,detik)

Seperti biasa kita akan membuat urutan penyelesaiannya secara logis terlebih dahulu dengan menggunaan flowchart agar lebih mudah saat membuat program menggunakan bahasa C++ nanti, oke langsung saja kita lihat flowchartnya yang ada disini.

 

Berdasarkan flowchart di atas kita bisa lihat, pertama kita inputkan dulu jam, menit, kemudian detik lalu kita outputkan dalam bentuk jam:menit:detik, tapi karena kita menggunakan operator overload maka "cin" kita ganti dengan "ifstream untuk input dan "cout" kita ganti dengan "ofstream" untuk output, oke langsung ke programnya saya

#include<iostream>

using namespace std;

class waktu{
    friend istream& operator >> (istream&, waktu&);
    friend ostream& operator << (ostream&, waktu&);
    private :
        int jam, menit;
        float detik;
};

istream& operator >> (istream& input, waktu& data){
    cout<<"Masukkan Jam : ";
    input>>data.jam;
    cout<<"Masukkan Menit : ";
    input>>data.menit;
    cout<<"Masukkan Detik : ";
    input>>data.detik;
    return input;
}

ostream& operator << (ostream& output, waktu& data){
    output<<data.jam<<":"<<data.menit<<":"<<data.detik;
    return output;
}

int main(){
    waktu x;
    cin>>x;
    cout<<x;
   
    return 0;

Komentar

Postingan Populer