SCHLEIFEN


  1. WHILE-Schleife
  2. DO-WHILE-Schleife
  3. FOR-Schleife
  4. Anwendungen von Schleifen
  5. BREAK und CONTINUE bei Schleifen

























































































WHILE-Schleife


Für ihre Syntax gilt:

while (Bedingung)
  {
   Anweisung_1;
   Anweisung_2;
   ...
  }


Während eine bestimmte Bedingung erfüllt ist (Bedingung="true"), wird die Schleife immer wieder abgearbeitet. Man muss also unbedingt darauf achten, dass diese Bedingung während der Abarbeitung der Schleife falsch wird (Bedingung="false"), sonst erhält man eine Endlos-Schleife!!!!

Aufgabe 11

Beginnend mit einer Startzahl soll eine Reihe von 30 aufeinander folgenden natürlichen Zahlen ausgegeben werden.
Speichere zunächst das Formular unter dem Namen loes_11.html, programmiere dann loes_11.php.

























































































DO-WHILE-Schleife


Für ihre Syntax gilt:

   do
     {
        Anweisung_1;
        Anweisung_2;
        ...
     }while (Bedingung)


Während eine bestimmte Bedingung erfüllt ist (Bedingung="true"), wird die Schleife immer wieder durchlaufen. Selbstverständlich muss hier genau wie bei der WHILE-Schleife auf die Abbbruchbedingung geachtet werden um Endlos-Schleifen zu vermeiden.

Der Unterschied zur WHILE-Schleife wird erst bemerkbar, wenn die Bedingung von Anfang an falsch ist:


Aufgabe 12


Speichere das Formular loes_11.html als loes_12.html. Trage beim Attribut action den Wert "loes_12.php" ein. Speichere loes_11.php als loes_12.php und mache aus der WHILE-Schleife eine DO-WHILE-Schleife. Das Ergebnis muss dasselbe sein.














































































FOR-Schleife


Mit for wird ein Schleifendurchlauf abgearbeitet. Dabei gibt man einen Start- und einen Endwert für den Schleifenzähler ein. Die Schleife endet erst bei Erreichen des Endwertes. Der Zähler muss also den Endwert erreichen, um Endlosschleifen zu vermeiden.

Für ihre Syntax gilt:

   for ($zaehler=1; $zaehler<11; $zaehler=$zaehler+1) {
        Anweisung_1;
        Anweisung_2;
        ...     }


Bemerkung: Statt $zaehler=$zaehler+1; schreibt man auch $zaehler++. Die obige Schleife wird 10 mal durchlaufen.

Aufgabe 13

Speichere das Formular loes_12.html als loes_13.html. Trage beim Attribut action den Wert "loes_13.php" ein. Speichere loes_12.php als loes_13.php und mache aus der DO-WHILE-Schleife eine FOR-Schleife. Das Ergebnis muss wieder dasselbe sein.
























































































Anwendungen von Schleifen



Aufgabe 14a

Das Ziel ist eine Tabelle, die für eine gewünschte Schrift die Zeichensatztabelle von Zeichen 32 (Leerzeichen) bis Zeichen 255 ausgibt. Wir beginnen mit einigen Vorübungen zu geschachtelten Schleifen, die du ja schon aus PoVRay kennst.

Erstelle zunächst die loes_14a.html mit passender Überschrift und einem Formular mit Startknopf und Eingabe_ändern-Knopf. Programmiere in der zugehörigen Datei loes_14a.php eine Schleife, deren Zähler j von 1 bis 10 zählt und die nur die Zeile
{echo "<tr>";}
enthält. Das TABLE-TAG soll den PHP-Code umschließen, setze border=1.

In diese äußere Schleife wird nun eine innere Schleife, deren Zähler i ebenfalls von 1 bis 10 zählt gesetzt, diese soll nun in einer echo-Zeile das TABLE-DATA-Tag ausgeben:

{ echo "<td>..... </td>"; }


Teste dies, das Ergebnis sollte folgendermaßen aussehen:



Aufgabe 14b


