Предмет: Информатика
ГДЗ Рабочая тетрадь по Информатике 9 класс БосоваЗадание 92. Структура программы с функцией вычисления факториала на Паскале
Задание 92. Выделите в программе и подпишите справа от нее заголовок головной программы; раздел описания переменных; раздел описания подпрограммы с указанием имени функции, входных данных, типа результата и операторов функции; раздел операторов головной программы.
program z92; { Заголовок головной программы }
var { Раздел описания переменных }
x, y: integer;
p: longint;
function f (n: integer): longint; { Раздел описания подпрограммы }
{ Имя: f }
{ Входные данные: n (integer) }
{ Тип результата: longint }
var { Локальные переменные подпрограммы }
i: integer;
p: longint;
begin { Операторы функции }
p := 1;
for i := 1 to x do
p := p * i;
f := p
end;
begin { Раздел операторов головной программы }
write('x=');
readln(x);
write('y=');
readln(y);
p := f(x) + f(y) + f(x + y);
writeln('p=', p)
end.
Что будет выведено на экран в результате выполнения программы?
Программа выводит одно число — результат выражения f(x) + f(y) + f(x + y).
Ключевой момент: Функция f всегда вычисляет факториал x (x!), независимо от аргумента n (n не используется в цикле). Таким образом:
- f(x) = x!
- f(y) = x! (опять x!)
- f(x + y) = x! (снова x!)
Итоговый вывод: 3 * x! (трёхкратная сумма факториала x).
Пример: Если ввести x=1, y=2, то вывод будет 3 (поскольку 1! = 1, и 1+1+1=3).
Если x=3, y=любое, вывод 18 (3! = 6, 6+6+6=18).
Вывод зависит только от x (y игнорируется в расчётах).
Поделиться
