July 22, 2023
RECURTION FUNCTION
IKKI HIL FIKIRLASH USULI
Birinchi misol sifatida x sonini ni n ning natural darajasiga ko'taradigan pow(x, n) funksiyasini yozamiz. Boshqacha qilib aytganda, u x sonini o`zini o`ziga n marta ko'paytiradi.
Uni amalga oshirishning ikkita usulini ko'rib chiqaylik.
1 Iterativ usul: for loop:
function pow(x, n) {
let result = 1; // умножаем result на x n раз в цикле
for (let i = 0; i < n; i++) {
result *= x;
}
return result;
}
alert( pow(2, 3) ); // 82 Rekursiv usul: vazifani soddalashtirish va funktsiyani o'zi chaqirish:
E'tibor bering, rekursiv versiya tubdan farq qiladi.
pow(x, n) chaqirilsa, bajarilish ikki tarmoqqa bo'linadi:
1 Agar n soni == 1 ga teng bo'lsa, unda hamma narsa oddiy.
Bu branch rekursiyaning asosi deb ataladi, chunki u darhol aniq natijaga olib keladi: pow(x, 1) x ga teng.
2 Biz pow(x, n) ni quyidagicha ifodalashimiz mumkin: x * pow(x, n - 1).Matematikada quyidagicha yoziladi: xn = x * xn-1. Bu bo'lim rekursiya bosqichidir: masalani oddiyroq harakatga (x ga ko'paytirish) va oddiyroq o'xshash masalaga (kichikroq n bilan pow) qisqartiramiz. Keyingi qadamlar n 1 ga yetguncha vazifani osonlashtiradi va osonlashtiradi.
Pow funktsiyasi o'zini n == 1 gacha rekursiv chaqirishi aytiladi.
Masalan, pow(2, 4) ni hisoblashning rekursiv versiyasi quyidagi bosqichlardan iborat:
yani 2 sonini 4 chi darajasini topish kerak damak biz 2 o`zini o`ziga 4marta kupaytirish kerak
yuqorida kurishiz mumkun qavs ichidagi 4 soni har sikl aylanganda bittaga kamayib boryapti