geloescht_Larusso7 Geschrieben 18. Juni 2002 Geschrieben 18. Juni 2002 <?php $wert=64; for($i=2; $i<=20; $i++) { $a=$wert%$i; if($a==0) { $res=$wert/$i; echo $wert."=".$i."*".$res."<br>"; } } ?> Am Browser erscheint 64=2*32 64=4*16 64=8*8 64=16*4 Es soll aber nur der erste Wert angezeigt werden. Was muss ich in der Schleife bzw. if -Anweisung ändern damit nur der erste Wert ausgegeben wird Gruss Flo :confused: Zitieren
Jaraz Geschrieben 18. Juni 2002 Geschrieben 18. Juni 2002 Hallo, da gibt es verschiedene Möglichkeiten. 1. du nimmst ne Status Variable. 2. du setzt im if Block i>20 (also missbrauchen von i als Statusvariable) 3. du schreibst das in eine Funktion und springst mit einem return im if Block raus. ich würde Methode 3 bevorzugen... Gruß Jaraz Zitieren
TingleTangle Geschrieben 18. Juni 2002 Geschrieben 18. Juni 2002 Sowas in der Art?: <?php $wert=64; for($i=2; $i<=20; $i++) { if($i==2) $a=$wert%$i; if($a==0) { $res=$wert/$i; echo $wert."=".$i."*".$res."<br>"; } } ?> Zitieren
geloescht_Larusso7 Geschrieben 18. Juni 2002 Autor Geschrieben 18. Juni 2002 Ich hab mich vielleicht falsch ausgedrückt. Ganz allgemein möchte ich aus einer Schleife Werte auslesen aber der "erste" Wert der ausgelesen wird soll in einer Variable gespeichert werden Gruss Flo Zitieren
sillium Geschrieben 19. Juni 2002 Geschrieben 19. Juni 2002 Vielleicht versteh ich Dich ja falsch, aber entweder nimmst Du ne Statusvariable: <?php $status = false; $wert=64; for($i=2; $i<=20; $i++) { $a=$wert%$i; if(($a==0) && ($status == false)) { $res=$wert/$i; echo $wert."=".$i."*".$res."<br>"; $status = true; } } ?> Oder Du läßt die Schleife rückwärts laufen und gibst nicht jedesmal die Zeile aus: <?php $wert=64; for($i=20; $i>=2; $i--) { $a=$wert%$i; if($a==0) { $res=$wert/$i; } } echo $wert."=".$i."*".$res."<br>"; ?> Oder du gehst im "if($a==0)"-Zweig aus der Schleife raus. Sillium Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.