Arduino a podmienky, If, Else, Else if, operátory, relačné, logické, switch :)

Vytvorené: 13. 12. 2020 Tlačiť

Dalo by sa povedať, že podmienky sú vlastne možnosť reakcie na vzniknuté situácie.

Zjednodušene – keď sa niečo stane, budeme na to musieť nejako reagovať. Napríklad: Zazvoní zvonček pri dverách. Naša reakcia môže byť, že ideme otvoriť alebo ho ignorujeme.

Takéto rozhodnutia majú veľa spoločného s vetvením programu. Normálne program začne prvým príkazom a potom vykonáva jeden za druhým. Podmienky však umožnia preskočiť na iné miesto programu, alebo vykonať iný kód, v závislosti od aktuálnej situácie. Veľmi často túto situáciu povedzme stav programu, ovplyvňuje používateľ. Avšak môže na to mať vplyv aj vrátená hodnota z nejakéj funkcie (výpočtu) alebo z pripojeného zariadenia. Napríklad senzor pohybu zaznamená aktivitu a poskytne vstup základnej doske. Podľa skutočného stavu sa môžeme rozhodnúť, či spustiť poplach a volať políciu, alebo sa rozhodnúť, že je všade pokoj a pohoda.

Je veľa situácií, v ktorých sa hodí podmienku použiť. Dokonca by sme povedali, že sa bez tejto zákadnej znalosti nezaobíde ani ten najlepší programátor. To je dôvod, prečo si vysvetlíme, ako s podmienkami pracovať a hlavne poznať ich funkčnosť. Pre lepšiu predstavu si všetko ukážeme na jednotlivých príkladoch.

 

Zápis podmienok

Možno povedať, že všetky podmienky majú tvar: Pokiaľ niečo, tak vykonáme toto. Inak urobíme tamto. Teraz si to však musíme rozobrať detailnejšie.

 

Kľúčové slovo if

Ak chceme zapísať podmienku, tak nám na to poslúži kľúčové slovo if (písané malými písmenami). Tento výraz znamená v preklade „Keď, ak...“, čo nám napovedá, ako tento typ podmienky funguje. Slovo if nám hovorí, že pokiaľ je podmienka splnená, prebehne kus kódu, ktorý sa nachádza v bloku programu pod konkrétnou podmienkou.

 

Mali by ste vedieť:

Blok programu v C, C++ a teda aj Wiring je všetko, čo obsahujú zložené zátvorky {...}.

 

Skúsme si to pre lepšiu predstavu ukázať na príklade:

 
Ukážka programu s podmienkou if

 

Pokiaľ by sme podmienku obrátili:

if (1 > 2) {...}, celý blok programu v zložených zátvorkách sa preskočí a pokračuje až za ním.

Teda vieme, že if môžeme použiť v prípade, keď treba o niečom rozhodnúť - niečo sa stalo a reagujeme. Môžeme ho tiež použiť, keď sa niečo nestane.

Dobrým príkladom môže byť, keď program vyzve používateľa, aby zadal kladné číslo, ktoré je potom porovnávané s číslom iným. Keď podmienku užívateľ nesplní a zadá napríklad číslo záporné, môžeme podmienku if použiť na to, aby užívateľovi „vynadala“ za jeho chybu a nám sa tak nezrútil celý program.

 

Kľúčové slovo else

Keď sa zamyslíme nad spracovaním podmienky s príkazom if, zistíme, že niečo chýba. Taká odpoveď na otázku: Čo keď to prvé je nesplnené?

Jazyk Arduina ponúka riešenie aj tejto otázky a tým je kľúčové slovo else (môžeme ho preložiť ako „inak“). Prevedené do programátorskej reči:

Programová konštrukcia podmienky else

 

Pre lepšiu predstavu fungovania si ukážeme praktický príklad a trošku upravíme program, ktorý sme si ukazovali vyššie:

Vylepšená programová konštrukcia podmienky else

 

Viac volieb else if

