Назад Вперед Зміст

Оператори вибору одного з двох варіантів

    Таких операторів два:
  1. Повний умовний оператор
  2. Тернарний оператор

Повний умовний оператор

Повний умовний оператор використовується, якщо, в залежності від деякої умови, потрібно виконати одну з двох груп операторів.


 if (B) 
   { 
    //виконуються, якщо умова В вірна
    //пропускаються, якщо умова В невірна
    S1;S2;…Sn;
   }
 else
   { 
    //виконуються, якщо умова В невірна
    //пропускаються, якщо умова В вірна
    P1;P2;…Pn;
   }
 //виконується завжди
 T1;

Зауваження

Приклади роботи оператору

У прикладі, в залежності від значення x виконуються різні оператори.

Программа

#include <iostream>
using namespace std;

int main()
{
    int x=-5, y=5; // Ініціалізація змінних x та y

    if (x<0) // Перевірка, чи x менше 0
    {
        // Видозмінюємо значення, якщо умова виконана
        x=x+5; y=2*y;
    }
    else
    {
        // Продовжуємо з іншими операціями, якщо умова не виконана
        x=x*2; y=y+5;
    }

    // Виведення результатів
    cout << "x=" << x << "\n";
    cout << "y=" << y << "\n";

    return 0;
}

Оскільки X=-5 (тобто умова вірна), то виконується перша група операторів, тобто x=x+5;y=2*y; Друга група операторів пропускається і потім виконуються оператори виводу

Результат роботи програми

#include <iostream>
using namespace std;

int main()
{
    int n;
    cin >> n;
    if (n > 0)
    {
        cout << "positive";
    }
    else if (n < 0)
    {
        cout << "negative";
    }
    else
    {
        cout << "zero";
    }
    return 0;
}

Оскільки X= 5 (тобто умова не вірна), то виконується друга група операторів, тобто x=x*2; y=y+5; Перша група операторів пропускається і потім виконуються оператори виводу

Результат роботи програми

Тернарний оператор

Оператор називається тернарним, тому що у нього три операнда.

Синтаксис оператора такий:
Змінна= умова?Вираз1:Вираз2

Оператор працює так:

Тернарним оператором повертається значення обчисленого виразу, яке може бути присвоєно змінній або використано при обчисленні інших виразів.

Фактично тернарний оператор являє собою скорочену форму умовного оператора.

Але умовний оператор управляє виконанням операторів, а тернарний оператор управляє обчисленням значень.

Назад Вперед Зміст