Junior — Middle
Proqramlaşdırmada rekursiv funksiyaların istifadəsinin nə demək olduğunu və necə işlədiyini izah edin.
sobes.tech Süni İntellekt
AI-dan cavab
Rekursiv funksiya — bu o'zini chaqiradigan funksiya bo'lib, muammoni hal qilish uchun o'zini o'zi chaqiradi. Dasturlashda rekursiya murakkab vazifani o'ziga xos turdagi oddiyroq kichik vazifalarga bo'lish uchun ishlatiladi.
Ishlash prinsipi:
- Funktsiya o'zini o'zgartirilgan argument bilan chaqiradi, yechimni asosiy holga yaqinlashtiradi.
- Asosiy hol — rekursiya tugash sharti bo'lib, cheksiz chaqiruvlarning oldini oladi.
Go tilida misol — sonning faktorialini hisoblash:
package main
import "fmt"
func factorial(n int) int {
if n == 0 {
return 1 // asosiy hol
}
return n * factorial(n-1) // rekursiv chaqiruv
}
func main() {
fmt.Println(factorial(5)) // 120
}
Rekursiya daraxtlar, grafiklar, vazifalarni bo'lish bilan ishlash uchun qulay, ammo yadro to'lib ketmasligi uchun ehtiyot bo'lish kerak.