Logické operátory

Často potřebujeme v podmínkách zkombinovat více různých požadavků. K tomu slouží logické operátory:

  • && - logické AND (a zároveň)
  • || - logické OR (nebo)

Operátor && (AND):

int vek = 20;
bool maRidicak = true;

// Obě podmínky musí být pravdivé
if (vek >= 18 && maRidicak) {
    std::cout << "Může řídit auto" << std::endl;
}

Operátor || (OR):

std::string den = "pátek";
std::string pocasi = "déšť";

// Stačí, když je pravdivá alespoň jedna podmínka
if (den == "pátek" || pocasi == "slunečno") {
    std::cout << "Jdu ven" << std::endl;
}

Můžeme kombinovat více operátorů:

int vek = 25;
bool maRidicak = true;
bool maAuto = false;

// Musí být dospělý A mít řidičák A (vlastnit auto NEBO mít půjčené)
if (vek >= 18 && maRidicak && (maAuto || maPujceneAuto)) {
    std::cout << "Může vyrazit na cestu" << std::endl;
}

Pro lepší čitelnost můžeme složité podmínky rozdělit do více proměnných:

bool jeDospely = (vek >= 18);
bool maOpravneni = (maRidicak && maZkusenosti);
bool maDopravniProstredek = (maAuto || maPujceneAuto);

if (jeDospely && maOpravneni && maDopravniProstredek) {
    std::cout << "Může vyrazit na cestu" << std::endl;
}

Pokyny

Doplňte podmínku příkazu if, který vypíše Vítejte pokud je uživatelské jméno admin a (and) heslo 123456.

Začněte programovat zdarma

Registrací souhlasíte s provozními podmínkami a zásadami ochrany osobních údajů.

Nebo se registrujte pomocí:

7/10

Logické operátory | Start Coder