IoT: Vlastní metoda
Z MiS
				
				
				(Rozdíly mezi verzemi)
				
																
				
				
								
				| m (GitHub odkazy) | m | ||
| (Není zobrazeno 11 mezilehlých verzí od 1 uživatele.) | |||
| Řádka 1: | Řádka 1: | ||
| − | [[Category:VSE]][[Category:Informatika]][[Category:Letní 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Ž.
