Kezdőoldal » Számítástechnika » Programozás » Mi a különbség a while és a...

Mi a különbség a while és a for ciklus között?

Figyelt kérdés

Értem én, hogy a for ciklus sok nyelven automatikusan lépteti a ciklusváltozót, meg csinál magának stb. De amit észrevettem, hogy a while ugyanezt tudja, csak ott a legtöbb esetben kicsit manuálisabb a dolog.

És azt se értse félre senki, mert olyan is volt már, hogy muszáj volt while ciklust használnom for helyett, de az ellentétéről még nem hallottam.

Szóval van-e olyan eset, amikor MUSZÁJ for ciklust használni a while helyett, vagy a for ciklus csak azért lett teremtve, hogy ne kelljen mindig annyit írkálni?


2015. szept. 30. 17:27
 1/5 anonim ***** válasza:
100%

Igen kényelmi szempont, de olyan eset sincs, hogy muszáj for helyett while.


for(; ami while ba menne ;) == while ciklus

2015. szept. 30. 17:35
Hasznos számodra ez a válasz?
 2/5 anonim ***** válasza:
74%

A for az szamlalos, a while pedig nem. Az, hogy te a whilet hasznalod szamlalos helyett csak is a te hibad.

Olyan nincs, hogy muszaj whilet, a forban is meg lehet adni ugyanugy feltetelt.

2015. szept. 30. 17:37
Hasznos számodra ez a válasz?
 3/5 anonim ***** válasza:

A while ciklus

- kezdőfeltételes (addig fut, amíg a feltétel igaz)

- elől tesztelő (előbb ellenőrzi, hogy teljesül-e a feltétel, és csak ezután hajtja végre a ciklusmagot)


Szintaktika C-szerű nyelvekben:

while (logikai_kifejezés) utasítás;

while (logikai_kifejezés) vezérlési_szerkezet

while (logikai_kifejezés) {utasítás; utasítás;...}


Ezt akkor használjuk, ha valamit addig kell futtatni, amíg egy adott feltétel teljesül.


A for ciklus nyelvtől függően lehet

- előírt lépésszámú ciklus (pl. Pascal nyelvben - arról ismered fel, hogy nincs logikai feltétele)

- kezdőfeltételes elől tesztelő (pl. C-szerű nyelvekben - van logikai feltétele)


Szintaktikája C-szerű nyelvekben:

for (értékadás[, értékadás[...]]; logikai_kifejezés; értékadás[, értékadás[...]]) utasítás;

for (értékadás[, értékadás[...]]; logikai_kifejezés; értékadás[, értékadás[...]]) vezérlési_szerkezet

for (értékadás[, értékadás[...]]; logikai_kifejezés; értékadás[, értékadás[...]]) {utasítás; utasítás;...}


Ezt általában akkor használjuk, ha nem egy konkrét feltételtől függ egy adott kód végrehajtása, hanem azt tudjuk, hogy hányszor kell végrehajtani a ciklusmagot.

2015. szept. 30. 17:40
Hasznos számodra ez a válasz?
 4/5 anonim ***** válasza:

Na ja, a for ciklus lehet még felsorolásos ciklus is, ezt kihagytam. Pl. Java-ban, C++-ban:

for (típus azonosíto : kollekció) utasítás;

for (típus azonosíto : kollekció) vezérlési_szerkezet

for (típus azonosíto : kollekció) {utasítás; utasítás; ...}


Ez arra jó, hogyha van valami olyan dolog, amely felsorolható elemekből áll (tömb, kollekció, stb.), az összes elemét sorra veszi és kigyűjti egy általad megadott változóba.

2015. szept. 30. 18:05
Hasznos számodra ez a válasz?
 5/5 anonim ***** válasza:

Nem írtál programozási nyelvet.


Van olyan programozási nyelv ahol nincs is while ciklus mert a C-szerű for(;feltétel;) ugyan azt csinálja mint a while(feltétel).


De sok programozási nyelvben a kettő nagyon különbözik. Pl. Pythonban vagy Bashben a for egy objektum elemein iterál végig a for_each-hez hasonlóan, a while-lal pedig ahogy mondtad is "manuálisan" lehet a C-szerű for-t imitálni.


Ezen kívül a C-ben van még hátultesztelős while is, a do-while, ami néha egyszerűsít a kódon.

2015. szept. 30. 18:16
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!