IoT: Vlastní metoda
Z MiS
(Rozdíly mezi verzemi)
m (Stránka Letní IoT: Vlastní metoda přemístěna na stránku IoT: Vlastní metoda: přesun) |
m |
||
(Není zobrazeno 9 mezilehlých verzí od 1 uživatele.) | |||
Řádka 1: | Řádka 1: | ||
[[Category:VSE]][[Category:Informatika]][[Category:Letní IoT]][[Category:IoT]][[Category:Učebnice IoT]] | [[Category:VSE]][[Category:Informatika]][[Category:Letní IoT]][[Category:IoT]][[Category:Učebnice IoT]] | ||
+ | == Úvod == | ||
Již známe 2 metody ''void setup()'' a ''void loop()'' | Již známe 2 metody ''void setup()'' a ''void loop()'' | ||
− | + | Teď se naučíme vytvořit si vlastní metodu. | |
− | <div class="Poznamka"> Metoda se skládá z návratového typu, názvu metody a v závorkách má parametry. </div> | + | <div class="Poznamka"> |
+ | Metoda se skládá z návratového typu, názvu metody a v závorkách má parametry. | ||
+ | </div> | ||
+ | |||
+ | <div class="Syntaxe"> | ||
+ | void vypis() | ||
+ | |||
+ | int secti() | ||
+ | |||
+ | boolean rozhodni() | ||
+ | </div> | ||
== Metoda bez návratového typu == | == Metoda bez návratového typu == | ||
Řádka 15: | Řádka 26: | ||
digitalWrite(ledka, HIGH); | digitalWrite(ledka, HIGH); | ||
− | delay(500) | + | delay(500); |
digitalWrite(ledka, LOW); | digitalWrite(ledka, LOW); | ||
} | } | ||
Řádka 27: | Řádka 38: | ||
void blikni(int pocet) { | void blikni(int pocet) { | ||
− | for(int i = 0 | + | for(int i = 0; i < pocet; i++) |
{ | { | ||
digitalWrite(ledka, HIGH); | digitalWrite(ledka, HIGH); | ||
− | delay(500) | + | delay(500); |
digitalWrite(ledka, LOW); | digitalWrite(ledka, LOW); | ||
delay(500); | delay(500); | ||
Řádka 36: | Řádka 47: | ||
} | } | ||
− | Co udělá tento příkaz? ( | + | Co udělá tento příkaz? (vyzkoušej!) |
blikni(5); | blikni(5); | ||
<div class="Priklad"> [https://github.com/CestmirKolarik/IoTucebnice/blob/main/ArduinoIDE/vlastni_metoda/vlastni_metoda.ino příklad 1] [https://github.com/CestmirKolarik/IoTucebnice/blob/main/ArduinoIDE/vlastni_metoda2/vlastni_metoda2.ino příklad 2] </div> | <div class="Priklad"> [https://github.com/CestmirKolarik/IoTucebnice/blob/main/ArduinoIDE/vlastni_metoda/vlastni_metoda.ino příklad 1] [https://github.com/CestmirKolarik/IoTucebnice/blob/main/ArduinoIDE/vlastni_metoda2/vlastni_metoda2.ino příklad 2] </div> | ||
+ | === Samostatný úkol === | ||
+ | #Vytvoř metodu, co na 3 s rozsvítí ledku. | ||
+ | #Vytvoř metodu, co 10× vypíše "blik". | ||
+ | #Vytvoř metodu, co 3× vypíše zadané slovo a zabliká při tom. | ||
== Metoda s návratovým typem == | == Metoda s návratovým typem == | ||
− | Jak už víme, máme 3 návratové typy | + | Jak už víme, máme 3 základní návratové typy — int, String a boolean. |
Teď si ukážeme metodu, co nám vrátí datový typ int (číslo) | Teď si ukážeme metodu, co nám vrátí datový typ int (číslo) | ||
Řádka 77: | Řádka 92: | ||
<div class="Priklad"> [https://github.com/CestmirKolarik/IoTucebnice/blob/main/ArduinoIDE/vlastni_metoda_navrat/vlastni_metoda_navrat.ino příklad] </div> | <div class="Priklad"> [https://github.com/CestmirKolarik/IoTucebnice/blob/main/ArduinoIDE/vlastni_metoda_navrat/vlastni_metoda_navrat.ino příklad] </div> | ||
+ | |||
+ | === Samostatný úkol === | ||
+ | #Vytvoř metodu, co vrátí součin zadaných čísel. | ||
+ | #Vytvoř metodu, co bude mít dva vstupy (int) a vrátí větší číslo. | ||
+ | #Vytvoř metodu, co bude mít vstup boolean a vypíše PRAVDA či LEŽ. |
Aktuální verze z 11. 4. 2021, 18:00
Obsah |
Úvod
Již známe 2 metody void setup() a void loop()
Teď se naučíme vytvořit si vlastní metodu.
Metoda se skládá z návratového typu, názvu metody a v závorkách má parametry.
void vypis()
int secti()
boolean rozhodni()
Metoda bez návratového typu
My nepotřebujeme, aby nám metoda něco vracela, tak použijeme void
void blikni() { digitalWrite(ledka, HIGH); delay(500); digitalWrite(ledka, LOW); }
a teď stačí napsat
blikni();
a provede se to, co je v té metodě... paráda, co? :D
Metodě můžeme dát parametr - počet bliknutí třeba
void blikni(int pocet) { for(int i = 0; i < pocet; i++) { digitalWrite(ledka, HIGH); delay(500); digitalWrite(ledka, LOW); delay(500); } }
Co udělá tento příkaz? (vyzkoušej!)
blikni(5);
Samostatný úkol
- Vytvoř metodu, co na 3 s rozsvítí ledku.
- Vytvoř metodu, co 10× vypíše "blik".
- Vytvoř metodu, co 3× vypíše zadané slovo a zabliká při tom.
Metoda s návratovým typem
Jak už víme, máme 3 základní návratové typy — int, String a boolean.
Teď si ukážeme metodu, co nám vrátí datový typ int (číslo)
int vratCislo() { return 5; }
Tato metoda nám vrátí číslo 5 - tj. vrátí nám to, co je za return
int vratSoucet(int cislo1, intcislo2) { return cislo1 + cislo2; }
Tato metoda nám vrátí součet čísel cislo1 a cislo2
boolean jeTeplo() { if(teplota>20) { return true; } else { return false; } }
Tato metoda nám vrátí logický stav na základě podmínky - může mít využití třeba u projektů s čidlem teploty.
Samostatný úkol
- Vytvoř metodu, co vrátí součin zadaných čísel.
- Vytvoř metodu, co bude mít dva vstupy (int) a vrátí větší číslo.
- Vytvoř metodu, co bude mít vstup boolean a vypíše PRAVDA či LEŽ.