Speichere die beiden letzten Dateien als loes_14b.html und loes_14b.php neu ab und ändere den Wert des action-Attributs entsprechend.
In die echo-Zeile des inneren Zählers i schreibst du zwischen die TABLE-DATA-Tags nun $ausgabe.

Davor musst du die Variable $ausgabe natürlich geeignet definieren. Sie ist abhängig von den beiden Zählern i und j.

Probiere zunächst mal die folgenden Definitionen aus:
$ausgabe = i;
$ausgabe = j;
$ausgabe = i+j;
$ausgabe = i+10*j;

Teste immer, was passiert. Nun noch eine kleine Änderung in der Definition von $ausgabe und du hast das folgende Ergebnis:



Aufgabe 14c


Speichere die beiden letzten Dateien als loes_14c.html und loes_14c.php neu ab und ändere den Wert des action-Attributs entsprechend.
Nun änderst du $ausgabe geeignet und erhältst eine Ausgabe des kleinen Einmaleins von 1 bis 10:



Aufgabe 14d


Speichere die beiden letzten Dateien als loes_14d.html und loes_14d.php neu ab und ändere den Wert des action-Attributs entsprechend.
Mit einer geeigneten Ergänzung im HTML-Code wird unser Einmaleins noch beschriftet:

Aufgabe 14


Speichere die beiden Dateien loes_14b.html und loes_14b.php als loes_14.html und loes_14.php neu ab und ändere den Wert des action-Attributs entsprechend.

Die Zeichensatztabelle benötigt nun nur noch wenige Änderungen:





Aufgabe 15


Speichere die beiden Dateien loes_14.html und loes_14.php als loes_15.html und loes_15.php neu ab und ändere den Wert des action-Attributs entsprechend.

Mit einem FONT-Tag an geeigneter Stelle (denke daran, dass das Gänsefüßchen mit einem vorangestellten Backslash versehen werden muss!!) können nun die Zahlen 32 bis 255 in einer anderen Farbe und evtl. kleiner dargestellt werden.



Aufgabe 16


Speichere die beiden letzten Dateien als loes_16.html und loes_16.php neu ab und ändere den Wert des action-Attributs entsprechend.



Aufgabe 17


Speichere die beiden letzten als loes_17.html und loes_17.php neu ab und ändere den Wert des action-Attributs entsprechend.

In HTML-Datei soll nun noch ein Link gesetzt werden, das die Datei "schrift.php" aufruft, in der die ff. Zeilen stehen:



Der Verzeichnisname c:\windows\fonts ist entsprechend zu ändern. Informiere Dich über die Verzeichnisstruktur der Rechner i.d. Schule bzw. über die Verzeichnisstruktur Deines privaten Rechners.

Leider entsprechen die Namen der dann angezeigten Schriftdateien nicht unbedingt den Namen der Schriftarten. Notfalls muss eine Schriftart miteinem Hilfsprogramm wie "fontview.exe" oder IrfanView betrachtet werden. Ihr Name wird dann angezeigt:



Aufgabe 18


Speichere die beiden letzten als loes_18.html und loes_18.php neu ab und ändere den Wert des action-Attributs entsprechend.

Eine Schriftprobe der gewünschten Schrift sowie der Name der Schriftart soll zusätzlich angezeigt werden:



Die zugehörigen echo-Zeilen werden vor dem Beginn der beiden Zählschleifen eingefügt.




































































BREAK und CONTINUE bei Schleifen


Mit break wird ein Schleifendurchlauf unterbrochen, mit continue fortgesetzt.

Beispiel: Die Ausgabe einer Wertetabelle für y=1/x ergäbe bei x=0 eine Division durch Null.

Aufgabe 20


Speichere loes_13.html und loes_13.php als loes_20.html und loes_20.php und verändere den Wert des Action-Attributs entsprechend. Erstelle eine Wertetabelle für eine Funktion mit Polstelle. Die Funktionsgleichung und die Polstelle sollen dabei auf dem Bilschirm ebenfalls angezeigt werden. Achte auf übersichtliche Gestaltung.





© 2010 Asti PoVRay-Site Mathematische Streiflichter