5.10.10

postest II


#include
#include

template

using namespace std;

class Kompleks {
friend class operasi;
friend ostream& operator<<(ostream&, const Kompleks&);
friend istream& operator>>(istream&, Kompleks&);
public:
Kompleks(T s=0, T t=0):a(s),b(t){}
void cetak():
Kompleks operator-();
Kompleks operator-(const kompleks&);
Kompleks operator+(const kompleks&);
private:
T a;
T b;
};
template
void Kompleks::cetak(){
if(b>0)cout<<”bilangan kompleks:”<
KompleksKompleks::operator-(){
Kompleks X;
X.a=a;
X.b=-b;
return X;
}
template
KompleksKompleks::operator-(const kompleks&m){
Kompleks X;
X.a=a-m.a;
X.b=b-m.b;
return X;
}
template
KompleksKompleks::operator-(const kompleks&m){
Kompleks X;
X.a=a+m.a;
X.b=b+m.b;
return X;
}
template
ostream& operator<<(ostream&, const Kompleks&X){
if(x.b==0)out<<’['<1)out<<’['<0)out<<’['<
istream& operator>>(istream&, Kompleks&){
cout<<”masukkan bagian real:”; in>>x.a;
cout<<”masukkan bagian imajiner:”; in>>x.b;
return in;
}
template
class Operasi{
public:
Kompleksjumlah(const Kompleks&, const Kompleks&);
Komplekskali(const Kompleks&, const Kompleks&);
Komplekskurang(const Kompleks&, const Kompleks&);
};
template
Kompleks Operasi::jumlah(const Kompleks&, const Kompleks&){
Kompleks temp;
temp.a=m.a+n.a;
temp.b=m.b+n.b;
return temp;
}
template
Kompleks Operasi::kali(const Kompleks&, const Kompleks&){
Kompleks temp;
temp.a=m.a*n.a;
temp.b=m.b*n.b;
return temp;
}
template
Kompleks Operasi::kurang(const Kompleks&, const Kompleks&){
Kompleks temp;
temp.a=m.a-n.a;
temp.b=m.b-n.b;
return temp;
}

int main(int argc, char *argv[])
{
Kompleks (2,3), y(4,-4), t;
Operasi z;
cout<<”menggunakan cetak():”;x.cetak(); cout<<”menggunakan overloading:”< n;
cin>>n;
}
system(“PAUSE”);
return EXIT_SUCCESS;
}

Tidak ada komentar:

Pengikut


Entri Populer