kali ini saya akan memposting tentang Algoritma pemrograman tentang Operator Overloading.
nanti akan ada soal,analisis,kodingan, dan flowchartnya. nanti..
Apabila ada pertanyaan, tembahan, saran, kritik, dan komentar.. langsung saja ya ditulis... heheheh..
.
1. Buatlah program yang meminta user memasukkan jam, menit, dan detik kemudian menampilkannya dengan format jam:menit:detik.
a.Buat class , waktu termasuk overloading input dan input
b.Buat implementasi operator overloading input dan output
c.Buat main function
analisis :
untuk program ini, user diminta untuk menampilkan outputan dari inputan user... seperti nanti akan muncul tulisan "jam :" kita masukkan berapa jam? bisa 1,2, 10 jam, lalu akan muncul juga tulisa "menit:" kita akan masukkan berapa menit juga terserah, kemudian muncul tulisan "detik :" sama.. kita masukkan juga berapa detik. setelah itu semua, akan muncul tulisan "....jam:..menit:...detik".
kita langsung saja ke kodingannya...,di sini menggunakan class
#include <iostream>
#include <string>
using namespace std;
class waktu{
friend ostream& operator<<(ostream&, const waktu&);
friend istream& operator<<(istream&, waktu&);
private:
int detik,menit,jam;
public :
friend ostream& operator<<(ostream& yea, waktu& yuhu){
yea<<"jam "<<"menit"<<" detik"<<endl;
yea<<yuhu.jam<<":"<<yuhu.menit<<":"<<yuhu.detik<<endl;
return yea;
}
friend istream& operator>>(istream& oh, waktu& gat){
cout<<"jam :";
oh>>gat.jam;
cout<<"menit :";
oh>>gat.menit;
cout<<"detik :";
oh>>gat.detik;
if(gat.detik>=60){
gat.detik-=60;
gat.menit+=1;
}if(gat.menit>=60){
gat.menit-=60;
gat.jam+=1;
}return oh;
}
};
int main(){
waktu x;
cin>>x;
cout<<x;
return 0;
}
ini dia kodingannya
2. Buatlah program yang meminta user memasukkan bagian penyebut dan pembilang dari sebuah bilangan rasional berbentuk p/q. Setiap memasukkan bilangan rasional outputnya berbentuk p/q. Misalnya , masukkan 1 dan 2 maka tampilan outputnya 1/2.
analisis :
ini seperti user memasukkan angka pembilang dan penyebut secara bebas tanpa perlu dihitung, jadi misalkan kita masukkan angka 2 sebagai pembilang lalu 5 sebagai penyebut, maka akan keluar 2/5. tanda / sudah ada dalam kodingan.
#include <string>
using namespace std;
class Bagi{
friend ostream& operator<<(ostream&, const Bagi&);
friend istream& operator<<(istream&, Bagi&);
private:
int p,q;
public :
friend ostream& operator<<(ostream& hasil, Bagi& lai){
cout<<"jadi nilainya"<<endl;
hasil<<lai.p<<"/"<<lai.q<<endl;
return hasil;
}
friend istream& operator>>(istream& tau, Bagi& ah){
cout<<"niali P :";
tau>>ah.p;
cout<<"nilai Q :";
tau>>ah.q;
return tau;
}
};
int main(){
Bagi y;
cin>>y;
cout<<y;
return 0;
}


Tidak ada komentar:
Posting Komentar