Сравнение через if

Задание: Составить алгоритм увеличения всех трех, введённых с клавиатуры, переменных на 5,если среди них есть хотя бы две равные. В противном случае выдать ответ «равных нет».

# include <iostream>
using namespace std;

int main()
{
setlocale(LC_ALL, "RUS");
int chiclo1, chiclo2, chiclo3;
cout << "Введите 1 число: ";
cin >> chiclo1;
cout << "\nВведите 2 число: ";
cin >> chiclo2;
cout << "\nВведите 3 число: ";
cin >> chiclo3;
if ((chiclo1 == chiclo2 && chiclo1 == chiclo3) || (chiclo2 == chiclo3 && chiclo3 == chiclo1)) {
    chiclo1 = chiclo1 + 5;
    chiclo2 = chiclo2 + 5;
    chiclo3 = chiclo3 + 5;
    cout << "1 число = " << chiclo1 << endl;
    cout << "2 число =" << chiclo2 << endl;
    cout << "3 число =" << chiclo3 << endl;
}
else {
    cout << "Равных нет";
}
return 0;

У меня всегда выводит "Равных нет". Где ошибка?


Ответы (1 шт):

Автор решения: Harry

Потому что вы всегда проверяете на равенство ВСЕ ТРИ числа.

Вам надо проверять

if (chislo1 == chislo2 || chislo1 == chislo3 || chislo3 == chislo2)
→ Ссылка