1-11 класс
  • 1-11 класс
  • 1 класс
  • 2 класс
  • 3 класс
  • 4 класс
  • 5 класс
  • 6 класс
  • 7 класс
  • 8 класс
  • 9 класс
  • 10 класс
  • 11 класс
Выберите класс
Предметы
Босова
Задание 3 Параграф 5.5 ГДЗ Босова 8 класс 2025 (Информатика)
Босова, Босова
8 класс
Класс
8
Предмет
Информатика
Автор
Босова, Босова

Задание 3 Параграф 5.5 ГДЗ Босова 8 класс 2025 (Информатика)

Задача

Требовалось написать программу вычисления факториала числа $$n$$ (факториал числа $$n$$ есть произведение всех целых чисел от 1 до $$n$$). Программист торопился и написал программу неправильно. Ниже приведён фрагмент его программы, в котором содержится несколько ошибок:

k = 1
f = 0
while k < n:
    f = f * k
    k += 1

Обсудите этот фрагмент программы в группе. Найдите ошибки. Внесите необходимые исправления, допишите программу и выполните её на компьютере.

Для проверки правильности программы используйте тест:

Входные данные

Введите n >> 5
Введите n >> 6

Выходные данные

5! = 120
6! = 720

Подробный ответ

В программе допущены такие ошибки:

  • факториал нужно начинать с $$f = 1$$, а не с $$f = 0$$;
  • в цикле нужно умножать $$f$$ на $$k$$, а не присваивать значение;
  • условие цикла должно включать число $$n$$, то есть $$k \le n$$;
  • в конце нужно вывести результат в нужном виде.

Исправленная программа:

n = int(input(‘Введите n >> ‘))
k = 1
f = 1
while k <= n:
    f = f * k
    k += 1
print(n, ‘!=’, f)

Проверка:

  • при $$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$$.

Ответ: исправленная программа вычисляет факториал правильно; для $$n=5$$ выводится $$5! = 120$$, для $$n=6$$ — $$6! = 720$$.



Общая оценка
4.7 / 5
Другие учебники
Другие предметы