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

  • 61
Напишите программу на Python, которая принимает два целых числа и вычисляет их произведение, не используя операцию умножения. Обратите внимание, что числа могут быть отрицательными. Пример: Введите два числа: 10 -15 10*(-15)=-150
Весенний_Дождь_6748
33
Конечно, я могу помочь вам с этой задачей! Для вычисления произведения двух целых чисел без использования операции умножения мы можем воспользоваться свойствами арифметических операций и циклами.

Вот пошаговое решение:

1. Запросите у пользователя ввод двух целых чисел:

python
num1 = int(input("Введите первое число: "))
num2 = int(input("Введите второе число: "))


2. Создайте переменную `product` и инициализируйте ее значением 0. Она будет использоваться для хранения результата произведения чисел:

python
product = 0


3. Проверьте знаки чисел, чтобы определить итоговый знак произведения. Если оба числа положительные или оба числа отрицательные, результат будет положительным. Если одно из чисел отрицательное, а другое положительное, результат будет отрицательным. Примените соответствующие операции сравнения и логические операции:

python
if (num1 < 0 and num2 > 0) or (num1 > 0 and num2 < 0):
is_negative = True
else:
is_negative = False


4. Преобразуйте оба числа в положительные, чтобы избавиться от знака, используя функцию `abs()`:

python
num1 = abs(num1)
num2 = abs(num2)


5. Используйте цикл `for` для сложения чисел `num1` с `num2` количество раз, равное `num2`:

python
for i in range(num2):
product += num1


6. Если результат должен быть отрицательным, добавьте знак минус перед результатом произведения:

python
if is_negative:
product = -product


7. Выведите результат:

python
print(f"{num1} * {num2} = {product}")


Вот полная программа:

python
num1 = int(input("Введите первое число: "))
num2 = int(input("Введите второе число: "))

product = 0

if (num1 < 0 and num2 > 0) or (num1 > 0 and num2 < 0):
is_negative = True
else:
is_negative = False

num1 = abs(num1)
num2 = abs(num2)

for i in range(num2):
product += num1

if is_negative:
product = -product

print(f"{num1} * {num2} = {product}")


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