Информатика, вопрос задал SlavaZSU , 1 год назад

Подмога,слепой
#include


#include


using namespace std;


int main()


{


int k, x, y;


cout << "Enter x: ";


cin >> x;


cout << "Enter y: ";


cin >> y;


cout << "k = " << (x == y + 2) ? x + (y * y) + 2 : (x > y + 2 && y == 3) ? sin(y) + sin(2) : x + log(abs(y + (2 * y))) << endl;


return 0; }

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

Ответил devpaul
0

Ответ:

Держи код, так будет правильнее:

С++:

#include <iostream>

#include <cmath>

using namespace std;

int main() {

int k, x, y;

cout << "Enter x: ";

cin >> x;

cout << "Enter y: ";

cin >> y;

k = (x == y + 2) ? x + (y * y) + 2 : ((x > y + 2 && y == 3) ? sin(y) + sin(2) : x + log(abs(y + (2 * y))));

cout << "k = " << k << endl;

return 0;

}

Объяснение:

Первый оператор "?" проверяет условие (x == y + 2) и, если оно верно, то присваивает значение k = x + (y * y) + 2, иначе переходит к следующему оператору.

Второй оператор "?" проверяет условие (x > y + 2 && y == 3) и, если оно верно, то присваивает значение k = sin(y) + sin(2), иначе присваивает значение k = x + log(abs(y + (2 * y))).

Далее общий результат выводится на экран.


SlavaZSU: в чём подвох,мне нужно именно этими способом
SlavaZSU: условной
тернарной операции
devpaul: Тебе нужно сделать с тернарными операторами или с полноценными блоками if-else?
devpaul: Верно?
Новые вопросы