kleines script geht nicht?!

das_element

Erfahrenes Mitglied
hoi
ich lern gerade ein bischen PHP und hab jetzt folgendes geschrieben:
PHP:
<?php
$i=0;
while($i<10) {echo ($i * $i). "<br>";$i++;}
?>

Normalerweise sollte er doch jetzt alle Zahlen bis zehn ausgeben, oder?
Bei mir kommt aber:
Code:
0
1
4
9
16
25
36
49
64
81
 
Denk halt mal drüber nach, was die Anweisung $i*$i bewirkt?

Ist doch klar, dass da folgendes berechnet wird:
0x0 = 0
1x1 = 1
2x2 = 4
usw.
 
Nein! Diese Ausgabe stimmt schon! Schließlich multiplizierst du die Var $i jedesmal mit sich selber! Versuchs mal hiermit!:

PHP:
<?php 
$i=0; 
while($i<10) {echo ($i). "<br>";$i++;} 
?>
 
for-Schleifen sind doch viel schöner und übersichtlicher :P
PHP:
for ($i = 0; $i < 10; $i++) {
  echo $i."<br>";
}
Btw: Wie kann man nur ne while-Schleife in eine Zeile schreiben? *schauder*
 
nero_85 hat gesagt.:
Jedem das seine, oder nicht? (Ich machs auch lieber anders, aber wenn es ihm so leichter fällt)

Das sollte man keinem streitig machen, aber ich denke eher, das der Neuling sich noch nicht keine gedanken über ordentlichen Quellcode gemacht hat.
Von daher solltest du, lieber "das_element" deinen Quellcode gleich übersichtlicher schreiben. Dann fallen die Fehler auch eher auf.
Sprich pro Zeile nur eine Anweisung und nach jeder geschweiften Klammer wird alles innere um 2 bzw 4 Leerzeichen eingerückt ;)
 
pornex hat gesagt.:
Das sollte man keinem streitig machen, aber ich denke eher, das der Neuling sich noch nicht keine gedanken über ordentlichen Quellcode gemacht hat.
Von daher solltest du, lieber "das_element" deinen Quellcode gleich übersichtlicher schreiben. Dann fallen die Fehler auch eher auf.
Sprich pro Zeile nur eine Anweisung und nach jeder geschweiften Klammer wird alles innere um 2 bzw 4 Leerzeichen eingerückt ;)

Ok, hat ja recht! Hatte es nur ein bisschen eilig! Da ging Copy/Paste schneller :-)

//edit:
Das Thema ist mittlerweile ziemlich :offtopic: wir sollten uns wieder auf das Problem konzentrieren.
@das_element:
Noch Fragen?
 
nero_85 hat gesagt.:
Jedem das seine, oder nicht? (Ich machs auch lieber anders, aber wenn es ihm so leichter fällt)
Naja, das ist aber schon unter der Schmerzensgrenze.
Wenn jemand alle Operatoren zusammenquetscht, mag ich das zwar auch nicht, aber tolerieren kann ich das noch.
Ist zwar (für mich jedenfalls) nicht ganz so lesbar, wie wenn man schön Leerzeichen macht, aber geht ja noch.

Jetzt stell dir mal vor, du hast einen Fehler in deinem Code und der sieht so aus, wie die while-Schleife da oben.
Viel spaß beim Suchen!
Spätestens wenn ein ; auftaucht, macht man doch einen Zeilenumbruch, oder?

Ich sag das jetzt nicht, um euch zu ärgern, aber es klingt doch vernünftig, oder?
Außerdem guckt sich so ein Code niemand an, wenn man dann ein Problem hat (bei 1 Zeile geht das noch, aber bei 20 solcher Zeilen?).

Wenn man den Code nicht vernünftig einrücken kann, oder will, kann man es auch gleich lassen, daraus kann nur ein nicht funktionierendes Programm entstehen ...
 
Zurück