Найти в Дзене
IT Start | Python

Три способа найти произведение цифр числа в Python

В этой статье рассмотрим три способа найти произведение цифр числа в Python. Первым делом дадим пользователю возможность ввода числа: number = int(input('Введите число: ')) Создадим переменную result и присвоим ей значение 1. В ней по итогу будет храниться результат произведения цифр числа. number = int(input('Введите число: ')) result = 1 Создадим цикл while, который не закончится, пока number больше нуля: number = int(input('Введите число: ')) result = 1
while number > 0: Внутри цикла в result сохраним результат произведения текущего result и последней цифры введённого пользователем числа (number % 10). После этого уберём последнюю цифру основного числа, используя целочисленное деления на 10 (number //= 10): number = int(input('Введите число: ')) result = 1
while number > 0:
result = result * (number % 10)
number //= 10 Добавим вывод результата: number = int(input('Введите число: ')) result = 1
while number > 0:
result = result * (number % 10)
number //= 10 print(result) В нач
Оглавление

Введение

В этой статье рассмотрим три способа найти произведение цифр числа в Python.

Использование цикла while

Первым делом дадим пользователю возможность ввода числа:

number = int(input('Введите число: '))

Создадим переменную result и присвоим ей значение 1. В ней по итогу будет храниться результат произведения цифр числа.

number = int(input('Введите число: '))

result = 1

Создадим цикл while, который не закончится, пока number больше нуля:

number = int(input('Введите число: '))

result = 1
while number > 0:

Внутри цикла в result сохраним результат произведения текущего result и последней цифры введённого пользователем числа (number % 10). После этого уберём последнюю цифру основного числа, используя целочисленное деления на 10 (number //= 10):

number = int(input('Введите число: '))

result = 1
while number > 0:
result = result * (number % 10)
number //= 10

Добавим вывод результата:

number = int(input('Введите число: '))

result = 1
while number > 0:
result = result * (number % 10)
number //= 10

print(result)

Использование цикла for

В начале также дадим пользователю возможность ввода числа и создадим переменную result:

number = int(input('Введите число: '))

result = 1

Создадим цикл for, в котором будем проходиться по каждому элементу введённого числа преобразовав его в строку:

number = int(input('Введите число: '))

result = 1
for n in str(number):

Внутри цикла в result сохраним результат произведения текущего result и текущей цифры, преобразованной обратно в целое число:

number = int(input('Введите число: '))

result = 1
for n in str(number):
result *= int(n)

Добавим вывод результата:

number = int(input('Введите число: '))

result = 1
for n in str(number):
result *= int(n)

print(result)

Использование рекурсивной функции

Создадим функцию product_of_digits(), в которой будет вычислаться результат произведения цифр числа.

У функции будет присутствовать один параметр, а именно:

  • n: число, произведение цифр которого необходимо найти

def product_of_digits(n):

Внутри функции добавим условие, что если n равняется нулю, то функция вернёт 1:

def product_of_digits(n):
if n == 0:
return 1

Если же условие не сработало, то функция вернёт последнюю цифру числа в n (n % 10), помноженную на рекурсивный вызов функции product_of_digits(), с передачей в неё числа n без последней цифры (n // 10):

def product_of_digits(n):
if n == 0:
return 1
return (n % 10) * product_of_digits(n // 10)

Добавим пользователю возможность ввода исходного числа и вывод результата:

def product_of_digits(n):
if n == 0:
return 1
return (n % 10) * product_of_digits(n // 10)

number = int(input('Введите число: '))
print(product_of_digits(number))

Заключение

В ходе статьи мы с Вами разобрали целых три способа найти произведение цифр числа в Python: с использованием циклов while и for, а также рекурсивной функции. Надеюсь Вам понравилась статья, желаю удачи и успехов! 🙂

Мой Telegram канал

Мой YouTube канал

Курс по созданию телеграм-ботов на Python с фреймворком Aiogram

Мой курс по Python (50 видоуроков + дополнительные уроки)

Курс по созданию GUI на Python