Задание 3 Параграф 4.5 ГДЗ Босова 8 класс 2025 (Информатика)
Требовалось написать программу вычисления факториала числа $$n$$ (факториал числа $$n$$ есть произведение всех целых чисел от 1 до $$n$$). Программист торопился и написал программу неправильно. Ниже приведён фрагмент его программы, в котором содержится несколько ошибок:
k := 1; f := 0; while k < n do f := f * k; k := k + 1
Обсудите этот фрагмент программы в группе. Найдите ошибки. Внесите необходимые исправления, допишите программу и выполните её на компьютере.
Для проверки правильности программы используйте тест:
Входные данные Выходные данные Введите n >> 5
Введите n >> 65!=120
6!=720
В исходном фрагменте есть три ошибки:
- переменной $$f$$ нужно присвоить значение $$1$$, а не $$0$$, иначе произведение всегда будет равно нулю;
- в цикле нужно умножать $$f$$ на $$k$$ до тех пор, пока $$k \le n$$;
- для нескольких операторов в цикле нужны операторные скобки begin … end.
Исправленная программа:
var k, f, n: integer;
begin
write(‘n>>’);
readln(n);
k := 1;
f := 1;
while k <= n do
begin
f := f * k;
inc(k)
end;
writeln(n, ‘!=’, f)
end.
Проверка:
- при $$n=5$$ получаем $$5! = 1 \cdot 2 \cdot 3 \cdot 4 \cdot 5 = 120$$;
- при $$n=6$$ получаем $$6! = 1 \cdot 2 \cdot 3 \cdot 4 \cdot 5 \cdot 6 = 720$$.
Ответ: исправленная программа вычисляет факториал правильно; для теста $$5$$ получается $$120$$, для $$6$$ — $$720$$.



