A programunk néha több lehetőség szerint futhat tovább, ezeket feltételekhez köthetjük, és a program a feltételek teljesülése esetén a megfelelő utasításokat hajtja végre.
if utasítás
Az „if” utasítás ellenőrzi, hogy a feltétel igaz-e. Ha igaz akkor végrehajtja az utasítást. A göndör zárójelek elhagyhatók az if (feltétel) után, ha csak egy feltételes utasítást kell végrehajtani. A pontosvessző jelzi az utasítás végét. Javaslom azonban a göndör zárójelek használatát mindenképp, mert átláthatóbbá teszi a kódot és ha később még egy sor utasítást szeretnénk hozzáírni a blokkhoz akkor szükség lesz rá. Figyeljünk rá, hogy a feltételben összehasonlító operátort használjunk. Ha véletlenül az egy egyenlőségjelet „=” használjuk, akkor az egy szimpla értékadás és a feltétel mindíg igaz lesz. Az „if” utasítást önállóan is használhatjuk.
int a = 10;
if(a == 10)
{
// utasítás, ha a feltétel igaz
}
else utasítás
Az „if” utasítás után megadhatunk egy opcionális „else” utasítást, amely akkor hajtódik végre, ha a kifejezés hamis.
int a = 10;
if(a == 10)
{
// utasítás, ha a feltétel igaz
}
else
{
// utasítás, ha a feltétel hamis
}
else if utasítás
Az „if” utasítást követően egy opcionális „else if ” utasítást is megadhatunk, ha több különböző feltételt szerenénk megvizsgálni. Tetszőleges számú „else if” ágat megadhatink, míg „if” és „else” csak egy-egy lehet.
int a = 8;
if(a <= 10)
{
// ha az első feltétel igaz
}
else if(a > 10)
{
// ha az második feltétel igaz
}
Írhatunk „if – else if – else” kombinációt is, így több feltételt megvizsgálhatunk az „if – else if” szakaszokban és ha egyik sem igaz akkor az „else” kódblokkja fut le.
int a = 8;
if(a <= 10)
{
// ha az "a" egyenlő vagy kisebb mint 10
}
else if(a > 10 && a <= 20)
{
// ha az "a" 11 és 20 között van
}
else if(a > 20 && a <= 30)
{
// ha az "a" 21 és 30 között van
}
else
{
// ha egyik feltétel sem igaz
}
switch case
Hasonló mint az „if – else if – else” utasítások, a „switch case” is egy vezérlési szerkezet. Előfordul, hogy ugyanazt a változót össze kell hasonlítani több különböző értékkel és más-más kódot végrehajtani a változó értékétől függően.
A „switch” feltételében megadott változó értékét hasonlítja össze a „case” cimke után megadott kifejezéssel. A „switch” utasításról utasításra lép. Utasítás csak akkor hajtódik végre, ha egy olyan „case” kifejezést talál, amely megegyezik a „switch” feltételében megadott változó értékével. Ezután addig folytatja az utasítások végrehajtását, amíg el nem éri a „switch” blokk végét, vagy nem találkozik egy „break” utasítással. Ha egyik „case” cimke sem egyezik, akkor a „default” cimke utasítása fut le.
switch (myVar)
{
case label1:
// statements
break;
case label2:
// statements
break;
default:
// statements
break;
}
? : feltételes operátor
A feltételes operátor ” ? : ” három operandussal rendelkezik. A kettőspont két oldalán álló kifejezések közül mindig csak az egyik értékelődik ki.
(feltétel) ? (igaz_kifejezés) : (hamis_kifejezés);
Először az „feltétel” értékelődik ki, ha az értéke igaz, akkor a „igaz_kifejezés” kiértékelésre kerül, és a „hamis_kifejezés” figyelmen kívül marad.
(igaz) ? (kiértékelődik) : (nem értékelődik ki);
Ha az „feltétel” hamis lesz, akkor az „igaz_kifejezés” marad figyelmen kívül és a „hamis_kifejezés” kerül kiértékelésre .
(hamis) ? (nem értékelődik ki) : (kiértékelődik);
Az eredmény a „igaz_kifejezés” vagy a „hamis_kifejezés” értéke lesz, attól függően, hogy az „feltétel” igaz vagy hamis.
myVariable = (feltétel) ? (igaz_kifejezés) : (hamis_kifejezés);
A következő rész a ciklusokról szól.
Funduino UNO XXL Tanulókészlet
hirdetés