Javascript/ScratchUndJavascript/WhileSchleife

Aus ProgrammingWiki

Wiki-Quelltext dieser Seite.

<language>Javascript</language>
==Ihre erste Schleife==



Das letzte Programm auf der Seite [[Javascript/ScratchUndJavascript/ErsteSchritte|Erste Schritte]] war wohl etwas mühsam zu schreiben. 

Von Scratch wissen Sie ja schon, dass man sich die Arbeit mit Schleifen sehr erleichtern kann. Die erste Schleife, die Sie kennen lernen, ist die '''while-Schleife'''. 

Aus Scratch kennen Sie sozusagen das Gegenteil der <tt>while</tt>-Schleife: Den Block "wiederhole solange etwas nicht der Fall ist":
<br />[[Bild:Hanspeter Siegfried_ScratchSchleifeWiederholeBis.png]]

===Die Syntax der <tt>while</tt>-Schleife===
====Ein Beispiel====
 var zaehler = 0;
 while(zaehler < 10) {
     schreibeZeile("Bla");
     zaehler ++;
 }

====Erklärungen zum Beispiel====
# <tt>var zaehler = 0;</tt>:<br />Hier wird eine Zähler-Variable definiert. Ihr erster Wert ist 0.
# <tt>while(zaehler < 10)</tt>:<br /> Dieser Teil heisst '''Schleifen-Kopf''': Hier wird gesagt, dass das Folgende ausgeführt werden soll, '''solange <tt>zaehler</tt> kleiner als 10 ist'''.
# <tt>{.....}</tt>: <br />  Die Anweisungen, die ausgeführt werden sollen, müssen immer zwischen geschweiften Klammern stehen.
# <tt>schreibeZeile("Bla");</tt>:<br />Diese Zeile sollten Sie schon von den Ersten Schritten her kennen.
# <tt>zaehler ++;</tt>:<br />Hier wird die Variable <tt>zaehler</tt> um 1 erhöht. <br />Wenn wir das vergessen, bleibt sie immer und ewig kleiner als 10, und wir haben eine '''Endlos-Schleife''' programmiert...
<code id="whileSchleife" hidden>
ausgabe = "";



function schreibe(ausdruck) {
  ausgabe += ausdruck;
}

function schreibeZeile(ausdruck) {
  ausgabe += ausdruck + "\n";
}



function ersteSchleife() {
</code>
====Ihre erste <tt>while</tt>-Schleife====
Programmieren Sie hier im Code-Feld eine Schleife, die das Sterne-Quadrat (7 x 7 Sterne) von der Seite "Erste Schritte" etwas eleganter hinkriegt.
<code id="whileSchleife2">

</code>

<code id="whileSchleife3" hidden>
return ausgabe;
}

</code>
<run id="whileSchleife4">ersteSchleife();</run>