Oʻzbekiston respublikasi axborot texnologiyalari va kommunikatsiyalarini rivojlantirish vazirligi muhammad al-xozazmiy nomidagi toshkent axborot texnologiyalari


N = 4 uchun takrorlanish munosabatini hisoblash


Download 99.79 Kb.
bet4/4
Sana08.11.2023
Hajmi99.79 Kb.
#1757766
1   2   3   4
Bog'liq
1-mustqil ish

N = 4 uchun takrorlanish munosabatini hisoblash:

hanoy (4) = 2 * hanoy (3) + 1 = 2 * (2 * hanoy (2) + 1) + 1 = 2 * (2 * (2 * hanoy (1) + 1) + 1) + 1 = 2 * (2 * (2 * 1 + 1) + 1) + 1 = 2 * (2 * (3) + 1) + 1 = 2 * (7) + 1 = 15

Ilovalarning namunalari:



Psevdokod (rekursiv):

funktsiya Ханой:
kiritish: tamsayı n, shu kabi n >= 1
1. agar n 1 ga teng keyin qaytib keling 1
2. qaytish [2 * [qo'ng'iroq qiling hanoy (n-1)] + 1]
oxiri xanoy

Barcha rekursiv funktsiyalar aniq echimga ega bo'lmasada, Xanoy minorasi ketma-ketligini aniq formulaga keltirish mumkin.[9]

Xanoy minoralari uchun aniq formula:

h1 = 1 = 21 - 1 soat2 = 3 = 22 - 1 soat3 = 7 = 23 - 1 soat4 = 15 = 24 - 1 soat5 = 31 = 25 - 1 soat6 = 63 = 26 - 1 soat7 = 127 = 27 - 1
Umuman olganda: hn = 2n - 1, barchasi uchun n> = 1

Misol : n! faktorialni rekursiyali funksiya orqali hisoblochi dastur tuzilsin. n!=1*2*…*(n- 1)*n;
#include
using namespace std;
int fack1(int);
int main()
{
int n;
cout << "n="; cin >> n;
cout << fack1(n) << endl;
return 0;
system ("pause");
}
int fack1(int k)
{
if (k < 0) return 0;
if (k == 0) return 1;
else return fack1(k)*fack1(k-1);
}
Misol : Fibonachchi ketma ketligining n – hadini rekursiya qism dastur orqali hisoblovchi dastur
#include
using namespace std;
int fib(int);
int main()
{
int n;
cout << "n="; cin >> n;
cout << fib(n) << endl;
return 0;
}
int fib(int k)
{
if (k == 0 || k == 1) return 1;
else return fib(k - 1) + fib(k - 2);
}
Xulosa
Ushbu mustaqil ish yordamida rekursiya tushunchasi haqida ma’lumotlarga ega bo’ldim va ulardan qanday hollarda foydalanishni bilib oldim. Rekursiv funksiyalar yordamida misollar bilan ham tanishib otdim.
Foydalanilgan adabiyotlar.

  1. Goole.com hamda ziyonet.uz ijtimoiy tarmoqlari

  2. Virt, Niklaus (1976). Algoritmlar Ma'lumotlar tuzilmalari DasturlarPrentice-Hall. p.126ISBN 978-0-13022418-7.

  3. Mitrovich, Ivan"Rekursiyani takrorlash bilan almashtiring"ThoughtWorks.



TEST

  1. Rekursiya deb nimaga aytiladi

  1. Funktsiya o'z – o'zini chaqirishi

  2. Kiritish

  3. Jalb etish

  1. Rekursiya turlari to’g’ri keltirilgan qatorni toping

  1. Oddiy va murakkab

  2. to'g'ri rekursiya va bilvosita rekursiya

  3. a va b

  1. Bilvosita rekursiya deb nimaga aytiladi

  1. funktsiya boshqa bir funktsiyani chaqirsa va u funktsiya o'z navbatida birinchisini chaqirishi

  2. funktsiya o'zini o'zi chaqirsa

  3. o’zini o’zi kiritsa

  1. Rekursiv funktsiya – bu …

  1. Chiqaruvchu funksiya

  2. Kirituvchi funksiya

  3. o’ziga o’zi murojjat qiluvchi funktsiyaga aytiladi.

  1. Manfiy argument uchun funktsiya qanday qiymat qaytaradi.

  1. -1

  2. 1

  3. 0 qiymat qaytaradi




  1. PRINTD(123) chaqiriqda birinchi funktsiya PRINTD N = 123 qiymatga ega. U 12 qiymatni ikkinchi PRINTD ga uzatadi, boshqarish o’ziga qaytganda qaysi sonni chiqaradi.

  1. 1

  2. 2

  3. 3 ni chiqaradi




  1. … - shunday qatorga aytiladiki bu qatorning n chi hadi n ning qiymatiga va qatorning oldingi elementlariga bog’lik buladi.

  1. funksiya

  2. Rekurrent qator deb

  3. Massiv

  1. To'g'ri rekursiya deb …

  1. Agarda funktsiya o'zini o'zi chaqirsa

  2. O’zini chiqarish

  3. O’zini kiritsa

Download 99.79 Kb.

Do'stlaringiz bilan baham:
1   2   3   4




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling