Задания
Версия для печати и копирования в MS Word
Тип 16 № 61362
i

Функ­ция F(n), где n  — на­ту­раль­ное число, за­да­на сле­ду­ю­щи­ми со­от­но­ше­ни­я­ми:

F(n)  =  1000, если n ≥ 1 000;

F(n)  =  n × F(n + 1), если n < 1 000 и n нечётно;

F левая круг­лая скоб­ка n пра­вая круг­лая скоб­ка =n умно­жить на дробь: чис­ли­тель: F левая круг­лая скоб­ка n плюс 1 пра­вая круг­лая скоб­ка , зна­ме­на­тель: 2 конец дроби , если n < 1 000 и n чётно.

 

Чему равно зна­че­ние вы­ра­же­ния  дробь: чис­ли­тель: F левая круг­лая скоб­ка 998 пра­вая круг­лая скоб­ка , зна­ме­на­тель: F левая круг­лая скоб­ка 1001 пра­вая круг­лая скоб­ка конец дроби ?

Спрятать решение

Ре­ше­ние.

Най­дем зна­че­ние F(998):

F(998)  =  998 · F(999)  /  2  =  499 · 999 · F(1000)  =  499 · 999 · 1000.

То есть зна­че­ние вы­ра­же­ния равно:

 дробь: чис­ли­тель: F левая круг­лая скоб­ка 998 пра­вая круг­лая скоб­ка , зна­ме­на­тель: F левая круг­лая скоб­ка 1001 пра­вая круг­лая скоб­ка конец дроби = дробь: чис­ли­тель: 499 умно­жить на 999 умно­жить на 1000, зна­ме­на­тель: 1000 конец дроби = 499 умно­жить на 999 = 498 501.

 

При­ве­дем ре­ше­ние на языке Python.

def F(n):

if n >= 1000: return 1000

if n < 1000 and n%2: return n * F(n + 1)

else: return n * (F(n + 1)//2)

print(F(998)//F(1001))

 

Ответ: 498501.


Аналоги к заданию № 61362: 61396 Все