АСОСҲОИ АЛГОРИТМ ВА БАРНОМАСОЗӢ БО ЗАБОНИ PYTHON

Барои 14 боқимондаҳо бо ин тартиб ҳосил мешаванд: 14 % 2 = 0, 7 %
2 = 1, 3 % 2 = 1 ва 1 % 2 = 1. Барои гирифтани навишти дуруст онҳоро бо тартиби баръакс мехонем: 1110.
Дар ҳалли рекурсивӣ аввал қисми n // 2 ва баъд рақами охирин чоп мешавад.
def print_bin(n):
if n < 2:
print(n, end='') else:
print_bin(n // 2) print(n % 2, end='')
n = int(input('Адади бутуни ғайриманфиро ворид кунед: ')) if n >= 0:
print_bin(n) print() else:
print('Адад набояд манфӣ бошад.') Барои 14 натиҷа 1110 ва барои 0 натиҷа 0 мешавад. Барои мисолҳои омӯзишӣ ададҳои хурдро истифода баред.
Бисёр масъалаҳоро ҳам бо давр ва ҳам бо рекурсия ҳал кардан мумкин аст. Интихоб ба сохтори масъала, фаҳмоии рамз ва захираҳои лозима вобаста аст. Рекурсия ҳамеша роҳи зудтар ё камхарҷтар нест.
Масъалаи 3. Биёед функсияи рекурсивиро барои баланд бардоштани адади a ба дараҷаи b (a**b) нависем.
Дар ин мисол b адади бутуни ғайриманфӣ аст. Барои b = 0 натиҷа 1 қабул мешавад; дар Python ифодаи 0 ** 0 низ 1 медиҳад.
Роҳи ҳалли мушкилот:
def func_step(a, b):
if b == 0:
return 1 return a * func_step(a, b - 1)
print(func_step(2, 4))
Натиҷа: 16.

Барномасозӣ
Олами Афсонаҳо
Ахбор
Саломатӣ
Дунё