Rabu, 29 September 2010

#include <cstdlib>
#include <iostream>

using namespace std;
class Bilangan{
      friend ostream& operator<<(ostream&, const Bilangan&);
      friend istream& operator>>(istream&, Bilangan&);
      public:
             Bilangan(int a0=0,float b0=0.0):a(a0),b(b0){}
             void banding_int(const Bilangan&, const Bilangan&);
             Bilangan& operator=(const Bilangan&);
             Bilangan operator+(const Bilangan&)const;
             Bilangan operator-()const;
             private:
                     int a;
                     float b;
                     };
      ostream& operator<<(ostream& out, const Bilangan& x)
      {out<<"Bagian integer: "<<x.a<<endl;
      out<<"Bagian float : "<<x.b<<endl;
      return out;
      }
      void Bilangan::banding_int(const Bilangan&x, const Bilangan& y)
      {
      if(x.a>y.a)cout<<x.a<<"::x lebih besar dari"<<y.a<<"::y";
      else cout<<x.a<<"::x lebih kecil dari"<<y.a<<"::y";
      }
     
      Bilangan& Bilangan::operator=(const Bilangan& x)
      {a=x.a;
      b=x.b;
      return*this;
      }
     
      istream& operator>>(istream& in, Bilangan& x)
      {
               cout<<"\nMasuk bagian integer:";
               in>>x.a;
               cout<<"Masuk bagian float :";
               in>>x.b;
               return in;
               }
              
      Bilangan Bilangan::operator+(const Bilangan& x)const
      {Bilangan cc;
      cc.a=a+x.a;
      cc.b=b+x.b;
      return cc;
      }
     

      Bilangan Bilangan::operator-()const
      {Bilangan x;
      x.a=-a;
      x.b=-b;
      return x;
      }
     
      int main(){
           Bilangan s,t(-2,3.14),d;
           cout<<"Nilai awal s\n"<<s;
           cout<<"Nilai awal t dari deklarasi\n"<<t;
           s=t;
           cout<<"Setelah s di-assign t\n";
           cout<<"Nilai s\n"<<s;
           cout<<"masukan nilai-nilai object d";
           cin>>d;
           cout<<"setelah d+t=> \n"<<d+t;
           cout<<"Nilai d dinegatifkan\n"<<-d;
           }int main(int argc, char *argv[]){
    system("PAUSE");
    return EXIT_SUCCESS;
}


ini untuk jawaban not ped


09018302
kusworo bayu kusumo

1.kelas yaitu baris
class Bilangan{
      friend ostream& operator<<(ostream&,const Bilangan&);
      friend istream& operator>>(istream&, Bilangan&);
public:
       Bilangan(int a0=0, float b0=0.0):a(a0),b(b0){}
       void banding_int(const Bilangan&,const Bilangan&);
       Bilangan& operator=(const Bilangan&);
       Bilangan operator+(const Bilangan&)const;
       Bilangan operator-()const;
private:
        int a;
        float b;
};


2.construktor
void Bilangan::banding_int(const Bilangan& x,const Bilangan& y)
{
     if(x.a > y.a) cout << x.a << "::x lebih dari" << y.a <<"::y";
     else cout << x.a << "::x lebih kecil dari "<< y.a << "::y";
     }
3.method
int main() {
     Bilangan s, t(-2,3.14),d;
     cout<<"Nilai awal s\n"<< s;
     cout<<"Nilai awal t dari deklarasi\n"<<t;
     s=t;
     cout<<"Setelah s di-assign t\n";
     cout<<"Nilai s\n" << s;
     cout<<"Masukkan nilai-nilai objeck d";
     cin>>d;
     cout<<"Setelah d+ t=> \n"<<d+t;
     cout<<"Nilai d dinegatifkan\n" << -d;                     
                      
              
4.data member
private:
        int a;
        float b;
};

5.overloading
ostream& operator<<(ostream& out, const Bilangan& x){
 out << "Bagian integer:" << x.a << endl;
 out << "Bagian float:" << x.b << endl;
 return out;
}
istream& operator>>(istream& in, Bilangan& x){
         cout<<"\nMasukkan bagian integer:";
         in>>x.a;
         return in;
         }
        
Bilangan Bilangan ::operator+(const Bilangan& x)const {
         Bilangan cc;
         cc.a=a + x.a;
         cc.b=b +x.b;
         return cc;
         }
        
Bilangan Bilangan::operator-()const
 {
         Bilangan x;
         x.a=-a;
         x.b=-b;
         return x;
         }