Objek Sebagai Nilai Balik Dan Objek Sebagai Parameter

5
1 Objek Sebagai Nilai Balik dan Objek Sebagai Parameter 1. Tujuan Praktikum 1.1 Mempelajari objek sebagai Nilai Balik 1.2 Mempelajari objek sebagai Parameter 2. Landasan Teori Objek dapat dijadikan sebagai nilai balik fungsi .Tampak bahwa berkat pernyataan : tiga=satu.tambah(dua); Anggota data tiga berisi penjumlahan dari anggota data satu dan dua. Perlu dijelaskan disini bahwa pada definisi fungsi anggota tambah,mula-mula terdapat pernyataan: Yang mendefinisikan objek lokal bernama tmp.Selanjutnya terdapat pernyataan : Tmp.re=re+B.re; Pada pernyataan ini : Re menyatakan anggota data dari obyek sekarang Tmp.re menyatakan anggota data dari objek tmp B.re menyatakan anggota data dari objek B Hal yang serupa juga berlaku untuk anggota data im. Kemudian : Return (tmp); Akan memberikan nilai balik berupa salinan dari objek tmp. Suatu objek juga dapat menjadi parameter fungsi. Dalam hal ini,ada tiga kemungkinan untuk melewatkan objek sebagai parameter yaitu: Melewatkan objek berdasarkan nilai Melewatkan objek sebagai parameter Melewatkan objek sebagai referensi Contoh fungsi yang melewatkan objek berasarkan nilai :

description

Laporan C++dosen Ibu Adriani Parastiwi

Transcript of Objek Sebagai Nilai Balik Dan Objek Sebagai Parameter

Page 1: Objek Sebagai Nilai Balik Dan Objek Sebagai Parameter

1

Objek Sebagai Nilai Balik dan Objek Sebagai Parameter

1. Tujuan Praktikum1.1 Mempelajari objek sebagai Nilai Balik1.2 Mempelajari objek sebagai Parameter

2. Landasan Teori

Objek dapat dijadikan sebagai nilai balik fungsi .Tampak bahwa berkat pernyataan : tiga=satu.tambah(dua);

Anggota data tiga berisi penjumlahan dari anggota data satu dan dua.Perlu dijelaskan disini bahwa pada definisi fungsi anggota tambah,mula-mula terdapat pernyataan:Yang mendefinisikan objek lokal bernama tmp.Selanjutnya terdapat pernyataan : Tmp.re=re+B.re;Pada pernyataan ini :

Re menyatakan anggota data dari obyek sekarang Tmp.re menyatakan anggota data dari objek tmp B.re menyatakan anggota data dari objek B

Hal yang serupa juga berlaku untuk anggota data im. Kemudian : Return (tmp);Akan memberikan nilai balik berupa salinan dari objek tmp.

Suatu objek juga dapat menjadi parameter fungsi. Dalam hal ini,ada tiga kemungkinan untuk melewatkan objek sebagai parameter yaitu:

Melewatkan objek berdasarkan nilai Melewatkan objek sebagai parameter Melewatkan objek sebagai referensi

Contoh fungsi yang melewatkan objek berasarkan nilai :

void info_buku(Buku b)

{

cout<<”INFORMASI BUKU” ‘\n’ <<endl; b.info();

}

Contoh pemanggilan fungsi diatas:

Buku novel;Info_buku(novel);

Page 2: Objek Sebagai Nilai Balik Dan Objek Sebagai Parameter

2

Cara seperti ini dirasakan tidak efisien sekiranya objek berukuran besar,sebab akan menyita ruang stock yang terlalu besar saat diproses. Dmpak yang lain,sudah tentu kecepatan pemrosesan juga menjadi lebih lambat. Untuk mengatasi hal ini,objek lebih sering dilewatkan secara pointer atau referensi.

Page 3: Objek Sebagai Nilai Balik Dan Objek Sebagai Parameter

3

3. Listing Program

#include<iostream.h>#include<conio.h>#include<dos.h>

class Bil_Kompleks{ private: float re; float im; public: void isi(); void cetak(); Bil_Kompleks(float real,float imajiner);//konstruktor berargumen Bil_Kompleks();//konstruktor Bil_Kompleks tambah(Bil_Kompleks B);//objek sebagai parameter Bil_Kompleks kurang(Bil_Kompleks C); Bil_Kompleks bagi(float D);};

void main(){ clrscr(); Bil_Kompleks satu(15,3); Bil_Kompleks dua(5,1); Bil_Kompleks tiga;

//untuk menambahkan dua objek tiga=satu.tambah(dua); cout<<"PROGRAM TAMBAH"<<endl; cout<<"Isi satu =";satu.cetak(); cout<<"Isi dua =";dua.cetak(); cout<<"Isi tiga =";tiga.cetak();

//untuk mengurangi dua objek tiga=satu.kurang(dua); cout<<"PROGRAM KURANG"<<endl; cout<<"Isi satu =";satu.cetak(); cout<<"Isi dua =";dua.cetak(); cout<<"Isi tiga =";tiga.cetak();

//untuk membagi objek tiga=satu.bagi(3); cout<<"PROGRAM BAGI"<<endl; cout<<"Isi satu =";satu.cetak(); cout<<"Isi dua =";dua.cetak(); cout<<"Isi tiga =";tiga.cetak(); getch();}

void Bil_Kompleks::isi()

{ cout<<"Nilai re =";cin>>re; cout<<"Nilai im =";cin>>im;}

void Bil_Kompleks::cetak(){ if(im>0) cout<<re<<"+j"<<im<<endl; else if(im<0) cout<<re<<"-j"<<im*(-1)<<endl; else if(im==0) cout<<re<<"+j"<<im<<endl; getch();}

Bil_Kompleks::Bil_Kompleks(float real,float imajiner){ cout<<"Konstruktor Argumen Bekerja"<<endl; re=real; im=imajiner;}

Bil_Kompleks::Bil_Kompleks(){ cout<<"Konstruktor Bekerja"<<endl; re=25; im=5;}

Bil_Kompleks Bil_Kompleks::tambah(Bil_Kompleks B){ Bil_Kompleks Tmp; Tmp.re=re+B.re; Tmp.im=im+B.im; return(Tmp);}

Bil_Kompleks Bil_Kompleks::kurang(Bil_Kompleks C){ Bil_Kompleks Tmp; Tmp.re=re-C.re; Tmp.im=im-C.im; return(Tmp);}

Bil_Kompleks Bil_Kompleks::bagi(float D){ Bil_Kompleks Tmp; Tmp.re=re/D; Tmp.im=im/D; return(Tmp);}

4. Output Program

Page 4: Objek Sebagai Nilai Balik Dan Objek Sebagai Parameter

4

5. Pembahasan

Pada program diatas re dan im merupakan anggota data dari objek sekarang,tmp.re dan tmp.im merupakan anggota data dari objek tmp.Penggunaan return (tmp) memberikan nilai balik pada fungsi berupa salinan dari objek tmp.Program ini juga terdapat objek yang berfungsi sebagai parameter,karena melewatkan objek berdasarkan nilai

6. Kesimpulan

Berdasarkan program di atas dapat disimpulkan bahwa objek dapat berfungsi sebagai nilai balik.dan parameter