Напишите программу на языке Python, которая принимает на вход два целых числа и находит их произведение

Напишите программу на языке Python, которая принимает на вход два целых числа и находит их произведение без использования операции умножения. Обратите внимание, что числа могут быть отрицательными. Пример: Введите два числа: 10 -15 Результат: 10*(-15)=-150
Sharik

Sharik

Конечно! Вот программа на языке Python, которая находит произведение двух целых чисел, не используя операцию умножения:

python
def multiply_without_operator(a, b):
# Проверяем знаки чисел и сохраняем положительность результата
is_positive = (a < 0 and b < 0) or (a > 0 and b > 0)

# Берем модули чисел для упрощения работы с отрицательными значениями
a = abs(a)
b = abs(b)

# Инициализируем счетчик для подсчета результирующей суммы
result = 0

# Проходим по циклу и добавляем a к результату b раз
for _ in range(b):
result += a

# Учитываем знак результата при необходимости
if not is_positive:
result = -result

return result

# Запрашиваем у пользователя два числа
num1 = int(input("Введите первое число: "))
num2 = int(input("Введите второе число: "))

# Вызываем функцию и выводим результат
result = multiply_without_operator(num1, num2)
print(f"Результат: {num1}*({num2})={result}")


Данная программа сначала проверяет знаки введенных чисел, чтобы определить, будет ли результат положительным или отрицательным. Затем мы берем модули обоих чисел для упрощения работы с отрицательными значениями.

Далее у нас есть переменная `result`, которая инициализируется значением 0 и используется для подсчета результирующей суммы. Мы используем цикл `for`, чтобы прибавить значение первого числа `a` к результату `b` раз.

В конце мы учитываем знак результата, если он должен быть отрицательным, и возвращаем значение `result`.

Пример работы программы с вашими входными данными:

Введите первое число: 10
Введите второе число: -15
Результат: 10*(-15)=-150


Эта программа реализует операцию умножения без непосредственного использования оператора `*`. Она может быть полезна для понимания базовых принципов умножения и работы с отрицательными числами.
Знаешь ответ?
Задать вопрос
Привет!
hello