Прошу помощи! Срочно!))

0 голосов
20 просмотров

Прошу помощи! Срочно!))


image

Информатика (893 баллов) | 20 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

VAR nInput: byte;
{Количество разбиений числа n на слагаемые,
не превышающие k,
удовлетворяет рекуррентной формуле:
P(n,k) = P(n,k-1) + P(n-k,k) когда неравенство k<=n) <br>P(n,k) = P(n,n) когда неравенство k>n
с начальными значениями
P(0,0) = 1
P(i,0) = 0, i>0}

Function P(n,k: byte): word;
Begin
IF k=0
THEN if n=0
then P:=1
else P:=0
ELSE if (k<=n)<br> then P:=P(n,k-1)+P(n-k,k)
else P:=P(n,n);
End;

BEGIN
write('Input natural N and press Enter: ');
readln(nInput);
write('Partition (number theory) = ');
writeln(P(nInput,nInput)); 
writeln('press Enter');
readln;
END.

(66 баллов)
0

Очень круто! Спасибо за помощь:)