Составьте программу нахождения произведения нечётных чисел - Pascal ABC
Формулировка задачи:
У меня вопрос.
Составьте программу нахождения произведения нечётных чисел 3*5*7*...*13.
Вот программа:
Вопрос: Если я число 13 переставлю на 90 то всё нормально, а если на 100, вылетает отрицательный ответ. Это нормально?
Решение задачи: «Составьте программу нахождения произведения нечётных чисел»
textual
Листинг программы
Function MulN(n : Integer) : uint64; { n -должно задаваться нечетным }
Begin
If n>0 then MulN:=N*(MulN(n-2)) else MulN:=1;
end;
Begin
Writeln(MulN(99));
end.
Объяснение кода листинга программы
В данном коде функция MulN принимает целочисленный аргумент n, который должен быть нечётным. Если n больше нуля, то функция вызывает саму себя с аргументом n-2 и умножает результат на n. Если n равно нулю или отрицательное, то функция возвращает 1. В основной части кода вызывается функция MulN с аргументом 99. Результат выводится на экран.