C/C++
C++,помогите срочно!!! Ни как не могу понять как решить данную задачу
Даны два числа, если они оба четные, то найдите их сумму, если хотя бы одно из них четное, то разность, иначе – произведение
#include <iostream>
using namespace std;
int integer(const char* msg) {
cout << msg;
int value;
cin >> value;
return value;
}
int main() {
while (true) {
auto a = integer("a: ");
auto b = integer("b: ");
if ((a & 1) && (b & 1)) cout << a * b;
else if ((~a & 1) && (~b & 1)) cout << a + b;
else cout << "x: " << a - b;
puts("");
}
}
using namespace std;
int integer(const char* msg) {
cout << msg;
int value;
cin >> value;
return value;
}
int main() {
while (true) {
auto a = integer("a: ");
auto b = integer("b: ");
if ((a & 1) && (b & 1)) cout << a * b;
else if ((~a & 1) && (~b & 1)) cout << a + b;
else cout << "x: " << a - b;
puts("");
}
}
switch((a%2)+(b%2)){
case 0: cout<<a+b;break;
case 1:cout<<a-b;break;
case 2:cout<<a*b;break;
}
case 0: cout<<a+b;break;
case 1:cout<<a-b;break;
case 2:cout<<a*b;break;
}
#include <iostream>
using namespace std;
int main()
{
int n1,n2;
cout << "Введите число 1: ";
cin >> n1;
cout << "Введите число 2: ";
cin >> n2;
int chet_1 = n1 % 2;
int chet_2 = n2 % 2;
if (chet_1 == 0 && chet_2 == 0)
{
cout << n1 + n2 << endl;
}
else if (chet_1 == 0 && chet_2 != 0 ||
chet_1 != 0 && chet_2 == 0)
{
cout << n1 - n2 << endl;
}
else
{
cout << n1 * n2 << endl;
}
return 0;
}
using namespace std;
int main()
{
int n1,n2;
cout << "Введите число 1: ";
cin >> n1;
cout << "Введите число 2: ";
cin >> n2;
int chet_1 = n1 % 2;
int chet_2 = n2 % 2;
if (chet_1 == 0 && chet_2 == 0)
{
cout << n1 + n2 << endl;
}
else if (chet_1 == 0 && chet_2 != 0 ||
chet_1 != 0 && chet_2 == 0)
{
cout << n1 - n2 << endl;
}
else
{
cout << n1 * n2 << endl;
}
return 0;
}
bool b1 = a % 2;
bool b2 = b % 2;
int res = b1 && b2? a + b : b1 || b2? a -b : a * b;
bool b2 = b % 2;
int res = b1 && b2? a + b : b1 || b2? a -b : a * b;
Любопытно, почему все предложившие решение превратно поняли условие?
Ведь в условии написано “хотя бы”, а не “только”. Это означает, что второе является надмножеством первого.
Таким образом следует вывести либо сумму, либо сумму и разность, либо произведение.
Ведь в условии написано “хотя бы”, а не “только”. Это означает, что второе является надмножеством первого.
Таким образом следует вывести либо сумму, либо сумму и разность, либо произведение.
Станислав Панягин
если в решении Ивана Сигаева убрать один break то подойдет и под такое условие
Похожие вопросы
- C++. ПОМОГИТЕ СРОЧНО!!!!!
- СРОЧНО! Помогите решить 2 задачи C++
- Задача на C++, помогите решить.
- Задача на c++ помогите решить без рандомного заполнения массива
- Решите, пожалуйста, задачу на c++
- Программирование C++ Помогите решить задачу
- Решите 2 задачи на C++
- Помогите решить данное задание, на языке программирования с++
- Задача на структуры данных, очереди и стек, не могу понять что делаю нет так?
- [C++] Помогите написать задачу на структуры!