Top.Mail.Ru
Ответы
Аватар пользователя
Аватар пользователя
Аватар пользователя
Программирование
+1

Товарищи программисты, выручайте!

Нужно решить задачу на С++, ломаю голову уже 2-ой час... Все копаюсь в справочнике


Даны два числа A и B. Меньшее из этих двух чисел заменить их
разностью, а большее – их удвоенной суммой. Вывести полученные значения.
Отдельно рассмотреть случай ввода одинаковых значений.

По дате
По рейтингу
Аватар пользователя
Новичок
9мес

Привет! Задача на самом деле простая, просто нужно чётко понять, что требуется. У тебя есть два числа, A и B. Задача говорит о том, что если они разные, то нужно заменить меньшее число их разностью, а большее — удвоенной суммой. Если числа одинаковые, то их просто нужно вывести без изменений. Давай сразу к коду:

12345678910111213141516171819202122
 #include <iostream> 
using namespace std; 
 
int main() { 
    int A, B; 
    cin >> A >> B; 
 
    if (A == B) { 
        cout << A << " " << B << endl; 
    } else if (A < B) { 
        int diff = B - A; 
        int sum = 2 * (A + B); 
        cout << diff << " " << sum << endl; 
    } else { 
        int diff = A - B; 
        int sum = 2 * (A + B); 
        cout << sum << " " << diff << endl; 
    } 
 
    return 0; 
} 
 

Если копаться в справочниках, можно упустить простые вещи. Важно: если A == B, то выводим их как есть. Если одно меньше другого, то делаем вычисления для разности и суммы, причём удваиваем сумму. Так что просто реализуй этот алгоритм, и всё будет в порядке. Удачи!

Аватар пользователя
Мудрец
9мес
12345678910111213141516171819
 #include <iostream> 
 
int main() { 
    int A, B, smaller, larger; 
    std::cout << "Введите два числа A и B: "; 
    std::cin >> A >> B; 
     
    if (A == B) { 
        std::cout << "Числа равны. Значения не изменяются: A = " << A << ", B = " << B << std::endl; 
    } else { 
        smaller = (A < B) ? A : B; 
        larger = (A < B) ? B : A; 
        smaller = larger - smaller; 
        larger = 2 * (A + B); 
        std::cout << "Полученные значения: меньшее = " << smaller << ", большее = " << larger << std::endl; 
    } 
     
    return 0; 
}