while-Schleife mit OR

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
Tarlar
Mitglied
Beiträge: 178
Registriert: 01.03.2004 15:59
Wohnort: Ebersbach
Kontaktdaten:

while-Schleife mit OR

Beitrag von Tarlar »

ich habe folgendes geproggt. Leider gibts es da eine Endlosschleife:

Code: Alles auswählen

$i = 5;
$h = 6;

while ($i != 0 OR $h != 0)
   {
   echo "Hallo";
   $i = $i - 1;
   $h = $h - 1;
   }
Wenn ich in die while-Schleife nur das hier schreibe:

Code: Alles auswählen

$i = 5;
$h = 6;

while ($i != 0)
   {
   echo "Hallo";
   $i = $i - 1;
   }
Dann kommt 5mal Hallo.

Jetzt nehme ich an, dass OR in einer while-Schleife nicht eingesetzt werden kann. Stimmt das?
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

Man kann schon OR verwenden, in deinem Fall jedoch trifft die Bedingung immer zu. Du kannst dir ja mal die beiden Variablen in der Schleife ausgeben lassen, dann siehst du daß immer eine der beiden nicht 0 ist.
KB:knigge
mr.no-name
Mitglied
Beiträge: 1883
Registriert: 20.10.2003 12:07
Wohnort: Hannover

Beitrag von mr.no-name »

Jop, ich hatte ihm schon gesagt, dass er and nutzen muss, um zum gewünschten Ergebnis zu kommen :)
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

Oder z.B. while(!($i == 0 || $h == 0)) - wobei ich persönlich diese komplette negation nur nutze, wenn es unbedingt sein muss (in diesem Fall also z.B. wenn es sich um eine Aufgabe handelt und zwingend die Verwendung von OR vorgeschrieben ist)
KB:knigge
Antworten

Zurück zu „Coding & Technik“