Programowanie i algorytmy

Warunkowy trójargumentowy operator ? :

powrót

W C++ i wielu innych językach programowania istnieje operator, który potrzebuje trzech argumentów do poprawnego działania. Tym operatorem jest warunkowy operator:

arg1 ? arg2 : arg3

arg1 - tu znajduje się warunek lub warunki

arg2 - tu znajduje się instrukcja, która wykona się, gdy warunek jest prawdziwy

arg3 - tu znajduje się instrukcja, która wykona się, gdy warunek będzie fałszywy.

W wielu sytuacjach stosowanie tego operatora skraca i upraszcza kod programu. Prześledźmy kilka przykładów.

Zadanie 1. Napisz program, który sprawdzi, czy dana liczba jest parzysta.

Rozwiązanie

#include<iostream>
using namespace std;
 
int main()
{
  int a;
 
  cin>>a;
 
  cout<<(a%2?"Liczba jest nieparzysta":"Liczba jest nieparzysta");
 
  return 0;
}
 

 

Zadanie 2. Napisz program, który przypisze do zmiennej max większą wartość z dwóch podanych liczb.

Rozwiązanie

#include<iostream>
using namespace std;
 
int main()
{
    int a, b;
 
        cin>>a>>b;
 //jeśli a>b do zmiennej max zostanie przypisana wartość zmiennej a
// w przeciwnym wypadku wartość zmiennej b    
        int max = a>b?a:b; 
 
        cout<<max;
        return 0;
}