1. Главная
  2. Библиотека
  3. Программирование
  4. На обработку поступает натуральное число. Нужно написат...
Разбор задачи

На обработку поступает натуральное число. Нужно написать программу, которая выводит на экран произведение цифр введённого числа. Программист торопился и написал программу неправильно. Найдите все ошибки в этой программе (их ровно 3). Известно, что каждая

  • Предмет: Программирование
  • Автор: Кэмп
  • #Основы алгоритмизации и программирования
  • #Языки программирования (C++, Java, Python и др.)
На обработку поступает натуральное число. Нужно написать программу, которая выводит на экран произведение цифр введённого числа. Программист торопился и написал программу неправильно. Найдите все ошибки в этой программе (их ровно 3). Известно, что каждая

Условие:

На обработку поступает натуральное число. Нужно написать программу, которая выводит на экран произведение цифр введённого числа. Программист торопился и написал программу неправильно.
Найдите все ошибки в этой программе (их ровно 3). Известно, что каждая ошибка затрагивает только одну строку и может быть исправлена без изменения других строк.
```
n = input()
product = n % 10
while n >= 10:
digit = n % 10
product = product * digit
n //= 10
print(product)
```

```
Эталонный ввод
8 3 4 3 2
Эталонный вывод 576
```

Решение:

Рассмотрим исходный код построчно и найдём три ошибки, исправление каждой из которых не затрагивает другие строки.

  1. Строка "n = input()". Функция input() возвращает строку, а далее в программе используется арифметика (операции %, //, сравнение с числом). Поэтому необходимо преобразовать ввод в число. Исправление – заменить на: n = int(input()).

  2. Строка "product = n % 10". Здесь программист сразу берёт последнюю цифру числа и присваивает её переменной...

Внутри — полный разбор, аргументация, алгоритм решения, частые ошибки и как отвечать на каверзные вопросы препода, если спросит

Попробуй решить по шагам

Попробуй один шаг и продолжи в режиме обучения или посмотри готовое решение

Какое начальное значение следует присвоить переменной `product` при вычислении произведения цифр числа, чтобы избежать ошибок в логике умножения?

Что нужно знать по теме:

Что нужно знать по теме

Алгоритм решения

Топ 3 ошибок

Что спросит препод

Выбери предмет