...
Loogisilla operaatioilla saadaan informaatio siitä onko muuttuja nolla tai ei, lisäksi voidaan testata muuttujien yhtä- ja erisuuruutta.
- muuttuja
a
on nollaCode Block if (!a) printf("a on nolla"); else printf("a ei ole nolla");
- muuttuja
a
tai (OR) muuttujab
on tosi (erisuuri kuin nolla), myös molemmat voivat olla tosia.Code Block if (a || b) { printf("muuttuja a tai muuttuja b on tosi (erisuuri kuin nolla), myös molemmat voivat olla tosia"); } else
...
...
{ printf("molemmat muuttujat ovat epätosia"); }
- muuttujat a on suurempi tai yhtäsuuri kuin b ja c on pienempi kuin d.
Code Block if (a>=b && c<d) { printf("muuttujat a on suurempi tai yhtäsuuri kuin b"); } else { printf("muuttujat a on suurempi tai yhtäsuuri kuin b ja c on pienempi kuin d"); }
- muuttuja
a
ja (AND) muuttujab
on tosi.Code Block if (a && b) { printf("muuttuja a ja muuttuja b on tosi (erisuuri kuin nolla)"); } else {
...
printf("molemmat muuttujat ovat epätosia"); }
- muuttujat a on suurempi tai yhtäsuuri kuin b tai c on pienempi kuin d.
muuttujat a on suurempi tai yhtäsuuri kuin b ja c on pienempi kuin d.Code Block if (a>=b || c<d) printf("muuttujat a on suurempi tai yhtäsuuri kuin b"); else printf("muuttujat a on suurempi tai yhtäsuuri kuin b tai c on pienempi kuin d");
Useampia ehtoja voidaan myös 'ketjuttaa' samaan if-ehtoon loogisten operaattoreiden avulla. Ehtojen lukumäärällä ei ole ylärajaa?
Code Block |
---|
if ((a>=b0 && a<=100) || (a>=200 && c<da<=300)) { printf("muuttujatmuuttuja a on suurempi lukualueella 0...100 tai yhtäsuuri kuin b200...300"); } else { printf("muuttujatmuuttuja a onei suurempi tai yhtäsuuri kuin b ja c on pienempi kuin dole lukualueella"); } |