PENGENALAN FUNGSI C++ A. Tujuan Praktikum Mampu Memahami deklarasi fungsi, tipe kembalian dan cara pemanggilan fungsi B. Dasar Teori Fungsi adalah sekelompok pernyataan yang diberi nama, dan yang bisa dipanggil dari beberapa bagian program. Sintaks yang paling umum untuk mendefinisikan sebuah fungsi adalah: type name ( parameter1, parameter2,...) { statements Dimana: - type adalah tipe dari nilai yang dikembalikan oleh fungsi. - name adalah identifier dimana fungsi tersebut dapat dipanggil. - parameter (sebanyak yang diperlukan): Setiap parameter terdiri dari tipe yang diikuti oleh pengenal, dengan setiap parameter dipisahkan dari yang berikutnya dengan tanda koma. Setiap parameter terlihat sangat mirip dengan deklarasi variabel biasa (misalnya: int x), dan sebenarnya bertindak dalam fungsi sebagai variabel biasa yang bersifat lokal terhadap fungsinya. Tujuan parameter adalah membiarkan argumen yang lewat ke fungsi dari lokasi dari mana ia dipanggil. - statement adalah isi dari fungsi, dikelilingi oleh kurung kurawal { yang menentukan fungsi sebenarnya. Sebuah fungsi dapat dianalogikan sebagai sebuah kotak ajaib, berisi perintah-perintah tertentu. Pada kotak ajaib tersebut terdapat pintu masuk untuk melewatkan parameter/argument dan pintu keluar untuk mengembalikan nilai tertentu. Berdasarkan uraian ini, fungsi dapat divisualkan seperti gambar 1. Gambar 1. Ilustrasi fungsi sebagai kotak ajaib 1
C. Alat 1. Command Prompt 2. Text Editor (Sublime/notepad++) D. Langkah Percobaan Percobaan 1. Menampilkan header dan footer 1. Buatlah file dengan nama displayheaderandfooter.cpp dengan code seperti berikut 1 #include <iostream> 2 using namespace std; 3 4 string header(string message){ 5 return "=======================\n " 6 +message+"\n"+ 7 "======================="; 8 9 10 string footer(string message){ 11 string content = "++++++++++++++++++++\n" 12 +message+"\n"+ 13 "++++++++++++++++++++"; 14 return content; 15 16 17 int main(){ 18 string name; 19 cout << header("registration") <<endl; 20 cout << "Halo, what's your name?"<<endl; 21 cin >> name; 22 cout << "Welcome,"<<name<<endl; 23 cout << footer("thank you")<<endl; 24 return 0; 25 2. Lakukan compile menggunakan perintah g++ displayheaderandfooter.cpp -o percobaan1.exe 3. Jalankan hasil compile percobaan1.exe 2
Percobaan 2. Konversi mata uang 1. Buatlah file dengan nama currency.cpp dengan code seperti berikut 1. #include <iostream> 2. using namespace std; 3. 4. //abstraction of function 5. float convert(float nominal); 6. 7. int main(){ 8. float nominaldollar; 9. cout<< "masukkan nilai dollar : "; 10. cin >> nominaldollar; 11. cout<< "nilai konversi dalam rupiah : "<< convert(nominaldollar) << 12. endl; 13. return 0; 14. 15. 16. float convert(float nominal){ 17. return nominal*15000; 18. 2. Lakukan compile menggunakan perintah g++ currency.cpp -o percobaan2.exe 3. Jalankan hasil compile percobaan2.exe 3
Percobaan 3. Konversi suhu 1. Buatlah file dengan nama temperature.cpp dengan code seperti berikut #include <iostream> using namespace std; string optionconvertion(); float calculate(int mode, float temp); int main(){ int modeselected; float temp; cout << optionconvertion() << endl; cout << "pilih mode konversi : "; cin >> modeselected; cout << "masukkan nilai suhu : "; cin >> temp; cout << "hasil konversi : "<< calculate(modeselected,temp) << endl; return 0; string optionconvertion(){ string opt ="1. celcius to fahrenheit \n2. fahrenheit to celcius"; return opt; float calculate(int modeselected,float temp){ if(modeselected==1){ return 2*3; else if(modeselected==2){ return 4*7; else{ return -1; 2. Lakukan compile menggunakan perintah g++ temperature.cpp -o percobaan3.exe 3. Jalankan hasil compile percobaan3.exe 4
Tantangan 1. Ubahlah percobaan ke-3 supaya perhitungan konversi suhu bernilai benar. Tantangan2. Buatlah program sederhana dengan memanfaatkan fungsi-fungsi dasar untuk membantu penjualan Kopi pada sebuah Kafe. Hasil keluaran program ini kurang lebih sebagai berikut Sistem Penjualan O Coffe Pilihan Kopi : 1. Capuccino 15k 2. Americano 25k 3. Coffe Late 20k Kopi pilihan : 2 Jumlah : 2 Total : 50000 Cashier : Dini Silvia 5
Referensi C++. Retrived from http://www.cplusplus.com/doc/tutorial/functions/ Understand C++ Funtion. Retrived from https://cdn.programiz.com 6