Aby sme mohli vytvoriť viac možností jednotlivých podmienok nám poslúži výraz else if. Takto môžeme nastaviť neobmedzene možností a tým sa pripraviť na rôzne scenáre, ktoré by mohli v priebehu programu nastať. Trochu upravíme náš predošlý program a ukážeme si, ako by sme mohli implementovať else if.

Programová konštrukcia podmienky else if

 

Operátory využívané pri podmienkach

Tu by som mohol rozobrať mnoho matematických teórií, ale nám postačí, že jednoduchá znalosť. Na každej množine čísel je definovaná relácia. 

Teda porovnanie. Programátori tohto faktu často využívajú a v podmienkach najčastejšie. 

Každý (bežný) programovací jazyk má k dispozícii takzvané relačné operátory, ktoré sú neoddeliteľnou súčasťou if výrazu.

Jeden relačný operátor (porovnanie: ==) sme využili náš kód vyššie. Predkladáme tu tabuľku s ďalšími príkladmi relačných operátorov, ktoré sa pri podmienkach tiež často používajú:

 

 

Mali by ste vedieť:

Je potrebné odlišovať zápis x==y, kde porovnávame dve hodnoty a zápis x = y, kde hodnotu priraďujeme!

 

Podmienky a logické operátory

Vieme ako na to, keď je podmienka jedna, ale čo robiť v prípade, keď chceme, aby platilo viac podmienok naraz?

Aj pre túto situáciu tu existuje riešenie. Poslúži nám na to operátor &&, ktorý v slovenčine znamená „súčasne“ a ||, jeho význam je „alebo“. V anglickom jazyku AND a OR.

 

Mali by ste vedieť:

Klávesové skratky na napísanie logických operátorov: && = Ctrl + Alt + C, || = Ctrl + Alt + W. 

 

Kľúčové slovo - switch

Ak máme podmienok viac, chceme začať nejakou voľbou a pri tom si udržať kód prehľadný, môžeme použiť sekvenciu switch. Ide o istú alternatívu k else if, ktorá je viac prehľadná. Funkcionalitou je switch dosť podobný else if.

Ukážeme si jednoduché využitie a celkový zápis switch:

Programová konštrukcia switch

 

Mali by ste vedieť:

Každý blok switch ide nahradiť blokom else if, záleží na vašej preferencii a na situačnej prehľadnosti programu.

Zdroje
Prevzaté a upravené z: 
• https://www.itnetwork.sk/hardver-pc/arduino/programovaci-jazyk/podmienky-a-ich-pouzitie.
Hodnotenie užitočnosti článku:


    Umela inteligencia Novy narodopis Teoria poezie 3D-tlac Arduino Nove rekordy Prudove chranice Robotika Priemysel 4.0 Dejiny Slovenska do roku 1945 ang_znacky_fluidsim LOGOSoftComfort Novinky Historia elektromobilov Free e-kurzy Elektrina pre ZŠ Druhá svetová vojna Cvičebnice O troch pilieroch EP je spat Prehlad Fyzika Prehlad Informatika Ako sa učiť a ako učiť Dejiny sveta

     

    · Simulácie z fyziky 
    · O Slovensku po slovensky 
    · Slovenské kroje
    · Kurz národopisu
    · Diela maliarov
    · Kontrolné otázky, Domáce úlohy, E-testy - Priemysel
    · Odborné obrázkové slovníky
    · Poradňa žiadaného učiteľa
    · Rýchlokurz Angličtiny
    . Rozprávky (v mp3)
    · PREHĽADY (PRIBUDLO, ČO JE NOVÉ?)
    Seriály:
    · História sveta (1÷6)
    · História Slovenska (1÷5)
    · História módy (1÷5).

                                       
    Členstvo na portáli
    Mám účet a chcem sa prihlásiť Prihlásiť sa
    Nemám účet, ale chcel by som ho získať Registrovať sa
    Poznámka pre autora

    Ak ste na stránke našli chybu, dajte nám vedieť


    Copyright © 2013-2024 Wesline, s.r.o. Všetky práva vyhradené. Mapa stránky ako tabuľka | Kurzy | Prehľady