Kezdőoldal » Számítástechnika » Programozás » While ciklusban több tagadó...

While ciklusban több tagadó feltétel esetén miért kell ÉS&& a VAGY|| helyett?

Figyelt kérdés

a programozási nyelv tök mindegy, jelen esetben ez egy kis PHP kódocska...


Megjegyzés a $string2 az egy nyers szöveg, akár több mondatot is tartalmazhat.


while ($i != strlen($string2) && $string2[$i] != " " && $string2[$i] != ".") {

$string= $string . $string2[$i];

$i++;

}


Mit is tud: Elmegy a szöveg VÉGÉIG vagy amíg nem talál egy SZÓKÖZT vagy nem talál egy PONTOT.


while ($i != strlen($string2) || $string2[$i] || " " && $string2[$i] || ".") <== ez így hibás (végtelen ciklusba fut), a fenti kód a helyes



2016. máj. 27. 14:01
 1/9 A kérdező kommentje:

Magyarul ez a logikus

Menj addig amíg nem érsz véget vagy nem találsz szóközt vagy nem találsz pontot.

Ehelyett ÉS műveletezni kell, ami annyira irritáló ha kapok egy kielégítő választ annak nagyon örülnék

2016. máj. 27. 14:04
 2/9 anonim ***** válasza:
100%

Ird fel lepesenkent es rajossz miert.


A ciklus addig fut amig a feltetle igaz.

Vagy eseten ez annyit tesz, amig barmelyik feltetel is igaz, az egesz kifejezes maga is igaz lesz -> fut.


Es eseten ha barmelyik feltetlen nem teljesul az egesz kifejezes erteke is hamis lesz, ezert leall a ciklus.

2016. máj. 27. 14:12
Hasznos számodra ez a válasz?
 3/9 anonim ***** válasza:
100%

Mert a while azt jelenti, hogy "menj addig amíg IGAZ AZ HOGY - <feltétel>"


Amire te gondolsz, az az until kulcsszó lenne, ami néhány nyelvben előfordul (pl pascal), ami ténylegesen azt jelenti, "menj addig, amíg NEM LESZ IGAZ az hogy - <feltétel>"


De még until-al sem ez lenne a szintaktika, amit lent írtál az valami.. nem tudom mi :D

2016. máj. 27. 14:12
Hasznos számodra ez a válasz?
 4/9 anonim ***** válasza:
100%

[link]


Alapveto bool algebra ismeretek nelkul nehez is megerteni. Vonatkoztass el a magyar nyelvtol. Elo nyelvben a VAGY neha kizaro-, neha megengedo vagyot jelent. Ne a magyart forditsd le programkodra, hanem formalizald mit is szeretnel es azt kodold.

2016. máj. 27. 14:18
Hasznos számodra ez a válasz?
 5/9 A kérdező kommentje:
Köszönöm a válaszokat #2 válaszadó kimerítő választ adott. Csak addig megy amíg igaz, tehát, ha egy is igaz akkor megy.
2016. máj. 27. 14:23
 6/9 anonim ***** válasza:
Nem.
2016. máj. 27. 15:09
Hasznos számodra ez a válasz?
 7/9 anonim ***** válasza:

"Mit is tud: Elmegy a szöveg VÉGÉIG vagy amíg nem talál egy SZÓKÖZT vagy nem talál egy PONTOT.

"

Nem. Megy végig a szöveg karakterein addig, amíg az adott karakter nem szóköz ÉS nem is pont. Kis átalakítással az első ciklusfeltételt is hozzá lehetne csapni a szöveghez ÉS segítségével, ezt már rád bízom!

G.

2016. máj. 27. 15:17
Hasznos számodra ez a válasz?
 8/9 A kérdező kommentje:

Igen, ezek szerint mégis lehet rajta magyarosítani, de innentől már egy életre tudom, hogy mi-miért ezzel kapcsolatban.


Csak annyi hozzáfűzni valóm van, hogyha van lehetőség, akkor a ciklus feltételinél összeszeretem vonni a feltételeket. pl: azt utálom ha megy a while vagy a for ciklus és abban vizsgálgatunk if-el, majd breakeltetünk. valamiért olyan érzésem van mintha lassítaná a programunkat.

2016. máj. 27. 17:24
 9/9 anonim ***** válasza:
100%
És ez így is van rendjén, amit te most felvázoltál, az a strukturált program egyik feltétele, miszerint a ciklusok nem tartalmaznak break-et, goto-t meg hasonló utasításokat, a ciklus addig fut, amíg a ciklusfeltétele fennáll.
2016. máj. 27. 18:58
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!