Instructiunile conditionale determina programele sa testeze diferite conditii si in functie de acestea sa decida executia anumitor comenzi.
Aceste instructiuni conditionale sunt:

1. Instructiunea "if"

"if()" (daca) este cea mai simpla instructiune conditionala. Forma generala a acestei instructiuni este urmatoarea :

- Unde 'conditie' poate fi orice expresie alcatuita cu operatori rationali, de egalitate si logici.
          Ex.:
if(8 > 7) {
  trace('Conditie Adevarata');
}
- Daca rezultatul conditiei este TRUE se executa codul dintre acolade, in caz contrar, cand conditia returneaza FALSE, se trece peste acest cod.

2. Instructiunea "if ... else"

In exemplu anterior am vazut ca daca este adevarata conditia din parantezele instructiunii "if()", se executa codul dintre acoladele ei, iar in caz contrar nu se intampla nimic.
Folosind combinatia "if() ... else" (daca ... altfel) putem stabili comenzi care sa fie executate si cand conditia instructiunii "if()" este FALSE.
Forma generala a instructiuni "if() ... else" este urmatoarea :

- Unde 'conditie' poate fi orice expresie logica.
Daca rezultatul conditiei este TRUE se executa codul dintre primele acolade, care apartin de "if()", in caz contrar, cand conditia returneaza FALSE, sunt executate comenzile din acoladele de la "else".
De exemplu:
var ziua:String = 'o_zi';

if(ziua=='duminica') {
  trace('Stau acasa');
}
else {
  trace('Merg la lucru');
}
- Daca "ziua" are valoarea "duminica" va afisa in Output sirul "Stau acasa", altfel, se executa codul din acoladele lui "else" (afiseaza in Output "Merg la lucru").

3 Formula "else if()"

Cu "if() ... else" sunt posibile executia doar a doua optiuni, cea de la "if()" sau de la "else". Dar sunt stuatii in care avem mai multe optiuni, in acest caz se foloseste formula "else if()" (altfel daca).
Cu aceasta se pot crea si alte optiuni suplimentare intre cele doua. Sintaxa generala pentru folosirea acestei formule este:

- Pot fi adaugate oricate optiuni "else if".
De exemplu, in urmatorul cod,
var ziua:String = 'o_zi';

if(ziua=='duminica') {
  trace('Stau acasa');
}
else if(ziua=='luni') {
  trace('Merg la cursuri');
}
else if(ziua=='sambata') {
  trace('Merg la bunici');
}
else {
  trace('Merg la lucru');
}
- In functie de valoarea lui "ziua", va fi afisat in Output sirul din optiunea cu "trace()" corespunzaoare. Daca "ziua" nu are vreuna din valorile: duminica, luni, sambata, se executa codul din acoladele lui "else".

4. Instructiunea switch

Aceasta instructiune e folosita pentru a compara o valoare cu altele dintr-o lista, si in functie de acea valoare se executa codul asociat ei in lista "switch".
Sintaxa generala a instructiuni "switch" este urmatoarea.

- Prima data este evaluata expresia scrisa intre paranteze rotunde, la "switch()", apoi valoarea expresiei este comparata pe rand cu fiecare valoare determinata de "case". Daca se gaseste o identitate se executa codul asociat acelui "case". Apoi se iese din instructiunea "switch".
Daca, parcurgand fiecare "case", nu se gaseste o egalitate, se executa codul de la "default".
Prin folosirea lui "break" se opreste parcurgerea corpului instructiunii atunci cand s-a gasit o valoare egala cu 'expresie' si se iese din "switch".
- Instructiunea "switch" poate inlocui un sir de conditii cu "else if".
De exemplu:
var ziua:String = 'o_zi';

switch (ziua) {
  case 'duminica':
    trace('Stau acasa');
    break;
  case 'luni':
    trace('Merg la cursuri');
    break;
  case 'sambata':
    trace('Merg la bunici');
    break;
  default:
    trace('Merg la lucru');
}

5. Operatori logici si instructiunile conditionale

Operatorii logici sunt "&&" si "||". Rolul lor este asemanator cu cel al operatorilor relationali si de egalitate, in sensul ca si acestia compara valoarea a doi operanzi.
Operatorii logici compara operatii, expresii de cod, iar rezultatul lor este unul din valorile TRUE (Adevarat) sau FALSE (Fals).

De exemplu: Datorita rezultatului True sau False pe care-l dau acesti operatori logici, ei sunt folositi cu instructiuni conditionale, contribuind la efectuarea unor conditii mai complexe in parantezele instructiunii "if()" si "else if()".
Iata un exemplu:
var ziua:String = 'luni';
var nr:Number = 8;

if(ziua=='duminica' && nr==8) {
  trace('Stau acasa');
}
else if(ziua=='luni' || nr>9) {
  trace('Merg la cursuri');
}
else {
  trace('Merg la lucru');
}
- In Output va fi afisat "Merg la cursuri" deoarece conditia "(ziua=='duminica' && nr==8)" returneaza False [nu sunt amandoua expresii adevarate], iar "(ziua=='luni' || nr>9)" returneaza True [cu "||" e suficient una sa fie adevarata].

6. Operatorul conditional "? :"

O alta metoda de a executa un cod in functie daca o expresie este Adevarata sau Falsa e operatorul "? :" (intrebare doua puncte).
Acest operator conditional, desi arata diferit de ceilalti, este o forma prescurtata a instructiunii "if() else". Sintaxa generala de folosire a lui este:

- Operatorul conditional evalueaza expresia conditionala. Daca expresia are valoarea TRUE, operatorul conditional returneaza valoarea de la "daca-TRUE"; in caz contrar, returneaza valoarea de la "daca-FALSE".
Iata un exemplu:
var a:Number = 9.3;
var b:int = 8;

// Se defineste "c", in functie de "a>b"
var c:String = (a > b) ? 'valoare pt. True' : 'val. pt. False'
trace(c);        // valoare pt. True

/* Echivalent cu:
     if(a>b) { var c:String = 'valoare pt. True'; }
	 else { var c:String = 'val. pt. False'; }
*/
- In acest cod se defineste o variabila "c" in functie de relatia dintre alte doua variabile (a si b). Daca "a" este mai mare decat "b", "c" va primi valoarea "valoare pt. True", in caz contrar, "c" va avea "val. pt. False".
- Pentru verificare, functia "trace(c)" afiseaza in Output valoarea pe care "c" a primit-o. Comentariu care este dupa "trace(c)" arata asemanarea cu "if() else".

Pe langa atribuirea unei valori in functie de rezultatul unei expresii, acest operator conditional poate fi utilizat in aceeasi forma si la determinarea apelarii unei anumite functii, dupa rezultatul unei expresii logice. Formula este: - "dacaTrue()" si "dacaFalse()" pot fi considerate doua functii.
Exemplu:
(var1 == var2) ? oFunctie() : altaFunctie();
- Daca "var1" este egal cu "var2", va fi apelata "oFunctie()", in caz contrar este executata "altaFunctie()".

Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Care tag e folosit pentru a adauga liste cu definitii in element <dl>?
<dt> <dd> <li>
<dl>
 <dt>HTML</dt>
  <dd> - Hyper Text Markup Language</dd>
  <dd> - Limbaj de cod pentru pagini web</dd>
</dl>
Care proprietate CSS poate sa ascunda un element in pagina, lasand spatiu gol in locul lui?
display position visibility
#id {
  visibility: hidden;
}
Indicati evenimentul declansat cand se apasa clic pe un obiect in pagina.
onclick onmouseover onfocus
document.getElementById("id").onclick = function(){
  alert("http://www.MarPlo.net/");
}
Indicati variabila PHP ce contine datele din $_GET, $_POST si $_COOKIE.
$_SESSION $_GET $_REQUEST
if(isset($_REQUEST["id"])) {
  echo $_REQUEST["id"];
}
Care din urmatoarele cuvinte reprezinta un Verb?
lighting believe path
I believe in my path.
- Eu cred in calea mea.
Care din urmatoarele cuvinte reprezinta un Verb?
creer camino iluminaciĆ³n
creer = a crede; camino = cale /drum; iluminaciĆ³n = iluminare
Instructiuni conditionale if, else, switch

Last accessed pages

  1. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (56119)
  2. Verbe modale - Modal verbs - CAN, COULD, MAY, MIGHT, MUST (27406)
  3. Prezentul simplu si continuu - Present Tense Simple and Continuous (52768)
  4. Exercitii engleza - English Tests and exercises - Grammar (27667)
  5. Verbele in limba engleza - Verbs (16976)

Popular pages this month

  1. Prezentul simplu si continuu - Present Tense Simple and Continuous (3734)
  2. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (3474)
  3. Gramatica limbii engleze - Prezentare Generala (2830)
  4. Prezent perfect si Prezent perfect continuu - Present perfect and Continuous (2411)
  5. Trecutul simplu si continuu - Past Tense Simple and Continuous (2027)