Fungsi di dalam algoritma dan bahasa pemrograman bekerjsama yakni bab yang tidak bisa dipisahkan, bahkan hampir semua bahasa pemrograman tingkat tinggi melibatkan fungsi di dalam kaidah struktur kode bahasa yang digunakan nya.
Fungsi keberadaannya mempunyai tugas yang sangat signifikan alasannya adalah yakni bisa mempersingkat penulisan agenda dan sanggup menaikkan kualitas struktur rencana sehingga lebih modular serta gampang dipahami.
Saya yakin jika anda pertama kali memeriksa prosedur pemecahan , & anda dikenalkan dengan materi prosedur pemecahan ihwal fungsi, maka anda akan dibuat galau, pasalnya memang fungsi buat orang umum sulit sekali dipahami, akan tetapi bekerjsama apabila telah bisa dipahami fungsi itu tidaklah sesulit apa yg dibayangkan.
Di artikel kali ini saya akan mengungkapkan secara jelas mengenai algoritma pemrograman fungsi. Apa yang akan saja jelaskan meliputi, definisi fungsi, deklarasi fungsi, parameter, nilai kembali, rekursif funsi dan model fungsi.
Definisi Atau pengertian Fungsi
Fungsi adalah sebuah blok kode agenda yang melaksanakan operasi khusus yang sudah didefinisikan dan mengembalikan hasil yang telah diproses, dengan adanya fungsi agenda lebih kelihatan rapi, gampang dipahami dan lebih terstruktur, alasannya yakni dengan adanya blog fungsi maka saat di dalam agenda secara keseluruhan ternyata ada proses yang serupa lebih dari satu dengan blok fungsi yang sudah dibuat, tidak perlu menciptakan ulang, cukup menggunakan blok fungsi tersebut dengan cara memanggil nama fungsi tersebut tanpa harus menulis kode kembali.Deklarasi Fungsi dalam algoritma
Deklarasi fungsi pada algoritma yakni aturan penulisan kode algoritma untuk blok fungsi, deklarasi fungsi dalam algoritma biasanya sangat tergantung sekali dengan pendekatan bahasa pemrograman yang akan mengkonversinya, untuk pendekatan ke dalam bahasa pemrograman pascal deklarasi fungsi biasanya dimulai dengan kata Function sebagai berikut:Function NamaFungsi (input : deklarasi parameter, bila ada) à Tipe data
{Spesifikasi fungsi, berisi klarifikasi wacana apa yang dilakukan dan dikembalikan oleh fungsi .}
DEKLARASI{semua nama yang digunakan di dalam fungsi dan hanya berlaku lokal di dalam mekanisme didefinisikan di sini}
ALGORITMA{badan fungsi, berisi urutan arahan yang menghasilkan nilai yang akan dikembalikan oleh fungsi}
Return ekspresi {pengembalikan nilai yang dihasilkan fungsi}
NamaFungsi bisa diadaptasi pada umumnya diberi nama sesuai dengan kegunaan dari blok fungsi itu sendiri, sedangkan yang ada di dalam kurung itu yakni parameter, fungsi harus mengembalikan sebuah nilai dari pengolahan data Atau proses fungsi, perintahnya biasanya diletakan di simpulan baris fungsi, kode perintahnya yakni Return.....
Aturan penulisan nama fungsi
Nama fungsi mempunyai anggaran penulisan khusus, menjadi berikut:
- Tidak boleh di awalai oleh angka
- Tidak boleh mengandung spasi
- Tidak boleh menggunakan keyword dari bahasa pemrograman yang digunakan
Parameter Fungsi dalam algoritma
Parameter fungsi yakni variable yang dilewatkan ke dalam fungsi, saat fungsi dibentuk parameter sifatnya opsional, boleh ada Atau pun boleh tidak digunakan, pertimbangannya adalah, bila variable-variable yang dilibatkan di dalam fngsi sifatnya dinamic Atau bisa diubah-ubah Atau berbeda-beda maka parameter wajib dilibatkan, namun bila sebaliknya tidak perlu melibatkan variable di dalam fungsi tersebut.Dalam algoritma fungsi penulisan parameter biasanya di dalam kurung sesudah nama fungsi, dengan perintah input: deklarasi varameter, menyerupai terlihat pada cuilan kode fungsi di bawah ini:
FunctionNamaFungsi (input : deklarasi parameter, bila ada) : Tipe data.........Endfunction
Kode yang berwarna merah di atas itu diklaim parameter, parameter yg dimasukan yakni nama variable & tipe datanya, bisa lebih berdasarkan satu Atau dikosongkan saja.
Nilai kembali fungsi dalam prosedur pemecahan
Nilai balik fungsi yakni return value Atau nilai yang diperoleh dari proses yang dijalankan oleh fungsi itu sendiri, tipe data nilai balik fungsi sesuai dengan yang didefinisikan oleh fungsi itu sendiri, bila tipe datanya integer maka nilai baliknya juga harus integer, bila tipe datanya string maka nilai balik yang dikembalikan juga harus berformat string.
Karena fungsi memiliki nilai kembali, maka saat nama blog fungsi tadi di panggil di dalam struktur rencana mampu kita anggap itu yakni sebuah nilai bukan rangkaian struktur perintah program. Sama halnya ketika kita ingin memproses nomor Atau kata, alasannya yakni sebuah nilai maka saat dipanggil fungsi tersebut harus dilibatkan buat sebuah proses perhitungan Atau dicetak.
Fungsi harus dipanggil buat dijalankan oleh acara
Ketika struktur kode rencana dibaca sang komputer, & pada dalam struktur rencana tadi masih ada blok-blok fungsi, maka blok fungsi tadi hanya akan dibaca saja & tidak akan diproses, blok fungsi gres akan diproses saat terdapat kode agenda yg memanggil fungsi tadi.
Untuk memproses blok fungsi maka fungsi tersebut harus pada panggil di pada struktur rencana menggunakan cara menulis nama & juga parameternya.
Misalkan saja pada pada struktur rencana kita telah membentuk funsi sebagai berikut:
Function jumlahkan(var a,b,c,d,e... integer) : integer
.....
.....
Reurn ......
Fungsi diatas namanya yakni jumlahkan yang mengembalikan sebuah nilai dalam bentuk integer, blok fungsi pada atas waktu dibaca oleh agenda maka hanya sekedar akan dibaca saja tidak akan dieksekusi Atau diproses, nah izin fungsi tadi diproses maka nama fungsi tadi perlu dipanggil pada pada struktur acara.
Misalkan saja output menurut fungsi tersebut ingin kita cetak ke layar maka kita harus memanggil fungsi tadi buat dicetak
writeln('Totalnya merupakan:', Jumlahkan(10,lima));
Kode yang berwarna merah di atas yakni model berdasarkan pemanggilan nama fungsi.
Atau
.......
Jumlah ß jumlah + jumlahkan(5,5)........ Kode agenda di atas juga sebagai salah satu contoh pemanggilan fungsi, alasannya yakni fungsi mengembalikan sebuah nilai dan nilai yang dikembalikan dari contoh fungsi diatas yakni integer maka kita bisa memanggil fungsi tersebut di dalam proses perhitungan menyerupai di atas.
Fungsi Rekursif
Fungsi rekursif yakni Fungsi yang memanggil dirinya sendiri Atau pemanggilan fungsi yang bersangkutan di dalam struktur fungsi itu sendiri, misalkan anda mempunyai fungsi jumlahkan, nah di struktur fungsi jumlahkan yang anda buat anda memanggil fungsi jumlahkan.contoh struktur fungsi rekursif
function jumlahkan(var a,b : integer) : integer
....
Jumlahkan(10,lima)
....
Endfunction
Bisa dilihat di struktur algoritma di atas bahwa fungsi jumlahkan di panggil di dalam struktur fungsi jumlahkan. itu yang disebut sebagai rekursif Atau fungsi yang memanggil dirinya sendiri.
Contoh Kasus Struktur prosedur pemecahan yg melibatkan fungsi
Untuk lebih memahami fungsi maka saya sajikan contoh kasus struktur algoritma untuk menghitung luas persegi panjang dengan fungsi dan tanpa fungsi:
A. Algoritma Menghitung persegi panjang tanpa Fungsi
algoritma hitung_persegi_panjang;
DEKLARASI
panjang : integer
lebar : integer
luas : integer
ALGORITMA:
lebar ß 5
panjang ß 10
luas ß panjang * lebar
write(luas)
B. Algoritma menghitung persegi panjang menggunakan fungsi
algoritma hitung_persegi_panjang
DEKLARASI
var panjang. Lebar : integer
ALGORITMA:
write ('masukan panjang : '); readln(panjang);
write ('masukan lebar : ');readln(lebar);
writeln(hitung_luas(panjang,lebar));
writeln(hitung_luas(10,5));
writeln(hitung_luas(97,50));
function hitung_luas(var P,L:integer) : integer
var luas : integer
luas ß P * L
return luas;
Endfunction.
Algoritma di atas hanya contoh sederhana saja, sanggup kita bandingkan kedua struktur algoritma pada atas, algortma yang memakai fungsi jauh lebih efektif alasannya yakni ketika kita ingin memproses perhitungan persegi panjang yang nilai panjang & lebarnya diinput oleh pengguna maka kita tinggal panggil saja perintah hitung_luas(panjang, lebar) dimana variable panjang dan lebar telah diisi sang pengguna melalui perintah readln.
Dan ketika kita ingin menghitung pulang perhitungan luas persegi panjang menggunakan panjang & lebar dengan nilai lainnya, maka kita nir perlu membentuk struktur porgram perhitungan yang gres cukup lakukan saja pemanggilan fungsi
hitung_luas(10,5) ini apabila ingin menghitung persegi panjang menggunakan panjang 10 dan lebar lima
hitung_luas(97,50) ini jika angka yg ingin dihitung panjangnya 97 dan lebarnya 50.
Bayangkan apabila nir menggunakan fungsi, maka waktu kita ingin menghitung pesegi panjang dengan nilai tidak sinkron maka kita wajib menulis ulang struktur serupa sebagai akibatnya rencana akan semakin panjang.
Sekali lagi contoh pada atas hanya model perkara sederhana saja sehingga panjangnya agenda nir sanggup dijadikan acuan, tetapi jika perkara yg dipecahkan sangat kompleks penggunaan fungsi benar-benar sangat berguna dan sangat efektif, model di atas hanyalah sebagai materi izin anda sanggup memahami wacana fungsi.
Lho kenapa kode perintah prosedur pemecahan di atas berbeda dengann yang aku pelajari?
Bisa saja saat anda membaca algoritma di atas strukturnnya berbeda dengan apa yang sedang anda pelajari, perlu anda ketahui bahwa perintah algoritma sangat tergantung sekali dengan pendekatan bahasa pemrograman yang ingin anda kembangkan, algoritma di atas menggunakan bahasa pemrograman pascal, bila yang sedang anda pelajari yakni bahasa C++ Atau java, maka kode perintah algoritmanya akan sedikit berbeda.
Yang harus anda perhatikan yakni kebijaksanaan cara berfikirnya, jika anda sanggup menguasai kebijaksanaan cara berfikir yang di uraikan pada struktur prosedur pemecahan maka akan dengan mudah anda mengkonversi ke prosedur pemecahan sesuai dengan pendekatan bahasa pemrograman yang anda pelajari.
No comments:
Post a Comment