На этом форуме отвечают на конкретные вопросы. Фраза «я не понимаю, как решать» — это не вопрос. На вопрос «как решить задачу №X» вас отошлют к материалам сайта kpolyakov.spb.ru. За бессвязный поток слов и неспособность формулировать свои мысли — бан.

Если у вас не сходится ответ на какую-то задачу, пожалуйста сразу представляйте свое «правильное» решение.
Программы "заворачивайте" в тэг [pre2]...[/pre2], при этом сохраняются все отступы и применяется моноширинный шрифт. Если у вас используется сочетание "[i]" для обозначения элемента массива или строки, ставьте пробел после открывающей скобки. Иначе система выделит все дальнейшее курсивом.

Для регистрации на форуме щелкните по ссылке «Вход-регистрация» вверху страницы. В открывшееся окошко «ник» введите свою фамилию на русском языке (например, Иванов). В окошко «пароль» введите придуманный вами пароль, состоящий из латинских букв и цифр. Поставьте галочку в окошке «зарегистрироваться, я новый участник» и нажмите кнопку «ОК».

АвторСообщение



Не зарегистрирован
ссылка на сообщение  Отправлено: 10.01.23 20:52. Заголовок: 16-134


Алгоритм вычисления функции F(n), где n – натуральное число, задан следующими соотношениями:
F(n) = 1, если n = 1
F(n) = n · F(n – 1) + 1, если n > 1.
Чему равно значение выражения F(3303) / F(3300)? В ответе укажите только целую часть числа.

##
uses school;
function f(n: integer):integer:=n=1?1:n>1?n*f(n-1)+1:0;
print (f(3303)/f(3300));
ответ 1.45492734879547
целая часть 1
что не так? в ответах 36002376306

Спасибо: 0 
Цитата Ответить
Ответов - 4 [только новые]







Сообщение: 87
ссылка на сообщение  Отправлено: 11.01.23 06:43. Заголовок: F3303 = 3303 * F3302..


F3303 = 3303 * F3302 + 1 = 3303*(3302 * F3301 + 1) + 1 = 3303* (3302 * (3301 * F3300 + 1) + 1) + 1 = 3303* 3302 * 3301 * F3300 + 3303 * 3302 + 3303 + 1 = ...

Не сократится это по-хорошему.


Поскольку тут считается факториал, то первое слагаемое - произведение чисел - будет много больше остальных. Задача не на ручное решение, видимо. Динамикой на питоне прекрасно решается.

f = [0] * 5000 
for n in range(3304):
if n == 1:
f[n] = 1
else:
f[n] = n * f[n - 1] + 1
print(f[3303] / f[3300])



А в своем решении Вы ошиблись в выборе типа данных
## 
uses school;
function f(n: integer):BigInteger:=n=1?1:n>1?n*f(n-1)+1:0;
print (f(3303)/f(3300));


Номер задания 5540.

Спасибо: 0 
ПрофильЦитата Ответить





Сообщение: 437
ссылка на сообщение  Отправлено: 02.05.23 08:58. Заголовок: MrAndrewson пишет: ..


MrAndrewson пишет:

 цитата:
F3303 = 3303 * F3302 + 1 = 3303*(3302 * F3301 + 1) + 1 = 3303* (3302 * (3301 * F3300 + 1) + 1) + 1 = 3303* 3302 * 3301 * F3300 + 3303 * 3302 + 3303 + 1 = ...

Не сократится это по-хорошему..



Зачем не сократиться, а если так:

f(3303) = 3303*f(3202)+1
f(3302) = 3302*f(3301)+1
f(3301) = 3301*f(3300)+1
f(3300) = 3300*f(3299)+1
F(3303) / F(3300) = (3303*3302*3301*3300*f(3299)+1)/(3300*f(3299)+1) = 36 002 376 306

Спасибо: 0 
ПрофильЦитата Ответить





Сообщение: 438
ссылка на сообщение  Отправлено: 02.05.23 09:00. Заголовок: MrAndrewson пишет: ..


MrAndrewson пишет:

 цитата:
Задача не на ручное решение, видимо. Динамикой на питоне прекрасно решается.



Можно и так:
 
import sys
sys.setrecursionlimit( 10000 )

def f( n ):
if n == 1: return 1
else : return n*f(n-1) +1
print( f(3303) // f(3300) )

# или даже так:

x = 1
for n in range(3303, 3300, -1):
x *= n
print( x )


Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
ссылка на сообщение  Отправлено: 11.01.23 11:49. Заголовок: спасибо большое..


спасибо большое

Спасибо: 0 
Цитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 64
Права: смайлы да, картинки да, шрифты нет, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет