Flash-ActionScript - 4. lekce
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Flash-ActionScript - 4. lekceFlash-ActionScript - 4. lekce

 

Flash-ActionScript - 4. lekce

Google       Google       8. 9. 2005       21 060×

Dnes si zopakujeme znalosti z minulých lekcí a seznámíme se s podmínkami...

V minulé lekci jsme zjistili, že můžeme událostmi ovlivňovat, kdy se náš kód ActionScriptu spustí. To dodává interaktivitu, ale v některých případech to nestačí.

Podmínky

Podmínka je příkaz, pomocí něhož lze vyhodnotit výraz a na základě toho vykonat další akce, které se ohraničují složenými závorkami. Výraz v programování je podobný výrazu v matematice a může být pouze pravdivý (true), nebo nepravdivý (false) - to jsou hodnoty typu Boolean (viz předešlá lekce). Pokud je pravdivý, vykonají se příkazy v následujícím bloku kódu (ohraničeném složenými závorkami). Obecný kód podmíny je tento:

if(výraz){
    příkazy
}
První příkaz je již zmiňované if, které značí podmínku, v závorce za ním je výraz, pokud je pravdivý vykoná se následující akce (příkazy).

Výrazy

Ve výraze můžeme porovnávat dvě čísla:
6 > 1
5 < 2
Jak jistě víte první výraz je pravdivý - 6 je větší než 1, ale druhý ne. K porovnávání nám slouží operátory porovnání, mezi ně také patří větší než (>) a menší než (<) z příkladu. V tabulce jsou uvedeny všechny základní operátory porovnávání:
< Menší než
<= Menší nebo rovno
> Větší než
>= Větší nebo rovno
== Rovná se
!= Nerovná se

Pro lepší pochopení podmínek je dobré si uvědomit, co se vlastně děje uvnitř. Když napíšete 6>2, co se stane? Program vyhodnotí zda je to pravda nebo není. Pokud je výraz pravdivý, místo výrazu dosadí hodnotu true, jestliže je hodnotu false - to si můžete ověřit tímto:

trace(6>2);		//vytiskne true
trace(6<2);		//vytiskne false
Podmínky jenom s porovnáváním čísel nekončí. Lze porovnávat také například řetězce, u kterých se počítá číselná hodnota znaků. Větší hodnotu mají znaky, které jsou později v abecedě.

trace("ABC" < "DEF" );	//true
trace("To stejné" == "To stejné")	//true
trace("6" == 6)		//true

else

Příkazem else můžeme určit akci, která se vykoná, pokud podmínka pravdivá není.

if(5>10){
    trace("Pět je větší než deset!")
}else{
    trace("To není pravda")
}
V tomto případě program první akci přeskočí, protože výraz není pravdivý a vykoná kód za else - vytiskne text "To není pravda".

Proměnné

Podmínky s čísly jsou ale docela zbytečné, protože pokaždé dopadnou stejně, jsou užitečné až tehdy, když použijeme proměnné:

a = 6;
b = 5;
if(a>b){
    trace("a je větší než b");	//Vykoná se tato možnost
}else{
    trace("a je menší nebo rovno b"); 	
}
Vnořené podmínky Podmínky mohou obsahovat další podmínky, říká se tomu větvení. Nejlépe si to vysvětlíme na tomto příkladě, který je rozšířením toho předešlého:

a = 6;
b = 6;
if (a>b){
    trace("a je větší než b");	
}else{
    if (a<b){
        trace("a je menší než b");
    }else{
        trace("a se rovná b");	//Vykoná se tato možnost
    }
}
Tento příklad je to trochu složitější. Nejprve se porovná, jestli je a>b, pokud ne, program skočí na 6. řádku, zbývají 2 možnosti - a<b a a==b, další podmínka porovná první možnost a pokud není pravdivá, zbývá poslední varianta a program skočí na 9. řádku.
Ve vnořených podmínkách se pro zjednodušení může používat příkaz else if :

if (a>b) {
    trace("a je větší než b");
} else if (a<b) {
    trace("a je menší než b");
} else {
    trace("a se rovná b"); 	//Vykoná se tato možnost
}

Logické operátory

Logické operátory se používají v podmínkách, pokud chceme použít ve výrazech logickéch vztahy. Tady jsou:
OperátorSlovemPopis
&& a zároveň Logické AND: Vrací true, pouze pokud je levá i pravá strana pravdivá.
|| nebo Logické OR: Vrací true, pokud je alespoň jedna strana pravdivá.
!Výraz  Logické NOT: Vrací logický opak - boolean.

