Sitzung: Jeden Freitag in der Vorlesungszeit ab 16 Uhr c. t. im MAR 0.005. In der vorlesungsfreien Zeit unregelmäßig (Jemensch da?). Macht mit!

Javakurs/Übungsaufgaben/Appleman: Unterschied zwischen den Versionen

(Theorie)
(und Praxis)
Zeile 13: Zeile 13:
 
Nachdem du nun hoffentlich den theoretischen Teil hinter dir hast, kannst du mit der Implementierung beginnen. Zur Grafikdarstellung gibt es die einfach zu bedienende Klasse "Pad", die ein Fenster erstellt in dem du mit einfachen Routinen zeichnen kannst.
 
Nachdem du nun hoffentlich den theoretischen Teil hinter dir hast, kannst du mit der Implementierung beginnen. Zur Grafikdarstellung gibt es die einfach zu bedienende Klasse "Pad", die ein Fenster erstellt in dem du mit einfachen Routinen zeichnen kannst.
  
# Falls du noch nicht die UEBB-Klassen in deinem Javakurs Verzeichnis hast, lade dir von [http://uebb.cs.tu-berlin.de/books/java/] die Klassen Pad, Point unter Terminal herunter und lege sie in das Verzeichnis ab, in dem auch dein Programm entstehen soll.
+
Falls du noch nicht die UEBB-Klassen in deinem Javakurs Verzeichnis hast, lade dir von [http://uebb.cs.tu-berlin.de/books/java/] die Klassen Pad, Point unter Terminal herunter und lege sie in das Verzeichnis ab, in dem auch dein Programm entstehen soll.
# Wenn du dies getan hast, steht dir die Grafikfunktionalitaet zur Verfuegung.
+
Wenn du dies getan hast, steht dir die Grafikfunktionalitaet zur Verfuegung. Mit
mit
+
Pad DrawPad = new Pad();
Pad drawPad = new Pad();
 
 
wird ein neues Fenster erzeugt.
 
wird ein neues Fenster erzeugt.
 
+
DrawPad.setPadSize(int width, int height);
drawPad.setPadSize(width, height);
 
 
setzt die Groesse des Fensters.
 
setzt die Groesse des Fensters.
 
+
DrawPad.setVisible(true);
drawPad.setVisible(true);
 
 
zeigt das Fenster an.
 
zeigt das Fenster an.
 +
DrawPad.drawDot(int x, int y);
 +
zeichnet einen Punkt an der Stelle (x,y).
 +
Du musst noch nicht verstehen was dies sprachlich genau bedeutet. In LE5 und LE6 sollte dann klar werden was DrawPad ist.
  
drawPad.drawDot(x, y);
+
Implementiere nun den Algorithmus der das Apfelmaennchen zeichnet!
malt einen Punkt an der Stelle (x,y).
 

Version vom 6. April 2007, 22:32 Uhr

Appleman

Die Mandelbrot-Menge oder auch Apfelmaennchen genannt ist eine ganz bestimmen Menge von imaginaeren Zahlen. Sie gehoert zu den sog. Fraktalen und man kennt sie aus unzaehligen Darstellungen in Printmedien. Fuer eine genaue Definition und Berechnungsvorschrift sei auf die Wikipedia verwiesen: Mandelbrot-Menge, Definition ueber Rekursion. In dieser Aufgabe soll es darum gehen ein Programm zur Darstellung eines solches Apfelmaennchen zu programmieren.

Theorie

  1. Lies dir die Definition der Mandelbrot-Menge durch.
  2. Ueberlege dir, wie du die komplexen Zahlen c und zn+1 mit Java darstellen kannst.
  3. Ueberlege dir, wie du die Folge berechnest (quadrieren komplexer Zahlen).
  4. Ueberlege dir die Abbruchbedingungen fuer die Berechnung der Folge und was aus den beiden Faellen folgt.
  5. Entwirf die grundsaetzliche Struktur des Algorithmus.

und Praxis

Nachdem du nun hoffentlich den theoretischen Teil hinter dir hast, kannst du mit der Implementierung beginnen. Zur Grafikdarstellung gibt es die einfach zu bedienende Klasse "Pad", die ein Fenster erstellt in dem du mit einfachen Routinen zeichnen kannst.

Falls du noch nicht die UEBB-Klassen in deinem Javakurs Verzeichnis hast, lade dir von [1] die Klassen Pad, Point unter Terminal herunter und lege sie in das Verzeichnis ab, in dem auch dein Programm entstehen soll. Wenn du dies getan hast, steht dir die Grafikfunktionalitaet zur Verfuegung. Mit

Pad DrawPad = new Pad();

wird ein neues Fenster erzeugt.

DrawPad.setPadSize(int width, int height);

setzt die Groesse des Fensters.

DrawPad.setVisible(true);

zeigt das Fenster an.

DrawPad.drawDot(int x, int y);

zeichnet einen Punkt an der Stelle (x,y). Du musst noch nicht verstehen was dies sprachlich genau bedeutet. In LE5 und LE6 sollte dann klar werden was DrawPad ist.

Implementiere nun den Algorithmus der das Apfelmaennchen zeichnet!