Rabu, 08 Januari 2020

Program Rekursif pada Python



Pengertian Rekursif
Rekursif  merupakan sebuah perulangan di dalam sebuah program. perulangan yang satu ini sangat berbeda dengan perulangan pada umumnya, seperti while dan for. Walaupun fungsinya sama yaitu perulangan atau looping. Letak perbedaannya adalah dari cara kerjanya. jika for dan while merupakan sebuah perulangan yang menggunakan sebuah kondisi atau boolean, maka pada rekursif ini terjadi pada sebuah fungsi atau metode yang memanggil dirinya sendiri.

untuk lebih jelasnya kita langsung saja ke contoh programnya:

contoh 1
Fungsi-fungsi yang terdapat di dalam class di sebut juga dengan method, pada pemrograman python terdapat sebuah method dengan nama __init__(), Fungsi Method Init Pada Pemrograman Python yaitu merupakan method yang pertama kali di jalankan atau di proses sebelum method-method yang lainnya dan method __init__() berguna untuk melakukan inisialisasi pembuatan object dari class.
untuk tambah (return a+b) akan dihasilkan penjumlahan dari a=5 dan b=7, begitupun dengan kurang. kemudian untuk print ("a=",a) akan meng-output nilai dari a yaitu 5, hal yang sama pada print("b=",b) yang akan meng-output nilai 7. untuk print (tambah()) akan meng-output hasil penjumlahannya dan pengurangan pada print(kurang()). dibawahnya, cetak(5) akan meng-output nilai 5. pada cetak(3+tambah()) akan meng-output hasil penjumlahan dari 3 + tambah (a+b=12), kemudian yang terakhir cetak(kurang()) akan meng-output hasil dari pengurang a-b.
Output:
contoh 2
untuk contoh yang kedua kita akan mencari nilai dari reamur, fahrenhit, kelvin, dan mencetak hasilnya. Fungsi dalam Python didefinisikan menggunakan kata kunci def. Setelah def ada nama pengenal fungsi diikut dengan parameter yang diapit oleh tanda kurung dan diakhir dingan tanda titik dua :. Baris berikutnya berupa blok fungsi yang akan dijalankan jika fungsi dipanggil.pada contoh dibawah, bagian def disini lita akan memanggil rumus yang akan kita gunakan untuk mencari nilai yang akan kita cari.
pada bagian c=float(input("celcius="), kita akan memasukkan nilai celcius pada bagian output, dan selanjutnya akan di cetak nilai celcius, reamur, fahrenhit, seserta nilai kelvin dengan menggunakan rumus yang telah ada di bagian def
Output:


contoh 3
sama seperti contoh sebelumnya, disini kita akan mencari nilai dari reamur, fahrenhit, dan kelvin dan mencetak hasilnya dengan memasukkan nilai celcius terlebih dahulu pada bagian Output.
bedanya disini kita tidak menggunakan return, disini kita langsung menggunakan print namun rumus untuk mencari nilai yang kita cari masih sama.
Output:


contoh 4
selanjutnya kita akan mencari keliling dan luas persegi panjang, denagn menggunakan def  kita akan memanggil ,rumus yang kita sertakan pada bagian ini.


kemudian dengan modal nilai panjang dan lebar yang kita masukkan pada bagian output, program ini akan langsung mengoprasikan rumusnya dan akan mencetaknya.
Output:


contoh 5

pada bagian ini mungkin lebih rumit karena disini kita menggunakan fungsi if dan else dan nilai yang kita cari juga banyak.
untuk penjelasan dari program dibawah yaitu:
1. untuk def deret (n) merupakan definisi dari deret (n) dimana jika n>0 maka dia akan me-return deret(n-1)+n. namun apabila nilai n>0 adalah salah maka ia akan lari ke else dan me-return 0.
2. def deret1(a,b,n). disini jika nilai n>0 maka dia akan me-return deret1(a,b,n-1)+a+(n-1)*b. tapi, jika nilai n tidak lebih besar dari 0 maka dia akan langsung diproses oleh else dan me-return 0.
3. def fak(n), jika nilai n>0 maka dia akn me-return n*fak(n-1) dan jika bukan maka akan langsung ke else dan me-return 1
4. def pangkat(a,n), jika nilai n>0 maka akan me-return a*pangkat(a,n-1) dan jika bukan akan langsung me-return 1 pada statement else.
5. def fibo (n), jika nilai n>0 maka akan me-return fibo(n-1)*fibo(n-2). namun jika salah dia akan langsung di proses oleh statement else dan me-return 1.
6. def GCD(a,b), jika b sama dengan 0 maka dia akan me-return a, namun jika bukan dia akan me-return GCD(ba%b).


ini adalah code untuk mencetak deret, deret1, fak, pangkat, fibo dan GCD dengan ketentuan nilai yang telah di sertakan.
Output:


contoh 6
coding ini sama seperti coding sebelumnya hanya saja dia memiliki rumus pada return dan ketentuan nilai pada bagian print yang berbeda. cara dan proses pengoprasiannya masih sama.


Output:





SEKIAN...... SEMOGA BERMANFAAT


SUMBER



Tidak ada komentar:

Posting Komentar