Szerző Téma: For és a while ciklus, akkor pontosan, hogy is müködik?  (Megtekintve 777 alkalommal)

For és a while ciklus, akkor pontosan, hogy is müködik?
« Dátum: 2013. július 10. - 15:36:27 »
0 Show voters
http://sampforum.hu/index.php?topic=4745.0
Olvastam krisk írását, és pár kérdés felmerült bennem. Azért írok ide, mert az a topics ott kihalt.
Van ez a for ciklus ami a példába szerepel:
 
for( i = 0; i < 20; i+1) { 
  printf(\"Csak a páratlan számok fognak látszódni 1-20-as sorozatban\");
}

 
\"Itt a léptetot átírtuk. 0-tól 20-ig megyünk, ám mivel mindig 1-gyel több lesz a szám, ezért csak a páratlan számokat jelenítjük meg.\"
Akkor ez azt akarja modani, hogy van nulla, a feltétel igaz lesz, és hozzá adunk egyet.
Úja megvizsgáljuk a feltételt, és megint hozzáadunk egyet. De akkor i változó értéke kettõ lesz.
Hogyan lesz itt \"csak\" páratlan számok? Ezt a részt egyszerûen nem értem mit akar mondani kifejezni.
 
while(5>9) { printf(\"Végtelen ciklus!\"); }

 
\"Ez az egyszerubb változat, a while statement. A while ciklus lényege, hogy addig fut, amíg a zárójelek közé rakott egyenlet nem lesz igaz. Ebben az esetben addig fut, míg öt nem lesz nagyobb, mint kilenc. Ez egy végtelen ciklus, sosem fog leállni.\"
Máshol úgy olvastam, hogy ez pont fordítva van. Addig fut a while ciklus, amíg a zárójelben megadott feltétel igaz marad, tehát a feltétel hamis lesz, a while ciklus leáll.
Akkor pontosan, hogy is müködnek ezek? Most tanulom a pawn-t azért kérdezem.
« Utoljára szerkesztve: 2013. július 10. - 15:39:23 írta bbTamas »

For és a while ciklus, akkor pontosan, hogy is müködik?
« Válasz #1 Dátum: 2013. július 10. - 22:12:44 »
0 Show voters
Jogos az észrevétel.
Kis javításra szorul annak a leírásnak ezen részei, majd krisk-nek ha lesz egy kis ideje biztosan javítani fogja.  :D
Páratlant csak akkor fogja kiírni ha az i értéke kezdésnek 1, majd az i változót 2-esével növeljük ennek szintén lehet pár megoldása:
 
   for(new i = 1; i < 20; i += 2) 
{
printf(\"Csak a páratlan számok fognak látszódni 1-20-as sorozatban: %d\", i);
}

 

   for(new i = 1; i < 20; i++, i++) 
{
printf(\"Csak a páratlan számok fognak látszódni 1-20-as sorozatban: %d\", i);
}

 
És igen, csak addig futnak amíg a feltétel igaz.

For és a while ciklus, akkor pontosan, hogy is müködik?
« Válasz #2 Dátum: 2013. július 14. - 13:46:56 »
0 Show voters
Mostmár értem, köszönöm a választ. :)

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal