Вопрос задан 09.08.2023 в 07:46. Предмет Информатика. Спрашивает Карпачёва Анастасия.

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

используя операцию умножения. Учтите, что числа могут быть отрицательными. Входные данные Входная строка содержит два целых числа. Выходные данные Программа должна вывести произведение введённых чисел. Примеры входные данные 6 12 выходные данные 72 входные данные -7 15 выходные данные -105
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Сазонов Артем.
#include <iostream>
using namespace std;  

int multiply(int x, int y)
{
    if(y == 0)
      return 0;
      if(y > 0)
      return (x + multiply(x, y - 1));
       if(y < 0)
      return -multiply(x, -y);
}
   
int main()
{
   int a, b;
   cin >> a >> b;
   cout << multiply(a, b) << endl;
   return 0;
}
0 0
Отвечает Вешняков Тимур.
#include <cstdio>
#include <cstdlib>

int
main(void)
{
    int a = 0;
    int b = 0;
    scanf("%d %d", &a, &b);
    long long mul = 0;
    for (int i = 0; i < abs(a); i++) {
        mul += b;
    }
    if (a < 0) {
        mul = -mul;
    }
    printf("%lld\n", mul);
    return 0;
}
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Конечно, вот пример программы на C++, которая выполняет указанную задачу:

cpp
#include <iostream> int main() { int a, b; // Ввод двух целых чисел std::cout << "Введите два целых числа: "; std::cin >> a >> b; int result = 0; // Если оба числа равны нулю, то их произведение также будет нулем if (a == 0 || b == 0) { result = 0; } // Если одно из чисел отрицательное, то можно изменить порядок их сложения else if (a < 0 && b > 0) { for (int i = 0; i > a; i--) { result -= b; } } else if (a > 0 && b < 0) { for (int i = 0; i > b; i--) { result -= a; } } // Если оба числа отрицательные, то меняем их знаки и используем положительное произведение else if (a < 0 && b < 0) { a = -a; b = -b; for (int i = 0; i < b; i++) { result += a; } } // Если оба числа положительные, то выполняем умножение через сложение else { for (int i = 0; i < b; i++) { result += a; } } // Вывод результата std::cout << "Произведение чисел: " << result << std::endl; return 0; }

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

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос