Aceasta instructiune are doua variante: WHILE simplu si DO ... WHILE.

1. While

Instructiunea while (denumita si "bucla while") este asemanatoare cu "for()", la fel ca aceasta, si while() repeta executia unui cod (din corpul buclei) cat timp o expresie este adevarata.
Diferenta fata de "for()" este aceea ca "while()" are un singur parametru intre parantezele rotunde. Sintaxa generala este:

- Codul dintre acolade va fi executat in continuu, pana "conditie" returneaza False sau este oprit intentionat.
Atentie, daca "conditie" ramane mereu True, repetarea executiei buclei se va face la infinit, pana cand eventual Flash va genera eroare si opreste tot scriptul. De aceea, in cadrul corpului buclei (intre acolade) se adauga in general o declaratie care modifica elementele de la "conditie".
Iata un exemplu de cod simplu cu "while()".
var total:int = 1;       // Se defineste o variabila de lucru

// Se defineste si o variabila care va fi folosita in "conditie"
// De asemenea, va avea si rol do contor, pt. controlul numarului de repetari
var i:int=0;

// Se executa o bucla "while()", care dubleaza mereu "total"
while(i<4)
{
  total *= 2;
  trace(total);
  i++;        // Incrementeaza variabila contor cu o unitate
}

// In Output afiseaza 2 4 8 16
- Pentru controlul numarului de repetari, se declara variabila 'i' dandu-i valoarea 0.
- Instructiunea "while" verifica conditia (aici "i<4") care este adevarata si permite executarea codului dintre acolade, care dubleaza valoarea lui "total", iar functia "trace(total)" afiseaza in Output valoarea lui, apoi se incrementeaza 'i' cu o unitate (i++), acum 'i' are valoarea 1.
- Instructiunea "while()" verifica din nou conditia (i<4) si fiindca este adevarata, se executa iar codul dintre acoladele ei, apoi se incrementeaza valoarea lui 'i', ..., si tot asa pana cand 'i' va ajunge la valoarea 4 care la verificarea conditiei (i<4) returneaza FALSE, moment in care se termina executia instructiunii "while()".
- Ca rezultat, in Output afiseaza 2 4 8 16.

2. Do ... While

Asemanatoare in mare parte cu instructiunea "while", instructiunea "do ... while" intai executa codul din corpul instructiunii (care e dupa DO), apoi se verifica conditia. Procesul se repeta pana cant conditia returnbeaza FALSE.
Diferenta fata de "while()" simplu este faptul ca la "do ... while" corpul functiei este executat cel putin o data, chiar daca conditia nu este adevarata.
Forma generala a acestei instructiuni este:

Iata un exemplu:
var total:int = 1;       // Se defineste o variabila de lucru

// Se defineste si o variabila care va fi folosita in "conditie"
// De asemenea, va avea si rol do contor, pt. controlul numarului de repetari
var i:int = 1;

// Se executa o bucla "do ... while", care dubleaza mereu "total"
do
{
  total *= 2;
  trace('total este '+ total);
  i++;        // Incrementeaza variabila contor cu o unitate
} while(i<0);

// In Output afiseaza total este 2
- Aceasta functie afiseaza in Output "total este 2".
- Observati ca desi conditia (x<0) este de la inceput Falsa ('i' fiind definit cu valoarea 1), codul dintre acolade este totusi executat o singura data.

- Fisierele FLA cu exemplele din aceasta lectie pot fi descarcate de la:
  1. While
  2. Do ... While

Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Care meta tag se foloseste pentru scurta descriere a paginii?
<meta content="..."> <meta description="..."> <meta http-equiv="...">
<meta name="description" content="70-160 caractere ce descriu continutul paginii" />
Ce proprietate CSS opreste efectul dat de "float"?
clear text-align position
#some_id {
  clear: both;
}
Clic pe metoda ce creaza un array cu toate elementele din pagina cu un anumit nume de tag.
getElementsByName() getElementById() getElementsByTagName()
var divs = document.getElementsByTagName("div");
var nr_divs = divs.length;
alert(nr_divs);
Indicati functia PHP ce returneaza numarul de elemente dintr-un array.
is_[) count() strlen()
$arr =[7, 8, "abc", 10);
$nri = count($arr);
echo $nri;        // 4
Indicati adverbul corespunzator adjectivului din paranteza in propozitia: "I live (happy)".
happly happily hapily
I live happily.
- Traiesc fericit (in mod fericit).
Indicati adverbul corespunzator adjectivului din paranteza in propozitia: "Vivo (feliz)".
felizamente felizmente felices
Vivo felizmente.
- Traiesc fericit (cu fericire).
Instructiuni repetitive - WHILE

Last accessed pages

  1. Prezentul simplu - Exercitii si teste incepatori (19250)
  2. jQuery - Elemente de baza (693)
  3. Trecutul simplu si continuu - Past Tense Simple and Continuous (36056)
  4. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (55432)
  5. Data si Ora in engleza - Date and Time (8449)

Popular pages this month

  1. Prezentul simplu si continuu - Present Tense Simple and Continuous (3396)
  2. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (2787)
  3. Gramatica limbii engleze - Prezentare Generala (2520)
  4. Prezent perfect si Prezent perfect continuu - Present perfect and Continuous (2182)
  5. Trecutul simplu si continuu - Past Tense Simple and Continuous (1796)