Тернарный оператор ?

Тернарный оператор ?: позволяет сократить определение простейших условных конструкций if и имеет следующую форму:

[первый операнд - условие] ? [второй операнд] : [третий операнд]

Оператор использует сразу три операнда. В зависимости от условия тернарный оператор возвращает второй или третий операнд: если условие равно true (то есть истинно), то возвращается второй операнд; если условие равно false (то есть ложно), то третий. Например:

#include <iostream>
using namespace std;
int main()
{
    int x = 5;
    int y = 3;
    char sign;
    cout << "Введите знак операции: ";
    cin >> sign;
    int result = sign == '+' ? x + y : x - y;
    cout << "Результат: " << result << "\n";
    return 0;
}

В данном случае производится ввод знака операции. Здесь результатом тернарной операции является переменная result. И если переменная sign содержит знак "+", то result будет равно второму операнду - (x+y). Иначе result будет равно третьему операнду.

Последнее изменение: Tuesday, 17 January 2023, 11:31