Haus des Nikolaus
Aufgabe 1: Erstelle die Datei "Nikolaus.java", die das Haus des Nikolaus
in einem Zug zeichnet. Das Dach kann ein gleichschenkliges Dreieck
sein. Für die Berechnung einer Quadratwurzel kann die
Methode "double Math.sqrt()" aus der Java-Standardklasse
Math benutzt werden.
Aufgabe 2: Formuliere ein Methode "haus(double breite)", die ein Haus
einer gewünschten Breite erzeugt.
Mit Hilfe dieser Methode soll eine ganze Häuserreihe mit
Häusern abnehmender Breite gezeichnet werden.
(Variante für die ganz schnellen Schüer: Die Häuser
sollen auch Fenster, Türen, Antennen usw. haben.)
Lösung zu Aufgabe 1:
Applet zu Aufgabe 1 ausführen
import java.awt.*;
import java.applet.*;
public class Nikolaus extends Applet
{
Turtle t;
double k = 100; // Hausgroesse
public void paint(Graphics g)
{
t = new Turtle(this,100, 200, 0);
zeichne();
}
public void zeichne()
{
t.stiftfarbe(Color.red);
t.vor(k);
t.drehe(90);
t.vor(k);
t.drehe(30);
t.vor(k);
t.drehe(120);
t.vor(k);
t.drehe(30);
t.vor(k);
t.drehe(135);
t.vor (Math.sqrt(2)*k);
t.drehe(135);
t.vor(k);
t.drehe(135);
t.vor (Math.sqrt(2)*k);
} // zeichne
} // class Nikolaus
Lösung zu Aufgabe 2:
Applet zu Aufgabe 2 ausführen
import java.awt.*;
import java.applet.*;
public class Haeuser extends Applet
{
Turtle t;
public void paint(Graphics g)
{
t = new Turtle(this,100, 200, 0);
zeichne();
}
void zeichne()
{
for (int i=1; i<=5; i++)
{
haus(100-i*10);
t.stiftHoch();
t.vor(10);
t.stiftRunter();
}
} // zeichne
void haus(double groesse)
{
t.vor(groesse); // links unten starten und nach rechts
t.drehe(90);
t.vor(groesse);
t.drehe(30); // Dach rechts
t.vor(groesse);
t.drehe(120);
t.vor(groesse); // Dach links
t.drehe(120);
t.vor(groesse);
t.vor(-groesse);
t.drehe(-90);
t.vor(groesse);
t.drehe(90);
t.stiftHoch();
t.vor(groesse);
t.stiftRunter();
} // haus
} // class Haeuser