hey!!stie cineva ce inseamna aceasta comanda dar explicata intr un mod cat mai simplu ,ca sa pot sa inteleg !! va rog.....urmeza sa dau un examen la info si as avea nevoie de ajutor !! Multumesc !
Răspunsuri la întrebare
Instrucțiunea repetitivă ,,for" se foloseşte când vrei să execuți aceleaşi operații asupra unor valori diferite, cunoscând numărul de repetări.
În cazul nostru, variabila ce se va ,,plimba" prin instrucțiune este i, ce pleacă de la 2 (ştim din i=2) şi se opreşte la valoarea dinaintea lui floor(sqrt(n)), adică floor(sqrt(n)-1), deoarece este un ,,mai mic strict" (id est <); ea va fi incrementată cu unu la fiecare pas (i++, adică i=i+1).
Legat de funcțiile ce apar acolo, avem:
sqrt = square root = rădăcina pătrată a numărului
floor = cea mai mare valoare mai mică sau egală cu numărul
Exemple concrete:
sqrt(9) este 3
sqrt(3) este 1,73...
floor(4.6) este 4
floor(-4.6) este -5
Prin urmare, dacă n este, să zicem,
— 16:
for (i=2; i<floor(sqrt(16)); i++)
echivalent cu
for (i=2; i<floor(4); i++)
echivalent cu
floor (i=2; i<4; i++)
şi i va fi 2, iar apoi 3 (dacă era mai mic sau egal, ar fi fost şi 4).
— 17:
o să fie for (i=2; i<floor(sqrt(17)); i++)
echivalent cu
for (i=2; i< floor(4,...); i++)
echivalent cu
for (i=2; i<4; i++)
şi vom avea aceeaşi execuție ca la primul exemplu.
Dacă ai nelămuriri, nu ezita să le adresezi.