Uploaded by Alvian Hafidz Ramadhan Hidayat

20200714132425 TK1-W3-S4-R0

advertisement
Tugas Kelompok ke-1
(Minggu3 / Sesi4)
Essay
1. Jelaskan perbedaan antara Object cout dengan Object cin, serta berikan contohnya
Jawaban
Cout itu untuk menampilkan data, sedangkan cin itu untuk menginput data. Contoh nya
seperti :
cout << “Masukkan Panjang balok : “;
cin >> panjang;
2. Jelaskan tujuan dari Data member dan Member function?
Jawaban
Data member umumnya diberikan visibility private atau protected untuk mencegah akses
langsung dari luar class. Itu adalah aturan (rule) dalam konsep OOP Encapsulation tujuannya
untuk data/information hiding.
Member function adalah deklarasi/definisi fungsi dalam class. Kita dapat memasukan
deklarasi fungsi saja dalam bentuk function prototype dan definisi fungsinya
diimplementasikan diluar class. Ini sangat dianjurkan supaya pembuatan class menjadi lebih
terlihat rapi dan mudah di maintain. Penulisan definisi member function diluar class
menggunakan scope resolution (::).
3. Apa yang dimaksud dengan Function overloading dan Function overriding, serta berikan
contohnya
Function Overloading berfungsi untuk membuat fleksibilitas saat penggunaan function.
sebelumnya diberitahukan bahwa ketika kita memberikan argument, kita harus mengikuti
aturan yang telah ditetapkan oleh function parameter ( kita harus memberikan argument
dengan menyesuaikan tipe data dan urutan dari function parameter ).
function yang memiliki fitur overloading, memberikan kemudahan dengan kemungkinkan
untuk memberikan argument secara fleksibel sesuai keadaan dan kebutuhkan.
Contoh nya seperti
#include <iostream>
#include <string>
using namespace std;
void cetak(double x);
void cetak(string x);
int main(){
cetak(9.2);
cetak("Test Cpp");
cetak(1);
COMP6618–Object Oriented Programming
cetak("C/C++");
return 0;
}
void cetak(double x){
cout<<"double x = "<<x<<endl;
}
void cetak(string x){
cout<<"string x = "<<x<<endl;
}
Function overriding adalah sebuah fitur dalam “inheritance pada C++” dimana kita
dimungkinkan untuk membuat function yang sama persis di dalam derived class seperti
function yang ada pada base class. Hal ini seperti membuat versi function baru di dalam
derived class, untuk menggantikan peran function yang ada pada base class.
Contoh programnya sepertinya
#include <iostream>
using namespace std;
class baseClass {
public:
virtual void perkenalan(){ //Overridden Function
cout<<"Hallo saya Function dari base class";
}
};
class derivedClass: public baseClass{
public:
void perkenalan() { //Overriding Function
cout<<"Hallo saya Function dari derived Class";
}
};
int main() {
derivedClass a;
a.perkenalan();
return 0;
}
Kasus
Sebuah “Toko XYZ” menjual berbagai macam buah-buahan. Buatlah simulasi pemesanan
yang dilakukan oleh “Toko XYZ” dengan ketentuan sebagai berikut :

Tampilkan daftar pemesanan beserta harga dari tiap barang dengan ketentuan sebagai berikut:
COMP6618–Object Oriented Programming
o
o
o
o
o
Apel per 1 Kg Rp. 25.000
Melon per 1 Kg = Rp. 15.000,Semangka per 1 Kg = Rp. 10.000,Mangga per 1 Kg = Rp. 10.000,Jeruk per 1 Kg = Rp. 8.000,-

Input masing – masing jumlah barang yang ingin dipesan oleh pelanggan berdasarkan list buah
yang akan dibeli

Tampilkan rincian pemesanan customer sesuai dengan data yang sudah diinput beserta Total
harga tiap barang dan Total pembelian.
o Total harga tiap barang = jumlah barang * harga masing – masing barang.
o Total bayar = hasil penjumlahan dari semua Total harga tiap barang

Tampilkan status discount. Jika total belanja lebih dari Rp 100.000 maka akan diberikan discont
sebesar 10%, jika tidak maka 0%.
Tampilan Input
Selamat datang di Toko XYZ
Daftar Pemesanan, isi dengan [0] jika tidak ingin melakukan pemesanan.
Apel
Rp. 25.000
:
Melon
Rp. 15.000,:
Semangka Rp. 10.000,:
Mangga
Rp. 10.000,:
Jeruk
Rp. 8.000,:
Tampilan Output
Selamat datang di Toko XYZ
Daftar Pemesanan, isi dengan [0] jika tidak ingin melakukan pemesanan.
Apel
Rp. 25.000
:
3
Kg
Melon
Rp. 15.000,:
2
Kg
Semangka Rp. 10.000,:
1
Kg
Mangga
Rp. 10.000,:
2
Kg
Jeruk
Rp. 8.000,:
0
Kg
Rincian Pembelian
Apel
: 3
Melon
: 2
Semangka : 1
Mangga
: 2
Jeruk
: 0
=
=
=
=
=
Rp 75.000
Rp 30.000
Rp 10.000
Rp 20.000
Rp 0
COMP6618–Object Oriented Programming
Total harga
Discount 10%
Total bayar
:
:
:
Rp 135.000
yes
Rp 121.500
-=Selamat Mengerjakan=-
Refrensi
https://www.belajarcpp.com/tutorial/cpp/function-overriding
https://www.belajarcpp.com/tutorial/cpp/function-overloading/
https://oopcpp.wordpress.com/2017/03/01/data-member-dan-member-function/
https://bluescoding.blogspot.com/2019/07/perbedaan-stdcout-dan-cout.html
COMP6618–Object Oriented Programming
Download