Skip to main content

Function

Jika sebelumnya program yang kita buat adalah contoh contoh program yang sederhana, semakin lama maka kita akan membuat program yang lebih besar dan lebih kompleks dengan fitur lebih dari satu. Pembuatan program yang kompleks dan besar dapat dipecah menjadi sub program yang lebih kecil. Hal ini membuat program yang kita buat lebih mudah dimengerti dan lebih modular. Berikut ini contoh program sederhana untuk mencari luas segitiga.





Program di atas adalah contoh yang tidak modular atau tidak memiliki fungsi. Dalam hal ini, mungkin program tersebut masih mudah dibaca dan dimengerti. Namun misalnya jika kita mau mencari luas persegi, persegi panjang, trapesium, dan sebagainya, maka jika gaya penulisan di atas tetap dipakai maka program akan terlihat lebih memusingkan dan sulit dimengerti. Berikut ini contoh program yang menggunakan fungsi untuk mencari luas segitiga.





Secara logika, program di atas ekuivalen dengan contoh program yang pertama. Namun, dalam contoh di atas, kita menggunakan fungsi yang dapat kita pakai secara berulang-ulang. Bentuk fungsi di atas yaitu fungsi yang memiliki parameter dan memiliki nilai balik. Parameter adalah sesuatu yang digunakan untuk memberikan value kepada suatu fungsi. Dalam contoh di atas, fungsi akan melakukan perhitungan luas segitiga, namun fungsi tidak tahu berapa nilai alas dan tinggi segitiga yang mau dihitung. Solusinya adalah dengan memberikan nilai alas dan tinggi segitiga menggunakan parameter fungsi.

Supaya yang memanggil fungsi kita tahu berapa hasil dari perhitungan luas segitiga, maka kita perlu melakukan ‘return’. Jika parameter berfungsi untuk memberikan nilai dari pemanggil ke fungsi, maka return berfungsi untuk memberikan hasil dari fungsi yang dilakukan (dalam hal ini menghitung luas segitiga) kembali ke pemanggil fungsi tersebut. Hasil dari fungsi yang kita panggil harus kita masukkan ke dalam variable lalu terakhir kita bisa print hasil fungsi tersebut ke console.

Di Java, kita perlu untuk menulis tipe data nilai return dari fungsi yang kita buat. Dalam contoh ini tipe data return adalah integer (int dalam Java). Kalau di Python, kita tidak perlu mendefinisikan tipe data return. Python akan secara otomatis mendefinisikan tipe data return.

Jika fungsi yang kita buat tidak memerlukan nilai balik, maka kita cukup menulis void jika menggunakan Java. Berikut ini adalah contoh fungsi yang tidak memerlukan nilai balik.





Dalam contoh di atas, fungsi tidak memiliki nilai balik. Kita tidak perlu menggunakan variable penampung nilai hasil fungsi karena fungsi tersebut memang tidak memiliki nilai return yang bisa kita pakai, tidak seperti contoh sebelumnya. Fungsi yang tidak memiliki nilai balik juga bisa kita sebut method.

Selanjutnya ada yang namanya fungsi overloading. Maksudnya adalah fungsi dengan nama yang sama namun dengan parameter yang berbeda sehingga bisa menghasilkan hasil yang berbeda-beda tergantung dari parameter yang diberikan. Contoh fungsi overloading di Java.



Bisa dilihat pada contoh di atas bahwa fungsi printBanner memiliki beberapa variasi parameter. Ada yang 1 parameter, ada yang tanpa parameter, dan sebagainya. Untuk membuat fungsi overload di Java harus memiliki jumlah parameter yang berbeda atau memiliki tipe data yang berbeda. Dalam Python, karena bahasa ini tidak mengenal adanya tipe data, maka syarat fungsi overload di Python hanya dengan jumlah parameter yang berbeda. Jika jumlah parameter sama, maka hanya salah satu fungsi saja yang dipakai. Ini contohnya.



