RSS

praktikum ke-1 sdata rabu 09.00

29 Sep

class bilangan

#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”<<y.a<<“::y”;
}

Bilangan& Bilangan ::operator =(const Bilangan& x)
{
a=x.a;
b=x.b;
return *this;
}
istream& operator>>(istream& in ,Bilangan& x)
{
cout<<“\nMasukan bagian integer :”;
in>>x.a;
cout<<“masukan 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 objek d”;
cin>>d;
cout<<“setelah d +t =>\n”<<d+t;
cout<<“nilai d dinegatifkan\n”<<-d;
system (“PAUSE”);
return EXIT_SUCCESS;
}

struktur program diatas :

A. KELAS
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;
};

B. KONSTRUKTOR
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”<<y.a<<“::y”;
}

Bilangan& Bilangan ::operator =(const Bilangan& x)
{
a=x.a;
b=x.b;
return *this;

C. METHOD
int a;
float b;
};

D. DATA MEMBER
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 ;

E. OPERATOR OVERLOADING
friend ostream& operator<<(ostream&, const Bilangan&) ;
friend istream& operator>>(istream&, Bilangan&);

 
13 Komentar

Ditulis oleh pada September 29, 2010 in praktikum

 

Tag:

13 responses to “praktikum ke-1 sdata rabu 09.00

  1. aium23

    September 29, 2010 at 3:11 am

    give me comment….heheheehhe….

     
    • mika

      September 29, 2010 at 9:44 am

      itu methodnya uda bener blm ,,,
      cuz ku msh bingung .

       
  2. desta arianti

    September 29, 2010 at 7:06 am

    ehmmm…..itu program sebenarnya buat ap yah????
    q masih bingung….
    makasih…:-)

     
  3. mycha

    September 29, 2010 at 9:50 am

    rum , itu methodnya uda bener blm ???
    ku masih bingung ,,,,,,,,,,,,,,

     
  4. faiznoer

    September 29, 2010 at 12:36 pm

    Program sudah OK TApi..
    * Kelas :
    Uda bner kyanya ale pnyaku gt..hehe
    * Konstruktor :
    public:
    Bilangan(int a0=0, float b0=0.0):a(a0),b(b0){}
    * Method :
    void banding_int(const bilangan&, const bilangan&);
    bilangan& operator=(const bilangan&);
    bilangan operator+(const bilangan&)const;
    bilangan operator-()const;
    * Data Member :
    private:
    int a;
    float b;
    * Overloading :
    friend ostream& operator<>(istream&, bilangan&);

    *^* Kalau menurut buku catatanku di semester 1 kaya gitu rum yg bener..
    tapi lo masih salah besok kita tanya pakarnya ja…haha

     
    • syamtsalis

      September 30, 2010 at 3:07 am

      #include adalah pemanggilan library iostream, yang mempunyai fungsi untuk operasi o / o (input ,output)
      untuk operator overloading ada 2 model, yang friend n fungsi dari kelas itu sendiri.
      untuk friend ada yang istream dan ostream….
      trus operator+,-,= merupakan overloading fungsi class
      maap kalo ada salah dalam menulis…….
      good job….

       
      • aium23

        Oktober 2, 2010 at 5:09 am

        owh gtu mz…yup…yup…
        lumayan ilmunya nambah…
        makasih mz…

         
  5. easlamycha

    September 29, 2010 at 2:03 pm

    rum itu bagian methodnya uda bener blm ???
    ku masih bingung ……………………

     
  6. poedjex

    September 30, 2010 at 12:25 pm

    sedikit menambahkan .. dapat dilihat disitu
    kalo operator itu bisa di overloadingkan

    disitu uda ada misal bilangan operator + bla bla bla…

    dan bisa di panggil di main fungsi
    misal

    int main(){
    bilangan a,b;
    cout<<a+b;
    }

    gitulah kira2 gunannya .. CMIIW
    ehem saatnya aku tanya . boleh to ?
    apa yang di maksud dengan konstruktor dengan parameter ?

     
    • aium23

      Oktober 2, 2010 at 5:36 am

      tag coba jawab ya…

      konstruktor dengan parameter adalah konstruktor yabg disertai keyword this() yang melampirkan satu argumennya , Kemudian dari konstruktor satu parameter tersebut akan memanggil konstruktor satu parameter tipe integer kelas dasarnya.

      kayaknya gitu mz….tapi maaf neg salah cuz aq juga lum tahu bener…:-))

       
  7. afriq ramadhan

    September 30, 2010 at 2:24 pm

    aium23, saya mw tny sesuatu ne..
    saya masih bingung dengan function ini :

    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”<<y.a<<”::y”;
    }

    Pertanyaan saya :
    1. Apakah itu benar untuk membangdingkan antara nilai x.a dengan nilai y.a ?
    Jika iya, mengapa setelah saya coba jalankan programnya, sepertinya tidak ada output yang menyatakan statement tersebut,?

    2. Lalu, jika fungsii tersebut tidak muncul / tidak dapat dipanggil, mengapa disertakan dalam listing programnya ?
    Bukankah itu sama halnya dengan melakukan pekerjaan yang sia-sia ?
    Mengapa itu ditulis, jika akhirnya tidak dapat muncul ?

    3. Jika ternyata itu bisa muncul ketika program dijalankan, bagaimanakah cara memunculkannya ?
    Apa sajakah yang harus dirubah dalam program tersebut agar output dari program diatas bisa menampilkan pernyataan x.a lebih besar dari y.a , ataupun sebaliknya, yaitu x.a lebih kecil dari y.a..

    mohon penjelasannya..

     
    • aium23

      Oktober 2, 2010 at 5:18 am

      ehm…gini yah vriq…q juga sebenarnya belum tahu bener tenetang itu…soalnya aq juga masih belajar…..tak jawab sebisanya aq ya…

      1.itu bener buat membandingkan…itu gag da outputnya kan karena funsinya gag di panggil di int mainnya …gtu cii satahu q…:-)

      2. ehm …itu kan terserah sama yang buat progaram…heee…

      3. aq belum dapat jawabannya…tag pending dulu yah…:-)

      maaf cuma bisa jelasin kayak gitu tok….:-))

       
  8. tedesant

    Oktober 5, 2010 at 2:58 pm

    seep…
    keep posting bro…
    silahkan main2 ke blog ane..

     

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

 
%d blogger menyukai ini: