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
7/10