
напечатать последовательность из натуральных чисел, образованную дробями в которой числитель
следующего члена почледовательности получается сложением числителей , а знаминатель - сложением знаменателей двух предыдущих членов. Чтслитель первых двух членов равны 1, знаменатели равны 1и 2 (1/1,1/2, 2/3, 3/5,...)

Ответы на вопрос

# Python 3.X
def fib_gen(x, y):
f1, f2 = x, y
yield 1
while True:
f3 = f1 + f2
yield f3
f1, f2 = f2, f3
nom, denom = fib_gen(1, 1), fib_gen(1, 2)
c = int(input('Сколько чисел напечатать? c = '))
for _ in range(0, c):
print('{}/{}'.format(next(nom), next(denom)))



Последовательность, описанная вами, является знаменитой последовательностью Фарея. Она обозначает отношения между рациональными числами в интервале [0, 1], где каждая дробь представляет собой отношение двух последовательных натуральных чисел. В данном случае, начиная с 1/1 и 1/2, каждый следующий числитель получается как сумма числителей предыдущих двух дробей, а каждый следующий знаменатель получается как сумма знаменателей предыдущих двух дробей.
Вот первые несколько членов этой последовательности:
1/1, 1/2, 2/3, 3/5, 5/8, 8/13, 13/21, 21/34, ...
Для генерации большего количества членов в этой последовательности, вы можете использовать следующий код на Python:
pythondef farey_sequence(n):
sequence = [(1, 1), (1, 2)]
while len(sequence) < n:
next_numerator = sequence[-1][0] + sequence[-2][0]
next_denominator = sequence[-1][1] + sequence[-2][1]
sequence.append((next_numerator, next_denominator))
return sequence
n = 10 # Количество членов последовательности
sequence = farey_sequence(n)
for frac in sequence:
print(f"{frac[0]}/{frac[1]}")
Просто установите значение переменной n
на количество членов последовательности, которое вы хотите сгенерировать, и запустите код.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili