==Übungsaufgabe für Test am 22.02.==: Unterschied zwischen den Versionen

Aus ComeniusWiki
Wechseln zu: Navigation, Suche
(Übung 'Graphische Aufgabe')
(Übung 'Graphische Aufgabe')
Zeile 54: Zeile 54:
 
//Erzeugung des Arrays der Größe 100
 
//Erzeugung des Arrays der Größe 100
 
regen=new Drop[100];
 
regen=new Drop[100];
//Erzeugung der einzelnen Tropfen; die Werte von x und y stellen sicher, dass die Tropfen zufällig und nicht außerhalb der Scheibe erzeugt werden (Rand des Fensters beträgt 40px)
+
//Erzeugung der einzelnen Tropfen; die Werte von x und y stellen sicher,  
 +
//dass die Tropfen zufällig und nicht außerhalb der Scheibe erzeugt werden (Rand des Fensters beträgt 40px)
 
   for(int i=0;i<regen.length;i++){
 
   for(int i=0;i<regen.length;i++){
 
     regen[i]=new Drop(40+random(width-80), 40+random(height-80));}
 
     regen[i]=new Drop(40+random(width-80), 40+random(height-80));}

Version vom 16. Februar 2018, 09:31 Uhr

Stoff

Es werden zum einen Grundkenntnisse zum Thema Arrays erwartet (Deklaration, Intitialisierung, Anwendung von Schleifen), die in einer einfachen Aufgabe umgesetzt werden (z.B. 'Ausgabe aller geraden Zahlen bis 50' oder 'Summe aller Zahlen bis 100' (siehe Beispiele)), zum anderen soll in einer Aufgabe die Modellierung einer graphischen Aufgabe (Stichwort: Klassendiagramm) und die Implementierung einzelner Aspekte gezeigt werden.

Übung 'Graphische Aufgabe'

Ein Programm soll das Wischen einer Fensterscheibe simulieren. Dazu sind vier Klassen notwendig: Die Klasse 'Fenster' setzt das zu wischende Fenster auf der Zeichenfläche um. Der Konstruktor arbeitet nur mit festen Werten für die Position und Größe des Fensters. Als Methode ist nur eine Methode displayF() zur Darstellung erforderlich. Die zweite Klasse 'Drop' soll Tropfen erzeugen können, die an beliebiger Stelle auf der Fensterscheibe erscheinen können, eine beliebige Größe zwischen 2 und 6px haben und blau gefärbt sind. Als Methode reicht wiederum eine Methode displayD(). Die dritte Klasse ist der 'Wiper'. Der Wiper hat eine feste Position und eine feste Größe. Neben der displayF()-Methode enthält die Klasse noch eine Methode move(), die unterschiedliche Wischgeschwindigkeiten erlaubt.
Zusammengeführt wird alles in der Klasse 'Fensterwäsche' (entspricht in der Implementierung dem Sketch). Dort wird das Fenster, ein Wischer und ein Array von 100 Tropfen benötigt. Als Methoden verwenden wir nur die zwei üblichen. Das Ergebnis ist im Video zu sehen.

Aufgabe 1

Erstelle das zugehörige Klassendiagramm.

Aufgabe 2

Implementiere die Klasse 'Drop'.


Aufgabe 3

Implementiere die Erzeugung des Arrays für 100 Tropfen und erzeuge anschließend die 100 Tropfen mittels einer Schleife.


Aufgabe 4

Implementiere die Darstellung der Tropfen auf der Fensterscheibe mittels einer Schleife.


Für die Ambitionierten hier die Gesamtlösung der Aufgabe.