Co to znamená v praxi? Pojďme si ukázat několik příkladů.

x = 5;
y = 8;
//pravdivá podmínka, příkazy v složených závorkách se vykonají.
if(x>3 && y>6){ 	
...
}

//nepravdivá podmínka - jedna strana není pravdivá,
// vykonají se příkazy v else
if(x>3 && y>9){ 	 
...
}else{
...
}
Operátor ! obrátí návratovou hodnotu (jak jsem psal výše - true, nebo false).

x = 1;
if (!(x == 1)) {	
...		
}
//Normálně by se podmínka vyhodnotila kladně, 
//ale protože je před výrazem !, výsledek se převrátí, 
//takže místo true vrátí false => výraz je nepravdivý.
POZOR: pokud byste napsali !x == 1, nebude to fungovat protože ! má větší prioritu než ==.
Můžeme samozřejmě použít i více operátorů najednou, taktéž lze použít závorky (platí to samé co u aritmetických operací - závorky mají přednost před operátory):

a = 1;
b = 2;
c = 3;
if(a==1 &&  b==2 && (c==2 || c==3)){	//pravdivá podmínka
...
}
Tato podmínka je pravdivá, pokud se a == 1 a zároveň b==2 a zároveň se c==2 nebo se c==3.

Ukázka

Tady je malá ukázka pro ilustraci, ve scéně se nachází input text s proměnnou vek, dynamic text s proměnnou odpoved a tlačítko, které má tento kód:

on(release){	    
    if(_root.vek >= 18){	    
        _root.odpoved = "Přístup povolen.";
    }else{
        _root.odpoved = "Přístup odepřen.";		
    }
}


Po dnešní lekci byste měli vědět, jak tento jednoduchý příklad funguje.
Úkol:
Vytvořte program, ve kterém uživatel zadá do 2 input textů 2 čísla, 
do jiného dynamic textu se vypíše větší hodnota z obou čísel 
a do 2. dynamic textu se jako opakování vypíše součin (násobení) obou čísel.
Hodně zdaru při plnění úkolu.

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

Hlasování bylo ukončeno    
0 hlasů
Google
Mezi největší záliby patří programování v Pythonu, PHP či Flashi - ActionScriptu.

Nové články

Obrázek ke článku Stavebnice umělé inteligence 1

Stavebnice umělé inteligence 1

Článek popisuje první část stavebnice umělé inteligence. Obsahuje lineární a plošnou optimalizaci.  Demo verzi je možné použít pro výuku i zájmovou činnost. Profesionální verze je určena pro vývojáře, kteří chtějí integrovat popsané moduly do svých systémů.

Obrázek ke článku Hybridní inteligentní systémy 2

Hybridní inteligentní systémy 2

V technické praxi využíváme často kombinaci různých disciplín umělé inteligence a klasických výpočtů. Takovým systémům říkáme hybridní systémy. V tomto článku se zmíním o určitém typu hybridního systému, který je užitečný ve velmi složitých výrobních procesech.

Obrázek ke článku Jak vést kvalitně tým v IT oboru: Naprogramujte si ty správné manažerské kvality

Jak vést kvalitně tým v IT oboru: Naprogramujte si ty správné manažerské kvality

Vedení týmu v oboru informačních technologií se nijak zvlášť neliší od jiných oborů. Přesto však IT manažeři čelí výzvě v podobě velmi rychlého rozvoje a tím i rostoucími nároky na své lidi. Udržet pozornost, motivaci a efektivitu týmu vyžaduje opravdu pevné manažerské základy a zároveň otevřenost a flexibilitu pro stále nové výzvy.

Obrázek ke článku Síla týmů se na home office může vytrácet. Odborníci radí, jak z pracovních omezení vytěžit maximum

Síla týmů se na home office může vytrácet. Odborníci radí, jak z pracovních omezení vytěžit maximum

Za poslední rok se podoba práce zaměstnanců změnila k nepoznání. Především plošné zavedení home office, které mělo být zpočátku jen dočasným opatřením, je pro mnohé už více než rok každodenní realitou. Co ale dělat, když se při práci z domova ztrácí motivace, zaměstnanci přestávají komunikovat a dříve fungující tým se rozpadá na skupinu solitérů? Odborníci na personalistiku dali dohromady několik rad, jak udržet tým v chodu, i když pracovní podmínky nejsou ideální.

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý