
УП8
.docxГУАП
КАФЕДРА № 41
ОТЧЕТ ЗАЩИЩЕН С ОЦЕНКОЙ
ПРЕПОДАВАТЕЛЬ
Старший преподаватель |
|
|
|
Е.П. Виноградова |
должность, уч. степень, звание |
|
подпись, дата |
|
инициалы, фамилия |
ОТЧЕТ О ПРАКТИЧЕСКОЙ РАБОТЕ №8 |
РЕКУРСИВНЫЕ ВЫЧИСЛЕНИЯ |
по курсу: УЧЕБНАЯ ПРАКТИКА |
|
РАБОТУ ВЫПОЛНИЛ
СТУДЕНТ ГР. № |
4116 |
|
|
|
|
|
|
|
подпись, дата |
|
инициалы, фамилия |
Санкт-Петербург 2022
Задача: Ввести с клавиатуры два натуральных числа m>2 и n>1. Выяснить, что больше: m-е число Фибоначчи или n!. Вывести сумму полученных чисел.
Решение:
Пусть m=7, n=4
Тогда 7-е число Фибоначчи :
1-е=1
2-е=1
3-е=1+1=2
4-е=2+1=3
5-е=3+2=5
6-е=5+3=8
7-е=5+8=13
4!=1*2*3*4=24
Выходит, что n!> m-го числа Фиббоначи
Их сумма равна 24+13=37
Для более больших чисел лучше решить задачу с помощью языков программирования:
Решение задачи на языке программирования Python:
m=int(input())
m=int(m)
n=int(input())
factorial_n=1
i=0
fib1 = 1
fib2 = 1
if m<=2:
m=int(input("введите число больше 2: \n"))
if n<=1:
n=int(input("введите число больше 1: \n "))
while i<m-2:
fib_sum = fib1 + fib2
fib1 = fib2
fib2 = fib_sum
i = i + 1
print("Значение m-го элемента:", fib2)
while n>1:
factorial_n*=n
n=n-1
print("n!",factorial_n)
if (factorial_n>fib2):
print ("n! больше чем m-е число Фибоначчи ")
else:
print("m-е число Фибоначчи больше n!")
sum=factorial_n+fib2
print(sum)
результат работы программы:
Вывод: задачи такого типа можно решать как аналитически, так и с помощью программирования. Но благодаря языкам программирования , мы можем решать задачи с большими числами, используя минимальное количество времени.