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!

Javakurs2007/Übungspool Entwürfe: Unterschied zwischen den Versionen

(LE 3 (4h), Tag 2)
K (Kategorisierung)
 
(29 dazwischenliegende Versionen von 6 Benutzern werden nicht angezeigt)
Zeile 12: Zeile 12:
  
 
=== LE 1 (2h), Tag 1 ===
 
=== LE 1 (2h), Tag 1 ===
[http://docs.freitagsrunde.org/javakurs/blatt01.tut.pdf Musterlösung zu den folgenden beiden Aufgaben aus dem letzten Jahr]
 
 
: [[Javakurs2007 Aufgabe RL01 | Vom Arbeiten mit der Konsole bis "Hallo Welt"]]
 
 
: [[Javakurs2007/Kassenbon | Erstellen eines Kassenbons (Fallunterscheidungen)]]
 
 
[[Javakurs 2007 Aufgabe RL03 | Einfache Aufgaben für den Einstieg]]
 
 
[[Javakurs2007/Javamenue | Konsoleneingabe mit der Klasse Terminal, einfaches Menü mit Zahlen]]
 
 
[[Javakurs2006/Uebungsaufgaben | Wiederholungsaufgaben zu LE1/2 von 2006]]
 
 
: [[Javakurs2007/Variablen_und_Zuweisungen]] zerlegt und überarbeitet
 
  
 
=== LE 2 (2h), Tag 1 ===
 
=== LE 2 (2h), Tag 1 ===
  
[[practice | Aufgabensammlung ohne Objektorientierung]]
+
Alte Aufgaben aus 2006, ich habe die jetzt nicht ins Wiki für 2007 übernommen, da einige Aufgaben in ähnlicher Form schon vorhanden sind und einige andere eher was für LE3+ sind. Für diese Veranstaltung haben wir aber schon genügend Aufgaben.
 
 
[[multiarray | Mehrdimensionale Arrays]]
 
 
 
[[Javakurs 2007 AufgabeLE02 Dank | Gemischte Aufgaben zu Schleifen und Arrays]]
 
 
 
 
[http://docs.freitagsrunde.org/Veranstaltungen/javakurs_2006/Aufgaben/blatt02.tut.pdf Musterlösungen für die folgende Aufgabensammlung aus dem letzten Jahr]
 
[http://docs.freitagsrunde.org/Veranstaltungen/javakurs_2006/Aufgaben/blatt02.tut.pdf Musterlösungen für die folgende Aufgabensammlung aus dem letzten Jahr]
 
: [http://docs.freitagsrunde.org/Veranstaltungen/javakurs_2006/Aufgaben/blatt02.pdf Aufgabensammlung aus dem letzten Jahr.] (Müsste zerlegt und fürs Wiki portiert werden)
 
: [http://docs.freitagsrunde.org/Veranstaltungen/javakurs_2006/Aufgaben/blatt02.pdf Aufgabensammlung aus dem letzten Jahr.] (Müsste zerlegt und fürs Wiki portiert werden)
 
[[Primzahlenaufgabe]]
 
  
 
=== LE 3 (4h), Tag 2 ===
 
=== LE 3 (4h), Tag 2 ===
 
Schaltjahr (Leicht).
 
 
Schreibt eine Methode die eine Jahreszahl übergeben wird und enscheidet ob es sich
 
um ein Schaltjahr handelt.
 
 
Ein Jahr ist kein Schaltjahr wenn die Jahreszahl nicht durch 4 teilbar ist .
 
 
Ein Jahr ist ein Schaltjahr wenn die Jahreszahl durch 4 aber nicht durch 100 teibar ist.
 
 
Ein Jahr ist ebenfalls ein Schaltjahr wenn die Jahreszahl durch 4, durch 100 und durch 400 teilbar ist.
 
 
 
[[Javakurs 2007 LE03 Aufgabensammlung| Aufgaben zur LE 03]]
 
 
[[Javakurs2007 AufgabeLE02 MZ | Gauß-Algorithmus]]
 
 
[http://www.user.cs.tu-berlin.de/~anand/ Sudoku]
 
 
[[Javakurs2007 Rekursion vs Iteration | Rekursion vs Schleifen]]
 
 
[[Javakurs2007/Appleman | Apfelmaennchen]]
 
 
 
 
SelectonSort  (Leicht)
 
 
In diese Aufgabe übt ihr die Implementierung von Methoden und ihre Benutzung am Beispiel: einen Array zu sortieren.
 
Nach der Implementierung jede Methode sollt ihr sie gleich testen von daher ist diese Aufgabe in Teilaufgaben geteilt:
 
 
1-) Immer sinnvoll: Methode die das Array auf der Konsole Ausgibt.
 
 
2-) Methode die einen int-Array bekommt und prüft ob er sortiert ist (von klein nach gross) oder nicht.
 
 
3-) Methode, die zwei Einträge in einem Array vertauscht.
 
Überlegt euch, was für Argumente hat diese Methode.
 
 
4-) Methode die von einem Array die stelle des Kleinsten Eintrag zurückliefert.
 
Überlegt euch, was für Argumente hat diese Methode.
 
 
5-) Methode die einem Array bekommt und ihm dann nach dem SelctionSort Algorithmus srortiert.
 
Das SelectionSort-Algorithmus funktionniert folgendermaßen:
 
Das Array wird von Anfang an sortiert. So hat man am Anfang einen leeren sortierten Teil
 
und einen vollen unsortierten Teil.
 
 
a-) finde die Stelle des kleinste Element .
 
 
b-) vertauche ihn mit dem Element am Anfang des unsortierten Teils
 
    (so wächst der sortierte Teil um eins und verringert sich der unsortierte um eins).
 
 
