Rekursi GOLANG
Rekursi
Rekursi adalah suatu fungsi yang dapat memanggil dirinya sendiri. Berikut ini adalah salah satu cara untuk menghitung faktorial angka, silakan masukkan coding berikut :
KALIAN BISA MENCOBANYA KLIK DISINI
KALIAN BISA MENCOBANYA KLIK DISINI
package main
import (
"fmt"
)
func factorial(x uint) uint {
if x == 0 {
return 1
}
return x * factorial(x-1)
}
func main(){
fmt.Println(factorial(2))
}
import (
"fmt"
)
func factorial(x uint) uint {
if x == 0 {
return 1
}
return x * factorial(x-1)
}
func main(){
fmt.Println(factorial(2))
}
fungsi diatas akan dapat menghitung nilai faktorial. Kita bisa menggunakan unit (unsigned integer) karena inputan harus berupa bilangan positif. Integer dapat menampung bilangan negatif dan positif oleh karena itu uint dapat dipilih sebagai tipe data untuk parameter.
Untuk lebih memahami bagaimana fungsi ini berfungsi, bahsa manusianya akan seperti ini :
- Apakah x == 0? Tidak. (X adalah 2)
- Temukan faktorial x - 1
- Apakah x == 0? Tidak. (X adalah 1)
- Temukan faktorial x - 1
- Apakah x == 0? Ya, return 1.
- return 1 * 1
- return 2 * 1
Penutupan dan rekursi adalah teknik pemrograman yang kuat yang membentuk dasar paradigma yang dikenal sebagai pemrograman fungsional. Kebanyakan orang akan menemukan pemrograman fungsional lebih sulit dimengerti daripada pendekatan berdasarkan pada loop, if, variabel dan fungsi sederhana.
MATERI GOLANG
Jika kamu baru di pembelajaran golang, silakan untuk belajar dari materi pertama
Materi ke-1 : Program Pertama
Materi ke-2 : Cara Membaca Program
Materi ke-3 : Type Data
Materi ke-4 : Golang Number
Materi ke-5 : String pada Golang
Materi ke-6 : Boolean Pada Golang
Materi ke-7 : Variable Pada Golang
Materi ke-8 : Cara Memberi Nama Variabel
Materi ke-9 : Scope Pada Golang
Materi ke-10 : Konstanta Pada Golang
Materi ke-11 : Struktur Golang
Materi ke-12 : For Golang
Materi ke-13 : IF Golang
Materi ke-14 : Switch Case Golang
Materi ke-15 : Array Pada Golang
Materi ke-16 : Slice Pada Golang
Materi ke-17 : MAP Golang
Materi ke-18 : Functions Golang
Materi ke-19 : Mengembalikan banyak Nilai dan Variadik
Materi ke-20 : Closure golang
Materi ke-21 : Rekursif Golang
Materi ke-22 : Tunda, Panik, Dan Pulihkan
Materi ke-2 : Cara Membaca Program
Materi ke-3 : Type Data
Materi ke-4 : Golang Number
Materi ke-5 : String pada Golang
Materi ke-6 : Boolean Pada Golang
Materi ke-7 : Variable Pada Golang
Materi ke-8 : Cara Memberi Nama Variabel
Materi ke-9 : Scope Pada Golang
Materi ke-10 : Konstanta Pada Golang
Materi ke-11 : Struktur Golang
Materi ke-12 : For Golang
Materi ke-13 : IF Golang
Materi ke-14 : Switch Case Golang
Materi ke-15 : Array Pada Golang
Materi ke-16 : Slice Pada Golang
Materi ke-17 : MAP Golang
Materi ke-18 : Functions Golang
Materi ke-19 : Mengembalikan banyak Nilai dan Variadik
Materi ke-20 : Closure golang
Materi ke-21 : Rekursif Golang
Materi ke-22 : Tunda, Panik, Dan Pulihkan