28.02.2014 Aufrufe

Informatik für Lehrkräfte

Informatik für Lehrkräfte

Informatik für Lehrkräfte

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

50 SEBA STIAN F I SCH ER<br />

puts(line)<br />

for i in 1..size-2 do<br />

puts("*" + inside + "*")<br />

end<br />

puts(line)<br />

end<br />

****<br />

* *<br />

* *<br />

****<br />

Eine mögliche Ausgabe des Programms sieht wie folgt aus.<br />

Da wir das Quadrat zeilenweise ausgeben müssen, berechnen wir<br />

zunächst den oberen Rand als Zeile aus Sternchen gegebener Länge<br />

und speichern ihn in der Variable line. Danach berechnen wir das<br />

Innere als um zwei Zeichen kürzere Zeile inside aus Leerzeichen. Im<br />

Anschluss geben wir den oberen Rand gefolgt von Zeilen, die das Innere<br />

mit Sternchen umranden aus. Schließlich geben wir nocheinmal line als<br />

unteren Rand aus.<br />

Hier sind zwei Beispielausgaben dieser Prozedur in irb.<br />

irb> putQuadrat(3)<br />

***<br />

* *<br />

***<br />

irb> putQuadrat(4)<br />

****<br />

* *<br />

* *<br />

****<br />

Bei der Definition der Prozedur putQuadrat fällt eine Ähnlichkeit<br />

des Codes zur Berechnung der oberen und unteren Zeile sowie des<br />

inneren des Quadrates auf. Beidesmal wir eine gegebene Zeichenkette<br />

eine Bestimmte Anzahl mal wiederholt.<br />

Wir können unser Programm vereinfachen, indem wir diese Berechnung<br />

als Funktion abstrahieren und dann innerhalb von putQuadrat<br />

verwenden.<br />

def repeat(times,string)<br />

result = ""<br />

for i in 1..times do<br />

result = result + string<br />

end<br />

return(result)<br />

end<br />

def putQuadrat(size)

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!