c-) mach das gleiche für das nichtsortierte Teil des Arrays; solange es unsortierten Teil gibt.
 
 
Versucht dabei gleich mal passende Namen zu verwenden und auch Kommentare nicht vergessen.
 
Liest beispielsweise -mit dem Kommilitonen- gegenseitig das Code was der andere geschrieben hat.
 
wie schnell könnt ihr es nachvokllziehn?
 
 
Schleißlich überlegt ihr euch wie ihr eure Methoden am besten testet. führt z.B. gegenseitig Tests.
 
Konntet ihr Fehler finden? --- beheben?
 
  
 
=== LE 4 (2h), Tag 3 ===
 
=== LE 4 (2h), Tag 3 ===
* [[Javakurs2007/Hangman | Hangman]]
 
* [[Javakurs2007/Palindrome | Palindrome]]
 
  
 
=== LE 5 (2h), Tag 3 ===  
 
=== LE 5 (2h), Tag 3 ===  
  
[[Javakurs2006/Rennschnecke | Objektorientierung am Beispiel eines Schneckenrennens]]
+
=== LE 6 (4h), Tag 4 ===
  
[[multiarray | Mehrdimensionale Arrays]]
+
=== Fortgeschritten ===
  
Evtl. [http://www.oreillynet.com/lpt/a/6836 Building a Game-Engine with Cocoa] [http://www.macdevcenter.com/lpt/a/6847 2] [http://www.macdevcenter.com/lpt/a/6915 3] anpassen.
+
[[Javakurs2006/Tag_4/Vier_Gewinnt]] (müsste noch ausführlicher werden)
 
 
[http://docs.freitagsrunde.org/Veranstaltungen/javakurs_2006/Aufgaben/blatt03.tut.pdf Beispiellösung für Studentendatenbank 2006]
 
  
:[http://docs.freitagsrunde.org/Veranstaltungen/javakurs_2006/Aufgaben/blatt03.pdf Studentendatenbank von 2006](Müsste fürs Wiki portiert werden)
+
[[Javakurs2007/Multiarray | Mehrdimensionale Arrays]] (Eine Möglichkeit zur Visualisierung fehlt. So nicht testbar)
  
[[Javakurs2007/Studentendatenbank LE5 | Studentendatenbank]] (done)
+
Evtl. [http://www.oreillynet.com/lpt/a/6836 Building a Game-Engine with Cocoa] [http://www.macdevcenter.com/lpt/a/6847 2] [http://www.macdevcenter.com/lpt/a/6915 3] anpassen. (Ach, kommt schon Leute, schreibt die Aufgabe gefälligst selber. :P )
  
=== LE 6 (4h), Tag 4 ===
+
[http://www.user.cs.tu-berlin.de/~anand/ Sudoku](Portierung ins Wiki notwendig. Wir machen soetwas übrigens in Info3 wo die Studies es immernoch ziemlich schwehr finden)
[http://wiki.freitagsrunde.org/Javakurs2007/Doom ASCII DOOM ]
 
  
[http://wiki.freitagsrunde.org/Javakurs2007/Canvas Virtuelles Canvas mit 3D-Objekten]
+
[[Kategorie:Java]]
 
 
=== Fortgeschritten ===
 
[[Javakurs2006/Cäsar-Chiffre | Eigenständiges Programmieren eines Chiffriersystems]]
 
 
 
[[multiarray | Mehrdimensionale Arrays]]
 
 
 
[[ textwordcount | Vergleich von Texten zweier deutscher Autoren ]]
 
 
 
[[Javakurs2006/Tag_4/Vier_Gewinnt]] (müsste noch ausführlicher werden)
 

Aktuelle Version vom 9. März 2009, 09:08 Uhr

Jeder Tutor sollte sich hier mindestens eine, besser mehrere Übungen ausdenken. Da man die Fehler in einer Übungsaufgabe nur finden kann wenn man sie selbst löst sollte jeder Tutor mindestens eine der Übungsaufgaben lösen (ohne Eclipse) und sie an Hand seiner dabei gewonnenen Erfahrungen verbessern. Auch das verlinken eurer Lösung kann weiterhelfen.

Die Aufgaben werden von uns direkt aus dem Wiki gedruckt, achtet also bitte darauf eure Übungsaufgaben auch wie Übungsaufgaben zu strukturieren. Ein Beispiel wie so etwas aussehen könnte ist die Rennschnecke aus dem letzten Jahr.

Denkt daran, dass wir es im Schwehrpunkt mit Anfängern zu tun haben deren Gehirnkapazität mit dem Erlernen der Programmiersprache schon hinreichend ausgeschöpft ist. Gebt also besser ein bischen zu viel Hilfestellungen als zu wenig.

Als Anregung hier noch einmal worum es in den einzelnen LEs ging: Gliederung Javakurs 2007


Übungsaufgaben

LE 1 (2h), Tag 1

LE 2 (2h), Tag 1

Alte Aufgaben aus 2006, ich habe die jetzt nicht ins Wiki für 2007 übernommen, da einige Aufgaben in ähnlicher Form schon vorhanden sind und einige andere eher was für LE3+ sind. Für diese Veranstaltung haben wir aber schon genügend Aufgaben. Musterlösungen für die folgende Aufgabensammlung aus dem letzten Jahr

Aufgabensammlung aus dem letzten Jahr. (Müsste zerlegt und fürs Wiki portiert werden)

LE 3 (4h), Tag 2

LE 4 (2h), Tag 3

LE 5 (2h), Tag 3

LE 6 (4h), Tag 4

Fortgeschritten

Javakurs2006/Tag_4/Vier_Gewinnt (müsste noch ausführlicher werden)

Mehrdimensionale Arrays (Eine Möglichkeit zur Visualisierung fehlt. So nicht testbar)

Evtl. Building a Game-Engine with Cocoa 2 3 anpassen. (Ach, kommt schon Leute, schreibt die Aufgabe gefälligst selber. :P )

Sudoku(Portierung ins Wiki notwendig. Wir machen soetwas übrigens in Info3 wo die Studies es immernoch ziemlich schwehr finden)