Diskuze: Cykly For, While, Do-While
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.

Člen

Zobrazeno 6 zpráv z 6.
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.
V C sice nedělám, ale tipuju že v PHP to bude minimálně podobný:
Všechno to jsou cykly, tudíž opakují nějakou část programu, každý ale
je odišný v podmínce:
WHILE
while (i < ii)/* dokud i, je menší ii, proveď "smyčku". pokud i < ii už před cyklem, cyklus se přeskočí */
{
printf("cyklus");
i++; /*POkud nechceme skončit v nekonečné smyčce měli bysme přičítat k i*/
}
FOR
for (i = 0, a = 5; i < ii; i++, a++)/*inicializace promněnných, proměnné se oddělují čárkou; podmínka jako u while; co se má udělat po vykonání cyklu*/
{
printf("cyklus");
/*zde už nemusíme dávat i++ jelikož je to nahože ve FORu*/
}
DO-WHILE
do
{
printf("cyklus");
i++; /*POkud nechceme skončit v nekonečné smyčce měli bysme přičítat k i*/
}
while (i < ii)/* dokud i, je menší ii, proveď "smyčku". pokud i < ii už před cyklem, cyklus se udělá minimálně jednou, jelikož podmínka se kontroluje až na konci */
Nakonec bych ještě doporučil tohle na wiki:
//while ne wiki neni
http://cs.wikipedia.org/wiki/Cyklus_for
http://cs.wikipedia.org/…lus_do-while
Snad ti odpoveď stačí...
PS: zas připomínám že v C nedělám, ale v PHP, tak nevim jestli je to
syntaticky správně, tipnul jsem to
Máš to správne.
while - podmienka je na začiatku cyklu, teda ak nie je splnená, cyklus
neprebehne ani raz. (aby sa cyklus opakoval, musí sa meniť hodnota podmienky,
napr. i++;)
do while - podmienka je na konci cyklu, teda aj keď nie je splnená, cyklus
prebehne jeden krát. (aby sa cyklus opakoval, musí sa meniť hodnota
podmienky, napr. i++;)
for - je ako while, ale všetko v jednom, (nemusí sa zvlášť meniť hodnota podmienky, je už menená priamo vo výraze for( ; ; i++))
WHILE:
if(i < ii){
printf("cyklus");
i++;
goto WHILE;
}
//-----------------------------------------
DO_WHILE:
printf("cyklus");
i++;
if(i < ii)goto DO_WHILE;
//-----------------------------------------
{
int i = 0, a = 5;
FOR:
if(i < ii){
printf("cyklus");
i++, a++;
goto FOR;
}
}
Pokiaľ mám správne informácie, goto by sa nemalo používať, alebo len
vo vnorených cykloch.
Ale ty sa asi len bavíš.
Zobrazeno 6 zpráv z 6.