Selanjutnya ada fungsi rekursif. Fungsi rekursif adalah fungsi yang memanggil dirinya sendiri. Bukan berarti fungsi ini tidak pernah berhenti, karena harus ada kondisi di mana fungsi tidak boleh memanggil dirinya sendiri sehingga tidak menyebabkan error. Ini adalah contoh di Java dan Python untuk menghitung faktorial.





Jika tidak ada pengecekan nilai variable num == 1, maka fungsi tersebut tidak akan pernah berhenti dan menyebabkan error pada Java dan Python (dan bahasa pemrograman lainnya).

Itu adalah penjelasan dari fungsi dan method yang ada pada Bahasa pemrograman Java dan Python. Semoga bisa dimengerti. Sekian.

Comments

Popular posts from this blog

Solid State Drive

 Solid state drive (SSD) adalah perangkat penyimpanan yang menggunakan sirkuit elektronik, yang disebut juga memory flash, untuk menyimpan data secara permanen, berbeda dengan harddisk yang menggunakan piringan disk. SSD dikenal sebagai media penyimpanan yang lebih cepat dibandingkan harddisk serta lebih tahan terhadap guncangan ketika sedang digunakan. Solid State Drive (Sumber: unixplus.com) SSD menyimpan data menggunakan sel semikonduktor yang mana setiap selnya bisa menampung data sebanyak 1 hingga 4 bit. SSD yang menyimpan 1 bit di setiap sel dianggap sebagai yang paling durable, cepat, dan mahal dibandingkan dengan yang menyimpan data sebanyak 2-4 bit di setiap sel. Ada juga SSD yang dibuat dari RAM yang menyimpan data secara permanen menggunakan baterai sehingga RAM tersebut tetap meyimpan data walaupun arus listrik utama dimatikan. Yang terakhir ada teknologi gabungan antara SSD dan HDD yang dinamai SSHD yang bekerja dengan prinsip jika suatu data diakses lebih sering maka ...

Mengatasi Deadlock

Deadlock merupakan kodisi di mana beberapa proses meminta resource yang sedang digunakan oleh proses lain sedangkan proses yang sedang menggunakan resource yang diminta tersebut juga sedang menunggu proses lain yang sedang menggunakan resource yang juga diperlukan oleh proses itu. Setiap resource yang diminta hanya bisa diakses oleh satu proses dalam satu waktu. Misalnya program A ingin menggunakan resource 1 yang sedang digunakan oleh program B namun program B juga ingin menggunakan resource 2 yang sedang dipegang oleh program A. Program A dan B sama-sama menunggu untuk menggunakan resource yang diperlukan sehingga terjadi deadlock karena tidak ada yang bisa melakukan tugasnya. Berikut ini merupakan beberapa solusi yang digunakan untuk mengatasi deadlock yang terjadi pada suatu sistem. Ostrich Algorithm Disebut ostrich (burung unta) karena sebenarnya algoritma ini hanya mengabaikan kondisi deadlock yang terjadi. Burung unta jika ada badai maka akan memasukkan kepalanya ke dalam pasir/...

Sejarah Software Komputer

Software adalah perangkat yang dibuat untuk mengendalikan hardware komputer. Secara bahasa software dapat diartikan sebagai perangkat lunak. Software merupakan bagian yang wajib ada dalam suatu sistem komputer. Tanpa software, komputer bagaikan tubuh tanpa nyawa. Berikut ini adalah era-era software komputer dan penjelasannya. 1. Era Pioneer Pada era ini bentuk software komputer pada awalnya adalah sambungan-sambungan kabel ke antar bagian dalam komputer, Cara dalam mengakses komputer adalah menggunakan punched card yaitu kartu yang di lubangi sehingga dapat merepresentasikan angka 0 dan 1. Di era ini software komputer masih sangat mengikat dengan hardware komputer. 2. Era Stabil Pada Era ini software komputer yang dijalankan bukan lagi satu software untuk satu komputer seperti di era sebelumnya, tapi sudah banyak proses yang di lakukan secara bersamaan (multi tasking). Di era ini jugalah mulai di kenal sistem basis data, yang memisahkan antara program dan data yang d...