<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki.stageing.freitagsrunde.org//api.php?action=feedcontributions&amp;feedformat=atom&amp;user=130.149.17.37</id>
	<title>FreitagsrundenWiki - Benutzerbeiträge [de]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.stageing.freitagsrunde.org//api.php?action=feedcontributions&amp;feedformat=atom&amp;user=130.149.17.37"/>
	<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//Spezial:Beitr%C3%A4ge/130.149.17.37"/>
	<updated>2026-11-02T16:00:34Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.45.6</generator>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=C-Kurs/DTMF-Encoder&amp;diff=14910</id>
		<title>C-Kurs/DTMF-Encoder</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=C-Kurs/DTMF-Encoder&amp;diff=14910"/>
		<updated>2010-09-16T14:27:46Z</updated>

		<summary type="html">&lt;p&gt;130.149.17.37: /* Sinuswellen überlagern */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In dieser Aufgabe soll ein Generator für DTMF-Töne erstellt werden. DTMF steht für &amp;lt;i&amp;gt;Dual-tone multi-frequency&amp;lt;/i&amp;gt; und ist auch als [http://de.wikipedia.org/wiki/Mehrfrequenzwahlverfahren Mehrfrequenzwahlverfahren] bekannt.&lt;br /&gt;
&lt;br /&gt;
Wenn du diese Aufgabe in den Rechnerräumen bearbeitest, benutze bei dem Abspielen der Töne bitte Kopfhörer, um andere nicht zu stören.&lt;br /&gt;
&lt;br /&gt;
=== Was ist DTMF? ===&lt;br /&gt;
Kurz gesagt: ein DTMF-Ton besteht aus zwei überlagerten Sinuswellen. Für jede Taste auf dem Telefon ist eine bestimmte Frequenzkombination dieser beiden Wellen festgelegt. Genaueres sowie die Frequenzen für die Tasten finden sich [http://de.wikipedia.org/wiki/Mehrfrequenzwahlverfahren hier].&lt;br /&gt;
&lt;br /&gt;
=== Wie werden Töne im Rechner dargestellt? ===&lt;br /&gt;
Töne lassen sich als [http://de.wikipedia.org/wiki/Puls-Code-Modulation PCM]-Daten speichnern. Unser Programm soll solche PCM-Daten generieren. Ausreichend sind hier 8 Bit pro Sample, sodass sich die Tondaten in einem Array aus &amp;lt;tt&amp;gt;unsigned char&amp;lt;/tt&amp;gt; ablegen lassen. Die Samples sind dann vorzeichenlos, was bedeutet, dass bei 127 der Mittelwert ist. Als Samplerate reichen für uns auch recht niedrige 8 kHz, das heißt für jede Sekunde Ton werden 8000 Samples benötigt.&lt;br /&gt;
&lt;br /&gt;
== Aufgabenstellung ==&lt;br /&gt;
Jetzt soll Schritt für Schritt der Tongenerator implementiert werden.&lt;br /&gt;
&lt;br /&gt;
=== Sinuswellen generieren ===&lt;br /&gt;
Schreibe eine Funktion, die Sinuswellen als Mono-8Bit-8kHz-PCM-Daten erzeugt. Der Funktion soll die gewünschte Länge des Tons, die Frequenz des Tons, und die Amplitude, sowie einen Pointer auf ein &amp;lt;i&amp;gt;int&amp;lt;/i&amp;gt;, in dem die Anzahl der generierten Samples abgelegt werden kann. Die Funktion soll dann ausreichend Speicher für die Daten allokieren und jedes Sample mit den passenden Sinuswerten befüllen und sie am Ende zurückgeben. Der Prototyp der Funktion sollte also etwa so aussehen:&lt;br /&gt;
&amp;lt;pre&amp;gt;unsigned char* generateSine(int ms, int freq, float amplitude, int *numSamples)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Rufe nun in der main-Funktion die Generierungsfunktion auf und speichere die Daten mit &amp;lt;tt&amp;gt;fwrite&amp;lt;/tt&amp;gt; in eine Datei. Die Datei kann jetzt auf einem Linux-System auf einfache Weise abgespielt mit dem Kommando &amp;lt;tt&amp;gt;cat &amp;lt;i&amp;gt;audiofile&amp;lt;/i&amp;gt; &amp;gt; /dev/dsp&amp;lt;/tt&amp;gt; werden. Sie kann aber auch z.B. mit &amp;lt;i&amp;gt;mplayer&amp;lt;/i&amp;gt; abgespielt werden:&lt;br /&gt;
&amp;lt;tt&amp;gt;mplayer -rawaudio samplesize=1:channels=1:rate=8000 -demuxer &amp;lt;i&amp;gt;audiofile&amp;lt;/i&amp;gt;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==== Hinweis zum Debuggen ====&lt;br /&gt;
Um sich die Audiodaten anzusehen, kann das Programm [http://audacity.sourceforge.net/?lang=de Audacity] verwendet werden. Öffnen lassen sie sich dort über &amp;lt;i&amp;gt;Datei&amp;lt;/i&amp;gt; -&amp;gt; &amp;lt;i&amp;gt;Importieren&amp;lt;/i&amp;gt; -&amp;gt; &amp;lt;i&amp;gt;Rohdaten&amp;lt;/i&amp;gt;, dann die Datei auswählen, dann bei &amp;lt;i&amp;gt;Codec&amp;lt;/i&amp;gt; Unsigned 8 bit PCM, bei &amp;lt;i&amp;gt;Kanäle&amp;lt;/i&amp;gt; 1, bei &amp;lt;i&amp;gt;Samplefrequenz&amp;lt;/i&amp;gt; 8000 Hz auswählen. Nun kann man in die Samples reinzoomen (Button mit Lupe und Plus) und sehen, ob der Sinuswellen ordentlich sind. Mit &amp;lt;i&amp;gt;Analyse&amp;lt;/i&amp;gt; -&amp;gt; &amp;lt;i&amp;gt;Frequenzanalyse&amp;lt;/i&amp;gt; kann überprüft werden, ob die Sinuswelle die richtige Frequenz hat.&lt;br /&gt;
&lt;br /&gt;
=== Sinuswellen überlagern ===&lt;br /&gt;
Schreibe jetzt eine Funktion, die zwei Sinuswellen gleicher Länge überlagern kann. Die von ihr erstellte Samples sollen durch Addition der beiden Samples der Sinusdaten gebildet werden. Doch Vorsicht: da die Daten vorzeichenlos sind, müssen sie temporär vorzeichenbehaftet werden, so dass der Mittelwert 0 (also Wertebereich -128 bis 127) wird, dann können sie addiert werden und dann wieder vorzeichenlos abgespeichert werden (mit dem Mittelwert 127, Wertebereich 0 bis 255). Der Prototyp der Funktion sollte etwa so aussehen:&lt;br /&gt;
&amp;lt;pre&amp;gt;unsigned char* mixPcm(unsigned char *a, unsigned char *b, int numSamples)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Teste nun die Funktion wieder, indem du zwei Sinuswellen unterschiedlicher Frequenz erzeugst und sie mit der neuen Funktion überlagerst. Als Amplitude sollte jeweils etwas weniger als die Hälfte gewählt werden, um bei der Addition [http://de.wikipedia.org/wiki/Clipping_%28Signalverarbeitung%29 Clipping] zu vermeiden. Untersuche das Ergebnis wieder, wie in der ersten Teilaufgabe.&lt;br /&gt;
&lt;br /&gt;
=== DTMF-Töne ===&lt;br /&gt;
Schreibe eine Funktion, die für eine Ziffer zwischen 0 und 9 den passenden DTMF-Ton mithilfe der beiden vorigen Funktionen generieren kann. Ihr Prototyp kann etwa so aussehen:&lt;br /&gt;
&amp;lt;pre&amp;gt;unsigned char* generateDtmfTone(int number, int ms, int *numSamples)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Teste wieder. Zum Vergleich der Töne kannst du jetzt ein Telefon benutzen.&lt;br /&gt;
&lt;br /&gt;
=== Nummernsequenzen generieren ===&lt;br /&gt;
Benutze jetzt die Generierungsfunktion, um eine Folge von Ziffern in eine Datei zu schreiben. Die Töne sollten durch Stille getrennt sein. Du brauchst also noch eine Funktion, die Samples generiert, die alle den Wert 127 haben. Die Nummer soll als Kommandozeilenparameter oder Benutzereingabe eingegeben werden.&lt;br /&gt;
&lt;br /&gt;
Wenn du jetzt ein analoges Telefon zur Hand hast, kannst du die Töne ins Mikrofon des Hörers anspeilen und damit Nummern wählen.&lt;br /&gt;
&lt;br /&gt;
==== Hinweis ====&lt;br /&gt;
Vergesse nicht, alle Tondaten, die du nicht mehr brauchst, mit &amp;lt;tt&amp;gt;free&amp;lt;/tt&amp;gt; wieder freizugeben.&lt;br /&gt;
&lt;br /&gt;
== Kommentare ==&lt;br /&gt;
Wenn du Anmerkungen zur Aufgabe hast oder Lob und Kritik loswerden möchtest, ist hier die richtige Stelle dafür. Klicke einfach ganz rechts auf &amp;quot;bearbeiten&amp;quot; und schreibe deinen Kommentar direkt ins Wiki. Keine Scheu, es geht nichts kaputt ;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Als kleine Starthilfe folgt ein Beispiel, wie so ein Kommentar formatiert sein könnte. Mit &amp;quot;Vorschau zeigen&amp;quot; kannst du dir ansehen, was deine Änderung bewirken würde, ohne wirklich etwas zu ändern.&lt;br /&gt;
Du musst übrigens außerhalb dieses auskommentieren Bereichs schreiben ;)&lt;br /&gt;
&lt;br /&gt;
==== Robert ====&lt;br /&gt;
Na mal schauen, ob irgendjemand diese Funktion wirklich benutzt. Ich fände es jedenfalls toll.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:CKurs]]&lt;br /&gt;
[[Kategorie:CKurs_Aufgaben]]&lt;/div&gt;</summary>
		<author><name>130.149.17.37</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=C-Kurs/DTMF-Encoder&amp;diff=14909</id>
		<title>C-Kurs/DTMF-Encoder</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=C-Kurs/DTMF-Encoder&amp;diff=14909"/>
		<updated>2010-09-16T14:24:01Z</updated>

		<summary type="html">&lt;p&gt;130.149.17.37: /* Nummernsequenzen generieren */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In dieser Aufgabe soll ein Generator für DTMF-Töne erstellt werden. DTMF steht für &amp;lt;i&amp;gt;Dual-tone multi-frequency&amp;lt;/i&amp;gt; und ist auch als [http://de.wikipedia.org/wiki/Mehrfrequenzwahlverfahren Mehrfrequenzwahlverfahren] bekannt.&lt;br /&gt;
&lt;br /&gt;
Wenn du diese Aufgabe in den Rechnerräumen bearbeitest, benutze bei dem Abspielen der Töne bitte Kopfhörer, um andere nicht zu stören.&lt;br /&gt;
&lt;br /&gt;
=== Was ist DTMF? ===&lt;br /&gt;
Kurz gesagt: ein DTMF-Ton besteht aus zwei überlagerten Sinuswellen. Für jede Taste auf dem Telefon ist eine bestimmte Frequenzkombination dieser beiden Wellen festgelegt. Genaueres sowie die Frequenzen für die Tasten finden sich [http://de.wikipedia.org/wiki/Mehrfrequenzwahlverfahren hier].&lt;br /&gt;
&lt;br /&gt;
=== Wie werden Töne im Rechner dargestellt? ===&lt;br /&gt;
Töne lassen sich als [http://de.wikipedia.org/wiki/Puls-Code-Modulation PCM]-Daten speichnern. Unser Programm soll solche PCM-Daten generieren. Ausreichend sind hier 8 Bit pro Sample, sodass sich die Tondaten in einem Array aus &amp;lt;tt&amp;gt;unsigned char&amp;lt;/tt&amp;gt; ablegen lassen. Die Samples sind dann vorzeichenlos, was bedeutet, dass bei 127 der Mittelwert ist. Als Samplerate reichen für uns auch recht niedrige 8 kHz, das heißt für jede Sekunde Ton werden 8000 Samples benötigt.&lt;br /&gt;
&lt;br /&gt;
== Aufgabenstellung ==&lt;br /&gt;
Jetzt soll Schritt für Schritt der Tongenerator implementiert werden.&lt;br /&gt;
&lt;br /&gt;
=== Sinuswellen generieren ===&lt;br /&gt;
Schreibe eine Funktion, die Sinuswellen als Mono-8Bit-8kHz-PCM-Daten erzeugt. Der Funktion soll die gewünschte Länge des Tons, die Frequenz des Tons, und die Amplitude, sowie einen Pointer auf ein &amp;lt;i&amp;gt;int&amp;lt;/i&amp;gt;, in dem die Anzahl der generierten Samples abgelegt werden kann. Die Funktion soll dann ausreichend Speicher für die Daten allokieren und jedes Sample mit den passenden Sinuswerten befüllen und sie am Ende zurückgeben. Der Prototyp der Funktion sollte also etwa so aussehen:&lt;br /&gt;
&amp;lt;pre&amp;gt;unsigned char* generateSine(int ms, int freq, float amplitude, int *numSamples)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Rufe nun in der main-Funktion die Generierungsfunktion auf und speichere die Daten mit &amp;lt;tt&amp;gt;fwrite&amp;lt;/tt&amp;gt; in eine Datei. Die Datei kann jetzt auf einem Linux-System auf einfache Weise abgespielt mit dem Kommando &amp;lt;tt&amp;gt;cat &amp;lt;i&amp;gt;audiofile&amp;lt;/i&amp;gt; &amp;gt; /dev/dsp&amp;lt;/tt&amp;gt; werden. Sie kann aber auch z.B. mit &amp;lt;i&amp;gt;mplayer&amp;lt;/i&amp;gt; abgespielt werden:&lt;br /&gt;
&amp;lt;tt&amp;gt;mplayer -rawaudio samplesize=1:channels=1:rate=8000 -demuxer &amp;lt;i&amp;gt;audiofile&amp;lt;/i&amp;gt;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==== Hinweis zum Debuggen ====&lt;br /&gt;
Um sich die Audiodaten anzusehen, kann das Programm [http://audacity.sourceforge.net/?lang=de Audacity] verwendet werden. Öffnen lassen sie sich dort über &amp;lt;i&amp;gt;Datei&amp;lt;/i&amp;gt; -&amp;gt; &amp;lt;i&amp;gt;Importieren&amp;lt;/i&amp;gt; -&amp;gt; &amp;lt;i&amp;gt;Rohdaten&amp;lt;/i&amp;gt;, dann die Datei auswählen, dann bei &amp;lt;i&amp;gt;Codec&amp;lt;/i&amp;gt; Unsigned 8 bit PCM, bei &amp;lt;i&amp;gt;Kanäle&amp;lt;/i&amp;gt; 1, bei &amp;lt;i&amp;gt;Samplefrequenz&amp;lt;/i&amp;gt; 8000 Hz auswählen. Nun kann man in die Samples reinzoomen (Button mit Lupe und Plus) und sehen, ob der Sinuswellen ordentlich sind. Mit &amp;lt;i&amp;gt;Analyse&amp;lt;/i&amp;gt; -&amp;gt; &amp;lt;i&amp;gt;Frequenzanalyse&amp;lt;/i&amp;gt; kann überprüft werden, ob die Sinuswelle die richtige Frequenz hat.&lt;br /&gt;
&lt;br /&gt;
=== Sinuswellen überlagern ===&lt;br /&gt;
Schreibe jetzt eine Funktion, die zwei Sinuswellen gleicher Länge überlagern kann. Die von ihr erstellte Samples sollen durch Addition der beiden Samples der Sinusdaten gebildet werden. Doch Vorsicht: da die Daten vorzeichenlos sind, müssen sie temporär vorzeichenbehaftet werden, so dass der Mittelwert 0 wird, dann können sie addiert werden und dann wieder vorzeichenlos abgespeichert werden (mit dem Mittelwert 127). Der Prototyp der Funktion sollte etwa so aussehen:&lt;br /&gt;
&amp;lt;pre&amp;gt;unsigned char* mixPcm(unsigned char *a, unsigned char *b, int numSamples)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Test nun die Funktion wieder, indem du zwei Sinuswellen unterschiedlicher Frequenz erzeugst und sie mit der neuen Funktion überlagerst. Als Amplitude sollte jeweils etwas weniger als die Hälfte gewählt werden, um bei der Addition [http://de.wikipedia.org/wiki/Clipping_%28Signalverarbeitung%29 Clipping] zu vermeiden. Untersuche das Ergebnis wieder, wie in der ersten Teilaufgabe.&lt;br /&gt;
&lt;br /&gt;
=== DTMF-Töne ===&lt;br /&gt;
Schreibe eine Funktion, die für eine Ziffer zwischen 0 und 9 den passenden DTMF-Ton mithilfe der beiden vorigen Funktionen generieren kann. Ihr Prototyp kann etwa so aussehen:&lt;br /&gt;
&amp;lt;pre&amp;gt;unsigned char* generateDtmfTone(int number, int ms, int *numSamples)&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Teste wieder. Zum Vergleich der Töne kannst du jetzt ein Telefon benutzen.&lt;br /&gt;
&lt;br /&gt;
=== Nummernsequenzen generieren ===&lt;br /&gt;
Benutze jetzt die Generierungsfunktion, um eine Folge von Ziffern in eine Datei zu schreiben. Die Töne sollten durch Stille getrennt sein. Du brauchst also noch eine Funktion, die Samples generiert, die alle den Wert 127 haben. Die Nummer soll als Kommandozeilenparameter oder Benutzereingabe eingegeben werden.&lt;br /&gt;
&lt;br /&gt;
Wenn du jetzt ein analoges Telefon zur Hand hast, kannst du die Töne ins Mikrofon des Hörers anspeilen und damit Nummern wählen.&lt;br /&gt;
&lt;br /&gt;
==== Hinweis ====&lt;br /&gt;
Vergesse nicht, alle Tondaten, die du nicht mehr brauchst, mit &amp;lt;tt&amp;gt;free&amp;lt;/tt&amp;gt; wieder freizugeben.&lt;br /&gt;
&lt;br /&gt;
== Kommentare ==&lt;br /&gt;
Wenn du Anmerkungen zur Aufgabe hast oder Lob und Kritik loswerden möchtest, ist hier die richtige Stelle dafür. Klicke einfach ganz rechts auf &amp;quot;bearbeiten&amp;quot; und schreibe deinen Kommentar direkt ins Wiki. Keine Scheu, es geht nichts kaputt ;)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Als kleine Starthilfe folgt ein Beispiel, wie so ein Kommentar formatiert sein könnte. Mit &amp;quot;Vorschau zeigen&amp;quot; kannst du dir ansehen, was deine Änderung bewirken würde, ohne wirklich etwas zu ändern.&lt;br /&gt;
Du musst übrigens außerhalb dieses auskommentieren Bereichs schreiben ;)&lt;br /&gt;
&lt;br /&gt;
==== Robert ====&lt;br /&gt;
Na mal schauen, ob irgendjemand diese Funktion wirklich benutzt. Ich fände es jedenfalls toll.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:CKurs]]&lt;br /&gt;
[[Kategorie:CKurs_Aufgaben]]&lt;/div&gt;</summary>
		<author><name>130.149.17.37</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=C-Kurs/%C3%9Cbungsaufgaben&amp;diff=14908</id>
		<title>C-Kurs/Übungsaufgaben</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=C-Kurs/%C3%9Cbungsaufgaben&amp;diff=14908"/>
		<updated>2010-09-16T14:20:14Z</updated>

		<summary type="html">&lt;p&gt;130.149.17.37: /* Die Aufgaben */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Wir haben jeder Aufgabe eine Einschätzung ihrer Schwierigkeit auf einer Skala von 1 bis 10 vorangestellt. Bei dieser Einschätzung sind wir von einem Gehirn ausgegangen, für welches das jeweilige Themengebiet völlig neu ist, das jedoch schon ein ganz gutes Verständnis dafür hat wie eine Programmiersprache denn so funktioniert. &lt;br /&gt;
Entsprechend kann eine schwer bewertete Aufgabe aus einem frühen Themengebiet für manch einen sehr einfach oder eine leicht bewertete aus einem späten Themengebiet für einen anderen sehr schwer sein. Es ist nur ein Wert, der euch helfen soll eure nächste Aufgabe zu wählen. &lt;br /&gt;
&lt;br /&gt;
Falls ihr Anmerkungen zu den Aufgaben habt, könnt ihr die Diskussionsseiten der jeweiligen Aufgaben nutzen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Schwierigkeitsgrade ==&lt;br /&gt;
&lt;br /&gt;
#  Reines Tutorial. Man muss nicht viel selbst denken&lt;br /&gt;
#  ...&lt;br /&gt;
#  Leichte Übungsaufgabe. Studies, die noch eher unsicher sind werden hier gut begleitet.&lt;br /&gt;
#  ...&lt;br /&gt;
#  Typische Aufgabe. Man muss den Kopf benutzen, bekommt an schwierigen Stellen aber Hilfestellungen.&lt;br /&gt;
#  ...&lt;br /&gt;
#  Herausfordernd, eher etwas für Studies die etwas fitter sind.&lt;br /&gt;
#  ...&lt;br /&gt;
#  Auch erfahrene Programmierer werden hier ein bis zwei Übungen beschäftigt sein&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
#  Tja, die Idee war da. Wir finden sie auch gut, aber es könnte wirklich anstrengend werden.&lt;br /&gt;
&lt;br /&gt;
== Die Aufgaben ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;2&amp;quot;}&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#D8D8D8&amp;quot;&lt;br /&gt;
 !Aufgabe&lt;br /&gt;
 !Schwierigkeit&lt;br /&gt;
 !Vorwissen&lt;br /&gt;
 !Lerneffekte&lt;br /&gt;
 !Bearbeiter&lt;br /&gt;
 !Korrektur gelesen&lt;br /&gt;
 !Musterlösung&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/Von der Konsole zum HelloWorld | Von der Konsole zum HelloWorld]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |1&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |1. VL&lt;br /&gt;
 | Konsole benutzen, Hello World&lt;br /&gt;
 | Sebastian D.&lt;br /&gt;
 | [[Benutzer:Mario|Mario]] (2009), &lt;br /&gt;
 | &lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/Fakultät | Fakultät]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |2&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |1. VL&lt;br /&gt;
 | Schleifen&lt;br /&gt;
 | Sebastian D.&lt;br /&gt;
 | Daniel (2009), &lt;br /&gt;
 |  &lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Ckurs2010/Pythagoras-Triplet | Pythagoras-Triplet]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |2&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |1. VL&lt;br /&gt;
 | Schleifen &amp;lt;br&amp;gt; if-Bedingungen&lt;br /&gt;
 | Gabriel P.&lt;br /&gt;
 | seba(2010)&lt;br /&gt;
 | &amp;lt;!-- [[Ckurs2010/Pythagoras-Triplet/Musterloesung | Pythagoras-Triplet]] --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/Fibonacci-Folge|Fibonacci-Folge]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |2&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |1. VL&lt;br /&gt;
 | Funktionen &amp;lt;br&amp;gt; Rekursion&lt;br /&gt;
 | Paul B.&lt;br /&gt;
 | [[Benutzer:Mario|Mario]] (2010)&lt;br /&gt;
 | &amp;lt;!--  [[Ckurs2009/Fibonacci-Folge/Musterlösung | Fibonacci-Folge]] --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/digitalesSchloesserKnacken|digitales Schloesser knacken]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |4&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |1. VL&lt;br /&gt;
 | Kontrollstrukturen &amp;lt;br&amp;gt;Bitweise Operatoren&lt;br /&gt;
 | Paul B.&lt;br /&gt;
 | Eugen R. (2010)&lt;br /&gt;
 | &amp;lt;!-- [[Ckurs2009/digitalesSchloesserKnacken/Musterlösung | digitales Schloesser knacken]] --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/Rekursives_arbeiten|Rekursives Arbeiten]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3-5&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |1. VL&lt;br /&gt;
 | Bekannte Operatoren wie + durch Funktionen succ und neg nachbilden&lt;br /&gt;
 | Eugen R.&lt;br /&gt;
 | Paul B.(2010)&lt;br /&gt;
 | &amp;lt;!-- [[Ckurs2009/Rekursives_arbeiten/Musterlösung | Rekursives Arbeiten]] --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/Base64 | Base64]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |6&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |1. VL&lt;br /&gt;
 | Operatoren&lt;br /&gt;
 | Sebastian D.&lt;br /&gt;
 | Paul B.(2010)&lt;br /&gt;
 | &amp;lt;!-- [[Ckurs2009/Base64/Musterlösung | Base64]] --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/EingabeAusgabe | Ein- und Ausgabe]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |1&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |2. VL&lt;br /&gt;
 | Einlesen von Benutzereingaben&amp;lt;br&amp;gt;Ausgabe derselben&lt;br /&gt;
 | [[Benutzer:Mario|Mario]]&lt;br /&gt;
 | nion (2009), &lt;br /&gt;
 | &amp;lt;!-- [[Ckurs2009/EingabeAusgabe/Musterlösung | Ein- und Ausgabe]] --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/Taschenrechner | Taschenrechner]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |2. VL&lt;br /&gt;
 | Eingabe+Ausgabe&amp;lt;br&amp;gt;Mathematische Operatoren&lt;br /&gt;
 | [[Benutzer:Mario|Mario]]&lt;br /&gt;
 | [[Benutzer:Tkroenert|TKroenert]] (2009), &lt;br /&gt;
 | &amp;lt;!-- [[Ckurs2009/Taschenrechner/Musterlösung | Taschenrechner]] --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/VerschachtelteSchleifen | Verschachtelte Schleifen]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |2. VL&lt;br /&gt;
 | Umgang mit mehreren verschachtelten Schleifen&lt;br /&gt;
 | [[Benutzer:Dank|Daniel K.]]&lt;br /&gt;
 | AlexanderK (2009), &lt;br /&gt;
 |&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/Glückspiel | Glücksspiel]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |2. VL&lt;br /&gt;
 | Anwenden von Fallunterscheidungen und Einlesen von Werten aus der Konsole&lt;br /&gt;
 | [[Benutzer:Dank|Daniel K.]]&lt;br /&gt;
 | AlexanderK (2009), &lt;br /&gt;
 | &amp;lt;!-- [[Ckurs2009/Glückspiel/Musterlösung | Glückspiel]] --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Ckurs/Buchstaben_zählen | Buchstaben zählen]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |4&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |2. VL&lt;br /&gt;
 | Array, Dateien lesen&lt;br /&gt;
 | Alex K.&lt;br /&gt;
 | Gabriel (2010)&lt;br /&gt;
 | &amp;lt;!-- vorhanden --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/Wochentag | Wochentagsrechnung]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |5&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |2. VL&lt;br /&gt;
 | Einlesen von Benutzereingaben&amp;lt;br&amp;gt;Mathematikverständniss&lt;br /&gt;
 | [[Benutzer:Mario|Mario]]&lt;br /&gt;
 | nion (Musterlösung noch nicht vorhanden)  (2009), &lt;br /&gt;
 | &lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/Taschenrechner2.0 | Taschenrechner &#039;&#039;2.0&#039;&#039;]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |8&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |2. VL&lt;br /&gt;
 | Knobeln&amp;lt;br&amp;gt;Komplexes Aufgaben lösen&lt;br /&gt;
 | [[Benutzer:Mario|Mario]]&lt;br /&gt;
 | Martin K. (2009), &lt;br /&gt;
 | &amp;lt;!-- [[Ckurs2009/Taschenrechner2.0/Musterlösung | Taschenrechner &#039;&#039;2.0&#039;&#039;]] --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/Call by reference | Call by reference]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |4&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3. VL&lt;br /&gt;
 | Einfache Anwendung von &amp;amp;/*&lt;br /&gt;
 | sping&lt;br /&gt;
 | nion (2009), Alex K. (2010)&lt;br /&gt;
 | &amp;lt;!-- [[Ckurs2009/Call by reference/Musterlösung | Call by reference]] --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Ckurs2010/String to Double | String to Double]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |5&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3. VL&lt;br /&gt;
 | Original-Dokumentation anwenden (Opengroup, man pages)&amp;lt;br&amp;gt;Pointer auf Pointer&amp;lt;br&amp;gt;Const correctness&amp;lt;br&amp;gt;Strings&lt;br /&gt;
 | sping&lt;br /&gt;
 | Eugen R. (2010)&lt;br /&gt;
 | &amp;lt;!-- vorhanden --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/Text processing | Text processing]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |4, 6&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3. VL&lt;br /&gt;
 | Strings&amp;lt;br&amp;gt;Pointer-Arithmetik&amp;lt;br&amp;gt;Pointer auf Pointer&amp;lt;br&amp;gt;Refactoring&lt;br /&gt;
 | sping&lt;br /&gt;
 | [[Benutzer:Mario|Mario]] (2009), &lt;br /&gt;
 | &amp;lt;!-- [[Ckurs2009/Text processing/Musterlösung | Text processing]] --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/Palindrome | Palindrome]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |4&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3. VL&lt;br /&gt;
 | Pointer und Strings&lt;br /&gt;
 | [[Benutzer:Dank|Daniel K.]]&lt;br /&gt;
 | nion (2009), &lt;br /&gt;
 | &amp;lt;!-- [[Ckurs2009/Palindrome/Musterlösung | Palindrome ]] --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/(Pointer) Swapping | (Pointer) Swapping]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |5&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3. VL&lt;br /&gt;
 | Pointer und Arrays benutzen, generisches swap&lt;br /&gt;
 | Katrin&lt;br /&gt;
 | Katrin (2010)&lt;br /&gt;
 | &amp;lt;!-- [[Ckurs2009/(Pointer) Swapping/Musterlösung | (Pointer) Swapping]] --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/Matrizenmultiplikation | Matrizenmultiplikation]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |6&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3. VL&lt;br /&gt;
 | Mehrdimensionale Arrays&amp;lt;br&amp;gt;const correctness&lt;br /&gt;
 | sping&lt;br /&gt;
 | [[Benutzer:Mario|Mario]] (2009), &lt;br /&gt;
 | &amp;lt;!-- [[Ckurs2009/Matrizenmultiplikation/Musterlösung | Matrizenmultiplikation]] --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Ckurs/DreiD | 3D mit C]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |6-9&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3. VL&lt;br /&gt;
 | Mathematische Rechenoperationen, Algorithmik&lt;br /&gt;
 | AndreasF&lt;br /&gt;
 | &lt;br /&gt;
 | &amp;lt;!-- vorhanden --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/Arrayuebergabe | Arrayuebergabe]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |4/5&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |4. VL&lt;br /&gt;
 | Einlesen von Benutzereingaben&amp;lt;br&amp;gt;Pointer und Pointerarithmetik&lt;br /&gt;
 | nion&lt;br /&gt;
 | Martin K. (2009), &lt;br /&gt;
 | &amp;lt;!-- [[Ckurs2009/Arrayuebergabe/Musterlösung | Arrayuebergabe]] --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/Studentendatenbank | Studentendatenbank]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |4&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |4. VL&lt;br /&gt;
 | struct, Pointer, Arrays&lt;br /&gt;
 | AlexanderK&lt;br /&gt;
 | Gabriel (2010)&lt;br /&gt;
 | &amp;lt;!-- [[Ckurs2009/Studentendatenbank/Musterlösung | Studentendatenbank]] --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Ckurs2010/Punktstrukturen| Punktstrukturen]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |2-3&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |4. VL&lt;br /&gt;
 | Structs, Unions, Pointer&lt;br /&gt;
 | [[Benutzer:Mutax|Florian]] (2010)&lt;br /&gt;
 | Alex K. (2010)&lt;br /&gt;
 |&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/Sammelbestellung | Sammelbestellung]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |2-5&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |4. VL&lt;br /&gt;
 | Listen, Pointer, Speicherverwaltung&lt;br /&gt;
 | [[Benutzer:Mutax|Florian]]&lt;br /&gt;
 | [[Benutzer:Mario|Mario]] (2009), &lt;br /&gt;
 | &amp;lt;!-- [[Ckurs2009/Sammelbestellung/Musterlösung | Sammelbestellung]] --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/Zahlen_sagen | Zahlen sagen]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |5&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |4. VL&lt;br /&gt;
 | Umgang mit Zeichenketten&lt;br /&gt;
 | Martin K.&lt;br /&gt;
 | Paul B. (w.i.p.)&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Ckurs/DTMF-Encoder | DTMF-Encoder]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |8&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |4. VL&lt;br /&gt;
 | Pointer, Arrays, Umgang mit Audiodaten&lt;br /&gt;
 | Alexander K.&lt;br /&gt;
 | &lt;br /&gt;
 | &lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/Compiler, Präprozessor, Header Files | Compiler, Präprozessor, Header Files]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |5. VL&lt;br /&gt;
 | Arbeiten mit mehreren Quellcode-Dateien, Kompilieren und Linken, Header-Dateien und #include, debugging-Makro verwenden&lt;br /&gt;
 | Katrin&lt;br /&gt;
 | AndyF (2010)&lt;br /&gt;
 | &amp;lt;!-- [https://wiki.freitagsrunde.org/Ckurs2009/Vortrag05 siehe Folien] --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/Bus Error | Bus Error]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |8&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |5. VL&lt;br /&gt;
 | Pointer, wie entsteht ein bus error&lt;br /&gt;
 | Katrin&lt;br /&gt;
 | [[Benutzer:Mario|Mario]] (2010)&lt;br /&gt;
 | &amp;lt;!-- [[Ckurs2009/Bus Error/Musterlösung | Bus Error]] --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/BubbleSortDebug | BubbleSort Debugging]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |5&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |6. VL&lt;br /&gt;
 | Debuggen eines Programmes mit gdb&lt;br /&gt;
 | aeichner&lt;br /&gt;
 |&lt;br /&gt;
 | &amp;lt;!-- [[Ckurs2009/BubbleSortDebug/Musterlösung | BubbleSort Debugging]] --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/Debug | Debugging]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |1-8&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |6. VL&lt;br /&gt;
 | Debuggen einer Anwendung nach Wahl&lt;br /&gt;
 | aeichner&lt;br /&gt;
 |&lt;br /&gt;
 | &lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/Code Layout | Code Layout]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |7. VL&lt;br /&gt;
 | Kleinere Codeschipsel mit kleinen Unsauberkeiten&lt;br /&gt;
 | Daniel&lt;br /&gt;
 | [[Benutzer:Tkroenert|TKroenert]] (2010)&lt;br /&gt;
 | &amp;lt;!-- [[Ckurs2009/Code Layout/Musterlösung | Code Layout]] --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/Refactoring | Refactoring]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |5-9&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |7. VL&lt;br /&gt;
 | Wie verbessere ich den Quellcode eines Programmes.&lt;br /&gt;
 | Daniel&lt;br /&gt;
 | &lt;br /&gt;
 | &amp;lt;!-- [[Ckurs2009/Refactoring/Musterlösung | Refactoring]] --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/Cat | Cat]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |6&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |2. VL&lt;br /&gt;
 | Arbeiten mit Dateien&amp;lt;br&amp;gt;Kommandozeilenparameter&lt;br /&gt;
 | nion&lt;br /&gt;
 | sping (2009), &lt;br /&gt;
 | &amp;lt;!-- vorhanden --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/Pong | Pong]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |7&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |9.VL (eigentlich 2.VL)&lt;br /&gt;
 | allgemeiner Programmablauf, fortgeschrittene Konsolenausgaben/eingaben&lt;br /&gt;
 | AlexanderK&lt;br /&gt;
 | seba(2010)&lt;br /&gt;
 | &amp;lt;!-- vorhanden  --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/Buchhaltung | Buchhaltung]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |6&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |5.VL&lt;br /&gt;
 | Lesen aus Dateien&lt;br /&gt;
 | reiner&lt;br /&gt;
 | AndyF (2010)&lt;br /&gt;
 | &lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/StringArraySortieren | StringArraySortieren]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |8&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3. VL&lt;br /&gt;
 | Konsolparameter, Funktionspointer, stdlib&lt;br /&gt;
 | reiner&lt;br /&gt;
 | martin (2010)&lt;br /&gt;
 | &amp;lt;!-- vorhanden --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Ckurs/integral | integral]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |2&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3. VL&lt;br /&gt;
 | Funktionspointer&lt;br /&gt;
 | reiner&lt;br /&gt;
 | [[Benutzer:Tkroenert|TKroenert]] (2010)&lt;br /&gt;
 | &amp;lt;!-- [[Ckurs/integral/Musterlösung | Musterloesung]] --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Ckurs/forschleife | forschleife]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |6. VL&lt;br /&gt;
 | Bug (zum Knobeln)&lt;br /&gt;
 | reiner&lt;br /&gt;
 | nion (2009), [[Benutzer:Tkroenert|TKroenert]] (2010)&lt;br /&gt;
 | &amp;lt;!-- vorhanden --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Ckurs/libgdsl | GDSL]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |5-7&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |9. VL&lt;br /&gt;
 | Anwendung der Generic Data Structures Library&lt;br /&gt;
 | martin&lt;br /&gt;
 | &lt;br /&gt;
 | &lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/StdLib | Standard C Library]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |9. VL&lt;br /&gt;
 | Recherche in der Standard C Bibliothek&lt;br /&gt;
 | martin&lt;br /&gt;
 | &lt;br /&gt;
 |&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Ckurs/Tron | Tron]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |7-9&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |4. VL&lt;br /&gt;
 | SDL (Simple Directmedia Layer) kennen lernen, graphische Ausgabe&lt;br /&gt;
 | seba&lt;br /&gt;
 |&lt;br /&gt;
 | &amp;lt;!-- vorhanden --&amp;gt;&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Ckurs2010/TicTacToe | TicTacToe]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |5-7&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |9. VL&lt;br /&gt;
 | SDL (Simple Directmedia Layer) kennen lernen, graphische Ausgabe&lt;br /&gt;
 | Martin&lt;br /&gt;
 | sdyroff (2010)&lt;br /&gt;
 | &amp;lt;!-- [[Ckurs2010/TicTacToe/Musterlösung | TicTacToe]] --&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Kleine und große Probleme ==&lt;br /&gt;
&lt;br /&gt;
* Die Tubit-Accounts haben nicht /bin/bash als shell, so dass die &amp;lt;strong&amp;gt;Cursortasten&amp;lt;/strong&amp;gt; nicht funktionieren. Workaround: als erstes Kommando &#039;bash&#039; eingeben, man sieht dann auch in welchem Verzeichnis man gerade ist.&lt;br /&gt;
* wenn man nur den Promt &#039;bash-0.12&#039; oder so erhält, also ohne das Verzeichnis in dem man ist, folgendes Kommando eingeben: &amp;lt;tt&amp;gt;export PS1=&#039;\u@\h:\w$ &#039;&amp;lt;/tt&amp;gt; oder zum dauerhaften Speichern: &amp;lt;tt&amp;gt; echo &amp;quot;export PS1=&#039;\u@\h:\w$ &#039;&amp;quot; &amp;gt;&amp;gt; ~/.bashrc &amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Musterlösungen ==&lt;br /&gt;
Die Lösungen zu den Aufgaben werden nach den jeweiligen Übungen hier veröffentlicht. Falls dies nicht geschieht, bitte den zuständigen Tutor fragen.&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [[Ckurs2009/Feedback|Feedback zum Kurs 2009]]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:CKurs]]&lt;br /&gt;
[[Kategorie:CKurs Aufgaben]]&lt;/div&gt;</summary>
		<author><name>130.149.17.37</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=Javakurs/%C3%9Cbungsaufgaben/Kassenbon&amp;diff=13626</id>
		<title>Javakurs/Übungsaufgaben/Kassenbon</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=Javakurs/%C3%9Cbungsaufgaben/Kassenbon&amp;diff=13626"/>
		<updated>2010-03-22T12:09:05Z</updated>

		<summary type="html">&lt;p&gt;130.149.17.37: /* Katrin */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Kassenbon ==&lt;br /&gt;
Es soll ein Programm geschrieben werden, dass einen Kassenbon auf der Konsole anzeigt (mit &#039;&#039;System.out.println&#039;&#039;).&lt;br /&gt;
Am Anfang des Programmes werden in Form von Variablen folgende Werte festgelegt:&lt;br /&gt;
&lt;br /&gt;
* Anzahl von mindestens vier verschiedenen Waren, die gekauft werden sollen.&lt;br /&gt;
* Einzelpreise der Waren. (Ja, jede Warensorte hat einen anderen Preis)&lt;br /&gt;
* Inhalt der Brieftasche.&lt;br /&gt;
&lt;br /&gt;
Das Programm soll den Gesamtpreis der eingangs festgelegten Waren ermitteln. Übersteigt der&lt;br /&gt;
Gesamtpreis den Inhalt der Brieftasche, wird der Benutzer auf den fehlenden Betrag hingewiesen.&lt;br /&gt;
Reicht der Inhalt der Brieftasche für den Einkauf aus, wird ein Kassenbon ausgegeben, der&lt;br /&gt;
die gekauften Waren mit Anzahl und Preis sowie am Ende den Gesamtpreis auflistet.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Hinweis:&#039;&#039;&#039; Erstellt zuerst die Ausgabe des Kassenbons und füllt sie anschließend mit Berechnungen und der Fallunterscheidung.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Beispiel wie ein Kassenbon aussehen könnte:&lt;br /&gt;
&lt;br /&gt;
 Wurst      1 x  4.20 EUR&lt;br /&gt;
                           4.20 EUR&lt;br /&gt;
 Käse       1 x  2.30 EUR&lt;br /&gt;
                           2.30 EUR&lt;br /&gt;
 Brot       1 x  2.10 EUR&lt;br /&gt;
                           2.10 EUR&lt;br /&gt;
 DVD        2 x 12.00 EUR&lt;br /&gt;
                          24.00 EUR&lt;br /&gt;
 ----------------------------------&lt;br /&gt;
 Gesamt                   32.60 EUR&lt;br /&gt;
 Gegeben                  50.00 EUR&lt;br /&gt;
 &lt;br /&gt;
 Zurück                   17.40 EUR&lt;br /&gt;
&lt;br /&gt;
== Kassenbon + automatischer Einkauf ==&lt;br /&gt;
Erstellt eine Kopie eures soeben geschriebenden Programmes.&lt;br /&gt;
Verändert das Programm so, dass nun der Kassenbon solange mit Waren gefüllt wird, bis der&lt;br /&gt;
Inhalt der Brieftasche für keine weiteren Einkäufe ausreicht. Betrachtet der Einfachheit halber&lt;br /&gt;
mehrere Produkte eines Typs als einen Einkauf.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Hinweis:&#039;&#039;&#039; Viele, viele Fallunterscheidungen!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Kommentare ==&lt;br /&gt;
Wenn du Anmerkungen zur Aufgabe hast oder Lob und Kritik loswerden möchtest ist hier die richtige Stelle dafür. Klicke einfach ganz rechts auf &amp;quot;bearbeiten&amp;quot; und schreibe deinen Kommentar direkt ins Wiki. Keine Scheu, es geht nichts kaputt ;) &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Als kleine Starthilfe folgt ein Beispiel wie so ein Kommentar formatiert sein könnte. Mit &amp;quot;Vorschau zeigen&amp;quot; kannst du dir ansehen was deine Änderung bewirken würde, ohne wirklich etwas zu ändern.&lt;br /&gt;
Du musst übrigens außerhalb dieses auskommentieren Bereichs schreiben ;)&lt;br /&gt;
&lt;br /&gt;
==== Robert ====&lt;br /&gt;
Na mal schaun ob irgend jemand diese Funktion wirklich benutzt. Ich fände es jedenfalls toll.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Unknown User ====&lt;br /&gt;
hallo alle freitagsrunde Team, &lt;br /&gt;
&lt;br /&gt;
diese lehrveranstaltung finde ich persönlich super megageil, aber ich wünsche,dass die Musterlösungen von solchen schweren Aufgaben im Netz gestellt werden. &lt;br /&gt;
&lt;br /&gt;
ich wünsche Euch viel Erfolg und weiterso...:-)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Robert ====&lt;br /&gt;
&lt;br /&gt;
Der Eine oder Andere hat darauf bestanden auf seinem Kassenbon keine Hundertstelcent ausgeben zu wollen. Diese entstehen mitunter dadurch, dass Doublewerte mit einer gewissen Toleranz gespeichert werden.&lt;br /&gt;
Hier ein Vorschlag für einen Workaround:&lt;br /&gt;
&lt;br /&gt;
 double kommazahl = 123.290402;&lt;br /&gt;
 	&lt;br /&gt;
 int ganzzahl = (int)kommazahl; // Nachkommastelle abschneiden&lt;br /&gt;
 int kommastelle = (int)(kommazahl * 100)%100 ; // zwei Nachkommastellen extrahieren&lt;br /&gt;
  &lt;br /&gt;
 System.out.println(&amp;quot;Preis=&amp;quot; + ganzzahl + &amp;quot;.&amp;quot; + kommastelle ); // Zahl in der Ausgabe zusammensetzen&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Katrin ===&lt;br /&gt;
&lt;br /&gt;
Wer zusätzlich zu korrekter Rundung rechts ausgerichtete Preise möchte:&lt;br /&gt;
&lt;br /&gt;
kopiere die Datei [[http://user.cs.tu-berlin.de/~langk/Euro.java Euro.java]] in Dein Arbeitsverzeichnis. &lt;br /&gt;
&lt;br /&gt;
Solange diese Datei in demselben Verzeichnis liegt, wie die java-Datei, an der Du arbeitest, stehen Dir der Befehl Euro.format(&amp;lt;preis&amp;gt;, &amp;lt;breite&amp;gt;); zur Verfügung. Wenn dich interessiert, warum das so ist, so erfährst du es [[Javakurs2007/Javamenue | hier]]. Ersetze einfach &amp;lt;preis&amp;gt; mit dem tatsächlichen Preis als double und &amp;lt;breite&amp;gt; mit der Breite des Preises als String inclusive führender Leerzeichen. Ein Euro-Zeichen wird automatisch hinten angefügt.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Ich ====&lt;br /&gt;
Wie ist das gemeint, mit Kassenbon automatisch füllen?&lt;br /&gt;
Man kann doch nicht &amp;quot;zufällig&amp;quot; einkaufen...&lt;br /&gt;
: Die Idee der Aufgabe war es, so lange dasselbe Produkt zu kaufen, wie du kannst. Aber (da am Anfang des Kurses) nicht mit einer Schleife, sondern mit mehreren if&#039;s. -- [[Benutzer:Buchholz|Robert Buchholz]] 02:13, 4. Jun. 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
=== Me2 ===&lt;br /&gt;
Beim Kassenbon oben sollte, wenn ich nicht total falsch bin, 17.40 zurück gegeben werden, ist vielleicht für den ein oder anderen ganz nützlich :)&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Java]]&lt;br /&gt;
[[Kategorie:Java_Aufgaben]]&lt;/div&gt;</summary>
		<author><name>130.149.17.37</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=Javakurs/%C3%9Cbungsaufgaben/Kassenbon&amp;diff=13625</id>
		<title>Javakurs/Übungsaufgaben/Kassenbon</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=Javakurs/%C3%9Cbungsaufgaben/Kassenbon&amp;diff=13625"/>
		<updated>2010-03-22T12:07:56Z</updated>

		<summary type="html">&lt;p&gt;130.149.17.37: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Kassenbon ==&lt;br /&gt;
Es soll ein Programm geschrieben werden, dass einen Kassenbon auf der Konsole anzeigt (mit &#039;&#039;System.out.println&#039;&#039;).&lt;br /&gt;
Am Anfang des Programmes werden in Form von Variablen folgende Werte festgelegt:&lt;br /&gt;
&lt;br /&gt;
* Anzahl von mindestens vier verschiedenen Waren, die gekauft werden sollen.&lt;br /&gt;
* Einzelpreise der Waren. (Ja, jede Warensorte hat einen anderen Preis)&lt;br /&gt;
* Inhalt der Brieftasche.&lt;br /&gt;
&lt;br /&gt;
Das Programm soll den Gesamtpreis der eingangs festgelegten Waren ermitteln. Übersteigt der&lt;br /&gt;
Gesamtpreis den Inhalt der Brieftasche, wird der Benutzer auf den fehlenden Betrag hingewiesen.&lt;br /&gt;
Reicht der Inhalt der Brieftasche für den Einkauf aus, wird ein Kassenbon ausgegeben, der&lt;br /&gt;
die gekauften Waren mit Anzahl und Preis sowie am Ende den Gesamtpreis auflistet.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Hinweis:&#039;&#039;&#039; Erstellt zuerst die Ausgabe des Kassenbons und füllt sie anschließend mit Berechnungen und der Fallunterscheidung.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Beispiel wie ein Kassenbon aussehen könnte:&lt;br /&gt;
&lt;br /&gt;
 Wurst      1 x  4.20 EUR&lt;br /&gt;
                           4.20 EUR&lt;br /&gt;
 Käse       1 x  2.30 EUR&lt;br /&gt;
                           2.30 EUR&lt;br /&gt;
 Brot       1 x  2.10 EUR&lt;br /&gt;
                           2.10 EUR&lt;br /&gt;
 DVD        2 x 12.00 EUR&lt;br /&gt;
                          24.00 EUR&lt;br /&gt;
 ----------------------------------&lt;br /&gt;
 Gesamt                   32.60 EUR&lt;br /&gt;
 Gegeben                  50.00 EUR&lt;br /&gt;
 &lt;br /&gt;
 Zurück                   17.40 EUR&lt;br /&gt;
&lt;br /&gt;
== Kassenbon + automatischer Einkauf ==&lt;br /&gt;
Erstellt eine Kopie eures soeben geschriebenden Programmes.&lt;br /&gt;
Verändert das Programm so, dass nun der Kassenbon solange mit Waren gefüllt wird, bis der&lt;br /&gt;
Inhalt der Brieftasche für keine weiteren Einkäufe ausreicht. Betrachtet der Einfachheit halber&lt;br /&gt;
mehrere Produkte eines Typs als einen Einkauf.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Hinweis:&#039;&#039;&#039; Viele, viele Fallunterscheidungen!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Kommentare ==&lt;br /&gt;
Wenn du Anmerkungen zur Aufgabe hast oder Lob und Kritik loswerden möchtest ist hier die richtige Stelle dafür. Klicke einfach ganz rechts auf &amp;quot;bearbeiten&amp;quot; und schreibe deinen Kommentar direkt ins Wiki. Keine Scheu, es geht nichts kaputt ;) &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Als kleine Starthilfe folgt ein Beispiel wie so ein Kommentar formatiert sein könnte. Mit &amp;quot;Vorschau zeigen&amp;quot; kannst du dir ansehen was deine Änderung bewirken würde, ohne wirklich etwas zu ändern.&lt;br /&gt;
Du musst übrigens außerhalb dieses auskommentieren Bereichs schreiben ;)&lt;br /&gt;
&lt;br /&gt;
==== Robert ====&lt;br /&gt;
Na mal schaun ob irgend jemand diese Funktion wirklich benutzt. Ich fände es jedenfalls toll.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Unknown User ====&lt;br /&gt;
hallo alle freitagsrunde Team, &lt;br /&gt;
&lt;br /&gt;
diese lehrveranstaltung finde ich persönlich super megageil, aber ich wünsche,dass die Musterlösungen von solchen schweren Aufgaben im Netz gestellt werden. &lt;br /&gt;
&lt;br /&gt;
ich wünsche Euch viel Erfolg und weiterso...:-)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Robert ====&lt;br /&gt;
&lt;br /&gt;
Der Eine oder Andere hat darauf bestanden auf seinem Kassenbon keine Hundertstelcent ausgeben zu wollen. Diese entstehen mitunter dadurch, dass Doublewerte mit einer gewissen Toleranz gespeichert werden.&lt;br /&gt;
Hier ein Vorschlag für einen Workaround:&lt;br /&gt;
&lt;br /&gt;
 double kommazahl = 123.290402;&lt;br /&gt;
 	&lt;br /&gt;
 int ganzzahl = (int)kommazahl; // Nachkommastelle abschneiden&lt;br /&gt;
 int kommastelle = (int)(kommazahl * 100)%100 ; // zwei Nachkommastellen extrahieren&lt;br /&gt;
  &lt;br /&gt;
 System.out.println(&amp;quot;Preis=&amp;quot; + ganzzahl + &amp;quot;.&amp;quot; + kommastelle ); // Zahl in der Ausgabe zusammensetzen&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Katrin ===&lt;br /&gt;
&lt;br /&gt;
Wer zusätzlich zu korrekter Rundung rechts ausgerichtete Preise möchte:&lt;br /&gt;
&lt;br /&gt;
kopiere die Datei [[http://user.cs.tu-berlin.de/~langk/Euro.java Euro.java]] in Dein Arbeitsverzeichnis. &lt;br /&gt;
&lt;br /&gt;
Solange diese Datei in demselben Verzeichnis liegt, wie die java-Datei, an der Du arbeitest, stehen Dir der Befehl Euro.format(&amp;lt;preis&amp;gt;, &amp;lt;breite&amp;gt;); zur Verfügung. Wenn dich interessiert, warum das so ist, so erfährst du es [[Javakurs2007/Javamenue | hier]]. Ersetze einfach &amp;lt;preis&amp;gt; mit dem tatsächlichen Preis als double und &amp;lt;breite&amp;gt; mit der Breite des Preises als String inclusive führender Leerzeichen. Ein Euro-Zeichen wird automatisch hinten angefügt.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Ich ====&lt;br /&gt;
Wie ist das gemeint, mit Kassenbon automatisch füllen?&lt;br /&gt;
Man kann doch nicht &amp;quot;zufällig&amp;quot; einkaufen...&lt;br /&gt;
: Die Idee der Aufgabe war es, so lange dasselbe Produkt zu kaufen, wie du kannst. Aber (da am Anfang des Kurses) nicht mit einer Schleife, sondern mit mehreren if&#039;s. -- [[Benutzer:Buchholz|Robert Buchholz]] 02:13, 4. Jun. 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
=== Me2 ===&lt;br /&gt;
Beim Kassenbon oben sollte, wenn ich nicht total falsch bin, 17.40 zurück gegeben werden, ist vielleicht für den ein oder anderen ganz nützlich :)&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Java]]&lt;br /&gt;
[[Kategorie:Java_Aufgaben]]&lt;/div&gt;</summary>
		<author><name>130.149.17.37</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=Javakurs/%C3%9Cbungsaufgaben/Kassenbon&amp;diff=13622</id>
		<title>Javakurs/Übungsaufgaben/Kassenbon</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=Javakurs/%C3%9Cbungsaufgaben/Kassenbon&amp;diff=13622"/>
		<updated>2010-03-22T12:04:51Z</updated>

		<summary type="html">&lt;p&gt;130.149.17.37: /* Kommentare */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Kassenbon ==&lt;br /&gt;
Es soll ein Programm geschrieben werden, dass einen Kassenbon auf der Konsole anzeigt (mit &#039;&#039;System.out.println&#039;&#039;).&lt;br /&gt;
Am Anfang des Programmes werden in Form von Variablen folgende Werte festgelegt:&lt;br /&gt;
&lt;br /&gt;
* Anzahl von mindestens vier verschiedenen Waren, die gekauft werden sollen.&lt;br /&gt;
* Einzelpreise der Waren. (Ja, jede Warensorte hat einen anderen Preis)&lt;br /&gt;
* Inhalt der Brieftasche.&lt;br /&gt;
&lt;br /&gt;
Das Programm soll den Gesamtpreis der eingangs festgelegten Waren ermitteln. Übersteigt der&lt;br /&gt;
Gesamtpreis den Inhalt der Brieftasche, wird der Benutzer auf den fehlenden Betrag hingewiesen.&lt;br /&gt;
Reicht der Inhalt der Brieftasche für den Einkauf aus, wird ein Kassenbon ausgegeben, der&lt;br /&gt;
die gekauften Waren mit Anzahl und Preis sowie am Ende den Gesamtpreis auflistet.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Hinweis:&#039;&#039;&#039; Erstellt zuerst die Ausgabe des Kassenbons und füllt sie anschließend mit Berechnungen und der Fallunterscheidung.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Beispiel wie ein Kassenbon aussehen könnte:&lt;br /&gt;
&lt;br /&gt;
 Wurst      1 x  4.20 EUR&lt;br /&gt;
                           4.20 EUR&lt;br /&gt;
 Käse       1 x  2.30 EUR&lt;br /&gt;
                           2.30 EUR&lt;br /&gt;
 Brot       1 x  2.10 EUR&lt;br /&gt;
                           2.10 EUR&lt;br /&gt;
 DVD        2 x 12.00 EUR&lt;br /&gt;
                          24.00 EUR&lt;br /&gt;
 ----------------------------------&lt;br /&gt;
 Gesamt                   32.60 EUR&lt;br /&gt;
 Gegeben                  50.00 EUR&lt;br /&gt;
 &lt;br /&gt;
 Zurück                   17.40 EUR&lt;br /&gt;
&lt;br /&gt;
== Kassenbon + automatischer Einkauf ==&lt;br /&gt;
Erstellt eine Kopie eures soeben geschriebenden Programmes.&lt;br /&gt;
Verändert das Programm so, dass nun der Kassenbon solange mit Waren gefüllt wird, bis der&lt;br /&gt;
Inhalt der Brieftasche für keine weiteren Einkäufe ausreicht. Betrachtet der Einfachheit halber&lt;br /&gt;
mehrere Produkte eines Typs als einen Einkauf.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Hinweis:&#039;&#039;&#039; Viele, viele Fallunterscheidungen!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Kommentare ==&lt;br /&gt;
Wenn du Anmerkungen zur Aufgabe hast oder Lob und Kritik loswerden möchtest ist hier die richtige Stelle dafür. Klicke einfach ganz rechts auf &amp;quot;bearbeiten&amp;quot; und schreibe deinen Kommentar direkt ins Wiki. Keine Scheu, es geht nichts kaputt ;) &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Als kleine Starthilfe folgt ein Beispiel wie so ein Kommentar formatiert sein könnte. Mit &amp;quot;Vorschau zeigen&amp;quot; kannst du dir ansehen was deine Änderung bewirken würde, ohne wirklich etwas zu ändern.&lt;br /&gt;
Du musst übrigens außerhalb dieses auskommentieren Bereichs schreiben ;)&lt;br /&gt;
&lt;br /&gt;
==== Robert ====&lt;br /&gt;
Na mal schaun ob irgend jemand diese Funktion wirklich benutzt. Ich fände es jedenfalls toll.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Unknown User ====&lt;br /&gt;
hallo alle freitagsrunde Team, &lt;br /&gt;
&lt;br /&gt;
diese lehrveranstaltung finde ich persönlich super megageil, aber ich wünsche,dass die Musterlösungen von solchen schweren Aufgaben im Netz gestellt werden. &lt;br /&gt;
&lt;br /&gt;
ich wünsche Euch viel Erfolg und weiterso...:-)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Robert ====&lt;br /&gt;
&lt;br /&gt;
Der Eine oder Andere hat darauf bestanden auf seinem Kassenbon keine Hundertstelcent ausgeben zu wollen. Diese entstehen mitunter dadurch, dass Doublewerte mit einer gewissen Toleranz gespeichert werden.&lt;br /&gt;
Hier ein Vorschlag für einen Workaround:&lt;br /&gt;
&lt;br /&gt;
 double kommazahl = 123.290402;&lt;br /&gt;
 	&lt;br /&gt;
 int ganzzahl = (int)kommazahl; // Nachkommastelle abschneiden&lt;br /&gt;
 int kommastelle = (int)(kommazahl * 100)%100 ; // zwei Nachkommastellen extrahieren&lt;br /&gt;
  &lt;br /&gt;
 System.out.println(&amp;quot;Preis=&amp;quot; + ganzzahl + &amp;quot;.&amp;quot; + kommastelle ); // Zahl in der Ausgabe zusammensetzen&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Katrin ===&lt;br /&gt;
&lt;br /&gt;
Wer zusätzlich zu korrekter Rundung rechts ausgerichtete Preise möchte:&lt;br /&gt;
&lt;br /&gt;
kopiere die Datei [[http://user.cs.tu-berlin.de/~langk/Euro.java | Euro.java]] in Dein Arbeitsverzeichnis. &lt;br /&gt;
&lt;br /&gt;
Solange diese Datei in demselben Verzeichnis liegt, wie die java-Datei, an der Du arbeitest, stehen Dir der Befehl Euro.format(&amp;lt;preis&amp;gt;, &amp;lt;breite&amp;gt;); zur Verfügung. Wenn dich interessiert, warum das so ist, so erfährst du es [[Javakurs2007/Terminal | hier]]. Ersetze einfach &amp;lt;preis&amp;gt; mit dem tatsächlichen Preis als double und &amp;lt;breite&amp;gt; mit der Breite des Preises als String inclusive führender Leerzeichen. Ein Euro-Zeichen wird automatisch hinten angefügt.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Ich ====&lt;br /&gt;
Wie ist das gemeint, mit Kassenbon automatisch füllen?&lt;br /&gt;
Man kann doch nicht &amp;quot;zufällig&amp;quot; einkaufen...&lt;br /&gt;
: Die Idee der Aufgabe war es, so lange dasselbe Produkt zu kaufen, wie du kannst. Aber (da am Anfang des Kurses) nicht mit einer Schleife, sondern mit mehreren if&#039;s. -- [[Benutzer:Buchholz|Robert Buchholz]] 02:13, 4. Jun. 2007 (CEST)&lt;br /&gt;
&lt;br /&gt;
=== Me2 ===&lt;br /&gt;
Beim Kassenbon oben sollte, wenn ich nicht total falsch bin, 17.40 zurück gegeben werden, ist vielleicht für den ein oder anderen ganz nützlich :)&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Java]]&lt;br /&gt;
[[Kategorie:Java_Aufgaben]]&lt;/div&gt;</summary>
		<author><name>130.149.17.37</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=Javakurs/%C3%9Cbungsaufgaben&amp;diff=13619</id>
		<title>Javakurs/Übungsaufgaben</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=Javakurs/%C3%9Cbungsaufgaben&amp;diff=13619"/>
		<updated>2010-03-22T11:49:15Z</updated>

		<summary type="html">&lt;p&gt;130.149.17.37: /* Die Aufgaben */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Wir haben jeder Aufgabe eine Einschätzung ihrer Schwierigkeit auf einer Skala von 1 bis 10 vorangestellt. Bei dieser Einschätzung sind wir von einem Gehirn ausgegangen, für welches das jeweilige Themengebiet völlig neu ist, das jedoch schon ein ganz gutes Verständnis dafür hat wie eine Programmiersprache denn so funktioniert. &lt;br /&gt;
Entsprechend kann eine schwer bewertete Aufgabe aus einem frühen Themengebiet für manch einen sehr einfach oder eine leicht bewertete aus einem späten Themengebiet für einen anderen sehr schwer sein. Es ist nur ein Wert, der euch helfen soll eure nächste Aufgabe zu wählen. Einen kleinen Überblick zu den Schwierigkeitsgraden findet ihr ganz unten auf dieser Seite.&lt;br /&gt;
&lt;br /&gt;
Falls ihr Anmerkungen zu den Aufgaben habt, könnt ihr die Diskussionsseiten der jeweiligen Aufgaben nutzen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Die Aufgaben ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot; border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;2&amp;quot;&lt;br /&gt;
 |- bgcolor=&amp;quot;#D8D8D8&amp;quot;&lt;br /&gt;
 !Aufgabe&lt;br /&gt;
 !Schwierigkeit&lt;br /&gt;
 !Vorwissen&lt;br /&gt;
 !Lerneffekte&lt;br /&gt;
 ! Überprüfer(Status)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Von der Console zum HelloWorld | Vom Arbeiten mit der Konsole bis &amp;quot;Hallo Welt&amp;quot;]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |2&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |1. VL&lt;br /&gt;
 | Einfaches Arbeiten mit der Kommandozeile &amp;lt;br&amp;gt; Kompilieren und Ausführen von Javacode&lt;br /&gt;
 | seba (okay)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Variablen_und_Zuweisungen | Variablen und Zuweisungen]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |1&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |1. VL&lt;br /&gt;
 | Deklarieren und definieren von Variablen&amp;lt;br&amp;gt;grundlegende Regeln der Codeformatierung&lt;br /&gt;
 | sdyroff (ok)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Cowsay | Cowsay oder &amp;quot;Wie macht die Kuh?&amp;quot;]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |1. VL&lt;br /&gt;
 | etwas mehr Bildschirmausgabe&amp;lt;br&amp;gt;schöne Graphiken&lt;br /&gt;
 | tkroenert (okay)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Kassenbon | Erstellen eines Kassenbons]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |2&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |1. VL&lt;br /&gt;
 | Arbeiten mit Variablen&amp;lt;br&amp;gt;Fallunterscheidungen&lt;br /&gt;
 | AndyF (ok), Katrin (Alignment-Vorgabe hinzugefügt, siehe Kommentar)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Javamenue | Ein eigenes Menü]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |1. VL&lt;br /&gt;
 | Lesen von Benutzereingaben über die Konsole&amp;lt;br&amp;gt;Fallunterscheidungen&lt;br /&gt;
 | sdyroff (ok)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Glücksspiel | Glücksspiel]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |1. VL&lt;br /&gt;
 | Anwenden von Fallunterscheidungen &lt;br /&gt;
 | sdyroff (ok)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Arrays | Quickies Arrays]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |2&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |2. VL&lt;br /&gt;
 | Verwenden von Arrays&lt;br /&gt;
 | andy (okay)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Verschachtelte_Schleifen | Verschachtelte Schleifen]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |2. VL&lt;br /&gt;
 | Umgang mit mehreren verschachtelten Schleifen&lt;br /&gt;
 | andy (okay)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Primzahlenaufgabe | Primzahlen]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |2-5&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |2. VL&lt;br /&gt;
 | Geschicktes Einsetzen von Schleifen und Arrays&lt;br /&gt;
 | andy (okay) &amp;lt;!-- === Andy ==== bei der Primzahl ist teil b leicht schafbar wenn man a gemacht hat deshalb keine musterlösung --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Wetterstation | Wetterstation]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |4&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |2. VL&lt;br /&gt;
 | Schleifen und Arrays&lt;br /&gt;
 | andy (okay)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Geometrie | Geometrie]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |4&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |2. VL&lt;br /&gt;
 | Methoden schreiben&amp;lt;br&amp;gt;schreiben mathematischer Funktionen&lt;br /&gt;
 | AndyF (ok)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Zweierpotenzen | Zweierpotenzen]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |5&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |2. VL&lt;br /&gt;
 | Schleifen und Arrays&lt;br /&gt;
 | andy (okay)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Schleifen_und_Modulo | Schleifen und Modulo]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |5&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |2. VL&lt;br /&gt;
 | Verwendung von Schleifen&amp;lt;br&amp;gt;Benutzung des Modulo-Operators&lt;br /&gt;
 | andy(okay)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Methoden | Quickies zu Methoden]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |2&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3. VL&lt;br /&gt;
 | Verwenden von Methoden&lt;br /&gt;
 | andy (okay)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/MathematischeMethoden | Eigene Methoden]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3. VL&lt;br /&gt;
 | Schreiben eigener Methoden&lt;br /&gt;
 | andy (okay)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Schaltjahr | Schaltjahr]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3. VL&lt;br /&gt;
 | Schreiben von Methoden&amp;lt;br&amp;gt;Fallunterscheidungen&amp;lt;br&amp;gt;Benutzerinteraktion&lt;br /&gt;
 | andy (okay) &amp;lt;!-- === Andy === Zusatzaufgabe keine Musterlösung, ist aber auch einfach zu lösen--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Crack_the_Password | Crack the Password]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |2/3. VL&lt;br /&gt;
 | Passwörter knacken ;-)&lt;br /&gt;
 | seba (okay)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Rekursion_vs._Iteration | Rekursion vs. Iteration]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |5&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3. VL&lt;br /&gt;
 | Fehler finden&lt;br /&gt;
 | mars [ok]&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Lineare_Funktionen | Lineare Funktionen]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |5&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3. VL&lt;br /&gt;
 | Verwendung von Methoden&amp;lt;br&amp;gt;Schleifen und Arrays&lt;br /&gt;
 | mars [ok]&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Fibonacci | Fibonaccizahlen]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |5&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3. VL&lt;br /&gt;
 | Schleifen und Arrays&lt;br /&gt;
 | mars [ok]&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Brainfuck | Brainfuck vs Turingmaschine]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |5&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3. VL&lt;br /&gt;
 | Arbeiten mit Arrays&amp;lt;br&amp;gt;Allgemeinwissen :-)&lt;br /&gt;
 | andy (working on) casten????&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Gau%C3%9F-Algorithmus | Gauß-Algorithmus]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |6&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3. VL&lt;br /&gt;
 | Arrays und Matrizen&lt;br /&gt;
 | sdyroff (ok)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Zahlenumrechner | Zahlenumrechner]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |6&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3. VL&lt;br /&gt;
 | Arbeiten mit Methoden&amp;lt;br&amp;gt;mathematisches Denken&lt;br /&gt;
 | andy (okay)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Javakurs 2007/Democracy | Der Fehler im System]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3. VL&lt;br /&gt;
 | Fehler finden&lt;br /&gt;
 | mars [ok]&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Quersumme | Spaß mit Quersummen]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |5 - 7&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3. VL&lt;br /&gt;
 | Benutzung des Modulo-Operators&amp;lt;br&amp;gt;Auslagern von Funktionalität in Methoden&lt;br /&gt;
 | AndyF (ok)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Appleman | Appleman und Fraktale]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |7&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3. VL&lt;br /&gt;
 | Schleifen, Umgang mit Fließkommazahlen&lt;br /&gt;
 | AndyF (ok), ÜBB-Link fixed(Jörg)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/DiffusionLimitedAggregation | Diffusion Limited Aggregation]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |5&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3. VL&lt;br /&gt;
 | 2-dimensionale Arrays, Methoden, Schleifen&lt;br /&gt;
 | Dirk (dabei)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Palindrome | Palindrome]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |3&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |4. VL&lt;br /&gt;
 | Entwurf von Programmen&amp;lt;br&amp;gt;Parameterübergabe beim Programmaufruf&lt;br /&gt;
 | Jörg (okay)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Hangman | Hangman]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |5&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |4. VL&lt;br /&gt;
 | Entwurf von Programmen&amp;lt;br&amp;gt;Arbeiten mit Methoden&lt;br /&gt;
 | Jörg (okay)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/SelectionSort | Selection Sort]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |5&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |4. VL&lt;br /&gt;
 | Verstehen von komplexeren Algorithmen&amp;lt;br&amp;gt;Schleifen und Arrays&amp;lt;br&amp;gt;(Hilfs-)Methoden&lt;br /&gt;
 | Jörg (okay)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Cäsar-Chiffre | Chiffrierung/Dechiffrierung (Cäsar)]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |9&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |4. VL&lt;br /&gt;
 | eigenständiges Problemlösen. &amp;lt;br&amp;gt; Alle Konzepte des Kurses&lt;br /&gt;
 | mars [ok]&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Abzaehlspiel | Abzählspiel]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |7&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |4. VL&lt;br /&gt;
 | Analyse von Aufgabenstellungen&amp;lt;br&amp;gt;Entwurf eines komplexen Programms von Grund auf&lt;br /&gt;
 | alexK (dabei)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Javakurs2006/Rennschnecke | Schneckenrennen]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |4&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |5. VL&lt;br /&gt;
 | Objektorientierte Programmierung&lt;br /&gt;
 | seba(dabei)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Studentendatenbank_LE5 | Studentendatenbank]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |4&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |5. VL&lt;br /&gt;
 | Vertiefung in objektorientiertes Programmieren&lt;br /&gt;
 | seba (okay)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Multiarray| Mehrdimensionale Arrays]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |10&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |5. VL&lt;br /&gt;
 | Methoden, Schleifen, Arrays&amp;lt;br&amp;gt;Objektorientierung&lt;br /&gt;
 | Katrin (dabei)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Canvas | Virtuelles Canvas mit 3D-Objekten]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |5&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |6. VL&lt;br /&gt;
 | Arbeiten mit Methoden&amp;lt;br&amp;gt;mathematisches Denken&lt;br /&gt;
 | alexK (ok)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Doom | ASCII DOOM ]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |8&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |6. VL&lt;br /&gt;
 | Vertiefung in objektorientierte Programmierung&amp;lt;br&amp;gt;Benutzung der Java-API&lt;br /&gt;
 | Mario (ok)&lt;br /&gt;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/Textwordcount | Texte lesen und analysieren]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |7&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; |6. VL&lt;br /&gt;
 | eigenständiges Problemlösen&lt;br /&gt;
 | Dirk (dabei)&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Schwierigkeitsgrade ==&lt;br /&gt;
&lt;br /&gt;
#  Reines Tutorial. Man muss nicht viel selbst denken&lt;br /&gt;
#  ...&lt;br /&gt;
#  Leichte Übungsaufgabe. Studies, die noch eher unsicher sind werden hier gut begleitet.&lt;br /&gt;
#  ...&lt;br /&gt;
#  Typische Aufgabe. Man muss den Kopf benutzen, bekommt an schwierigen Stellen aber Hilfestellungen.&lt;br /&gt;
#  ...&lt;br /&gt;
#  Herausfordernd, eher etwas für Studies die etwas fitter sind.&lt;br /&gt;
#  ...&lt;br /&gt;
#  Auch erfahrene Programmierer weden hier ein bis zwei Übungen beschäftigt sein&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
#  Tja, die Idee war da. Wir finden sie auch gut, aber es könnte wirklich anstrengend werden.&lt;br /&gt;
&lt;br /&gt;
== Kleine und große Probleme ==&lt;br /&gt;
&lt;br /&gt;
- Die Tubit-Accounts haben nicht /bin/bash als shell, so dass die &amp;lt;strong&amp;gt;Cursortasten&amp;lt;/strong&amp;gt; nicht funktionieren. Workaround: als erstes Kommando &#039;bash&#039; eingeben, man sieht dann auch in welchem Verzeichnis man gerade ist.&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [[Javakurs_2010/Feedback|Feedback zum Kurs 2010]]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Java]]&lt;br /&gt;
[[Kategorie:Java_Aufgaben]]&lt;/div&gt;</summary>
		<author><name>130.149.17.37</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=Javakurs/%C3%9Cbungsaufgaben/Kassenbon&amp;diff=9474</id>
		<title>Javakurs/Übungsaufgaben/Kassenbon</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=Javakurs/%C3%9Cbungsaufgaben/Kassenbon&amp;diff=9474"/>
		<updated>2008-04-07T10:00:28Z</updated>

		<summary type="html">&lt;p&gt;130.149.17.37: /* Robert */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Kassenbon ==&lt;br /&gt;
Es soll ein Programm geschrieben werden, dass einen Kassenbon auf der Konsole anzeigt (mit &#039;&#039;System.out.println&#039;&#039;).&lt;br /&gt;
Am Anfang des Programmes werden in Form von Variablen folgende Werte festgelegt:&lt;br /&gt;
&lt;br /&gt;
* Anzahl von mindestens vier verschiedenen Waren, die gekauft werden sollen.&lt;br /&gt;
* Einzelpreise der Waren. (Ja, jede Warensorte hat einen anderen Preis)&lt;br /&gt;
* Inhalt der Brieftasche.&lt;br /&gt;
&lt;br /&gt;
Das Programm soll den Gesamtpreis der eingangs festgelegten Waren ermitteln. Übersteigt der&lt;br /&gt;
Gesamtpreis den Inhalt der Brieftasche, wird der Benutzer auf den fehlenden Betrag hingewiesen.&lt;br /&gt;
Reicht der Inhalt der Brieftasche für den Einkauf aus, wird ein Kassenbon ausgegeben, der&lt;br /&gt;
die gekauften Waren mit Anzahl und Preis sowie am Ende den Gesamtpreis auflistet.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Hinweis:&#039;&#039;&#039; Erstellt zuerst die Ausgabe des Kassenbons und füllt sie anschließend mit Berechnungen und der Fallunterscheidung.&lt;br /&gt;
&lt;br /&gt;
== Kassenbon + automatischer Einkauf ==&lt;br /&gt;
Erstellt eine Kopie eures soeben geschriebenden Programmes.&lt;br /&gt;
Verändert das Programm so, dass nun der Kassenbon solange mit Waren gefüllt wird, bis der&lt;br /&gt;
Inhalt der Brieftasche für keine weiteren Einkäufe ausreicht. Betrachtet der Einfachheit halber&lt;br /&gt;
mehrere Produkte eines Typs als einen Einkauf.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Hinweis:&#039;&#039;&#039; Viele, viele Fallunterscheidungen!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Kommentare ==&lt;br /&gt;
Wenn du Anmerkungen zur Aufgabe hast oder Lob und Kritik loswerden möchtest ist hier die richtige Stelle dafür. Klicke einfach ganz rechts auf &amp;quot;bearbeiten&amp;quot; und schreibe deinen Kommentar direkt ins Wiki. Keine Scheu, es geht nichts kaputt ;) &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Als kleine Starthilfe folgt ein Beispiel wie so ein Kommentar formatiert sein könnte. Mit &amp;quot;Vorschau zeigen&amp;quot; kannst du dir ansehen was deine Änderung bewirken würde, ohne wirklich etwas zu ändern.&lt;br /&gt;
Du musst übrigens außerhalb dieses auskommentieren Bereichs schreiben ;)&lt;br /&gt;
&lt;br /&gt;
==== Robert ====&lt;br /&gt;
Na mal schaun ob irgend jemand diese Funktion wirklich benutzt. Ich fände es jedenfalls toll.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Unknown User ====&lt;br /&gt;
hallo alle freitagsrunde Team, &lt;br /&gt;
&lt;br /&gt;
diese lehrveranstaltung finde ich persönlich super megageil, aber ich wünsche,dass die Musterlösungen von solchen schweren Aufgaben im Netz gestellt werden. &lt;br /&gt;
&lt;br /&gt;
ich wünsche Euch viel Erfolg und weiterso...:-)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Robert ====&lt;br /&gt;
&lt;br /&gt;
Der Eine oder Andere hat darauf bestanden auf seinem Kassenbon keine Hundertstelcent ausgeben zu wollen. Diese entstehen mitunter dadurch, dass Doublewerte mit einer gewissen Toleranz gespeichert werden.&lt;br /&gt;
Hier ein Vorschlag für einen Workaround:&lt;br /&gt;
&lt;br /&gt;
 double kommazahl = 123.290402;&lt;br /&gt;
 	&lt;br /&gt;
 int ganzzahl = (int)kommazahl; // Nachkommastelle abschneiden&lt;br /&gt;
 int kommastelle = (int)(kommazahl * 100)%100 ; // zwei Nachkommastellen extrahieren&lt;br /&gt;
  &lt;br /&gt;
 System.out.println(&amp;quot;Preis=&amp;quot; + ganzzahl + &amp;quot;.&amp;quot; + kommastelle ); // Zahl in der Ausgabe zusammensetzen&lt;br /&gt;
&lt;br /&gt;
==== Ich ====&lt;br /&gt;
Wie ist das gemeint, mit Kassenbon automatisch füllen?&lt;br /&gt;
Man kann doch nicht &amp;quot;zufällig&amp;quot; einkaufen...&lt;br /&gt;
: Die Idee der Aufgabe war es, so lange dasselbe Produkt zu kaufen, wie du kannst. Aber (da am Anfang des Kurses) nicht mit einer Schleife, sondern mit mehreren if&#039;s. -- [[Benutzer:Buchholz|Robert Buchholz]] 02:13, 4. Jun. 2007 (CEST)&lt;/div&gt;</summary>
		<author><name>130.149.17.37</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=Javakurs2008&amp;diff=10618</id>
		<title>Javakurs2008</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=Javakurs2008&amp;diff=10618"/>
		<updated>2008-04-07T09:45:28Z</updated>

		<summary type="html">&lt;p&gt;130.149.17.37: vistainstaller-bug&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h1&amp;gt;Vorlesungen am 1. Tag: H1058&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&#039;&#039;&#039;[[Javakurs2008/Übungspool | --&amp;gt; Zu den Übungsaufgaben &amp;lt;-- ]]&#039;&#039;&#039;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Links ====&lt;br /&gt;
* [[Javakurs2006/Probleme]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;4&amp;quot; cellspacing=&amp;quot;2&amp;quot;&lt;br /&gt;
 |- bgcolor=&amp;quot;#D8D8D8&amp;quot;&lt;br /&gt;
 !Zeit&lt;br /&gt;
 !Mo&lt;br /&gt;
 !Di&lt;br /&gt;
 !Mi&lt;br /&gt;
 !Do&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 |9:00 [[C.t.]]&lt;br /&gt;
 |bgcolor=&amp;quot;#E8E8E8&amp;quot; |[[Javakurs2008/Vortrag01 | Vortrag]] (H 1058)&lt;br /&gt;
 |bgcolor=&amp;quot;#E8E8E8&amp;quot; |[[Javakurs2008/Vortrag03 | Vortrag]] (H 1058)&lt;br /&gt;
 |bgcolor=&amp;quot;#E8E8E8&amp;quot; |[[Javakurs2008/Vortrag04 | Vortrag]] (MA 004)&lt;br /&gt;
 |bgcolor=&amp;quot;#E8E8E8&amp;quot; |[[Javakurs2008/Vortrag06 | Vortrag]] (MA 004)&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 |10:00&lt;br /&gt;
 |rowspan=2 |Übung&lt;br /&gt;
 |rowspan=2 |Übung&lt;br /&gt;
 |rowspan=2 |Übung&lt;br /&gt;
 |rowspan=2 |Übung&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 |11.00&lt;br /&gt;
 |- bgcolor=&amp;quot;#FFFFFF&amp;quot;&lt;br /&gt;
 |12:00&lt;br /&gt;
 |Mittagspause&lt;br /&gt;
 |Mittagspause&lt;br /&gt;
 |Mittagspause&lt;br /&gt;
 |Mittagspause&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 |13:00 [[C.t.]]&lt;br /&gt;
 |[[Javakurs2008/Vortrag02 | Vortrag]] (H 1058)&lt;br /&gt;
 | bgcolor=&amp;quot;#F5F5F5&amp;quot; rowspan=3 |Übung&lt;br /&gt;
 |[[Javakurs2008/Vortrag05 | Vortrag]] (MA 004)&lt;br /&gt;
 | bgcolor=&amp;quot;#F5F5F5&amp;quot; rowspan=3 |Übung&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 |14:00&lt;br /&gt;
 |rowspan=2 | Übung&lt;br /&gt;
 |rowspan=2 | Übung&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 |15:00&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Herzlich Willkommen beim Java-Kurs der Freitagsrunde!====&lt;br /&gt;
&lt;br /&gt;
Dieses Jahr veranstalten wir wieder einen Einführungskurs in die imperative Programmierung mit Java.&lt;br /&gt;
Hauptzielgruppe des Kurses sind Studierende der Informatik, welche gerade im Begriff sind das zweite Semester zu beginnen. Es wird von uns allerdings kein Wissen in Java-Programmierung vorausgesetzt und Studierende anderer Studiengänge sind ebenfalls herzlich willkommen.&lt;br /&gt;
&lt;br /&gt;
Der Kurs beruht ursprünglich auf der Initiative einiger StudentInnen und wissenschaftlicher Mitarbeiter. Er ist aus der Erfahrung entstanden, dass viele Informatiker in den Übungsaufgaben des 2. Semesters nicht unbedingt Probleme mit dem Stoff des Semesters selbst haben, sich jedoch sehr beim Erlernen der Javaprogrammierung quälen. &lt;br /&gt;
&lt;br /&gt;
Was ursprünglich als rein ehrenamtliches Projekt begonnen hat wird mittlerweile vom OWL-Programm der TU-Berlin gefördert. Der Kurs wird wie im letzten Jahr komplett von engagierten StudentInnen geplant und durchgeführt. Insgesamt stehen euch in den Übungen zwanzig TutorInnen mit Rat und Tat zur Seite, im Schnitt also einer für fünf Studentierende. Aus den Reihen der TutorInnen rekrutieren sich auch unsere zwölf Vortragenden in den Vorlesungen. Wenige von uns haben schon einmal eine Vorlesung gehalten, um so mehr Vorbereitung und Mühe steckt jedoch in jeder Einzelnen ;)&lt;br /&gt;
&lt;br /&gt;
Der Kurs kann in der Kürze der Zeit bei weitem nicht alle Aspekte von Java beleuchten, hierfür sind die Lehrveranstaltungen da. Er stellt jedoch eine gute Starthilfe dar und hilft vor allem StudentInnen denen der Umgang mit Programmiersprachen noch ein wenig fremd ist.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Es gibt für diesen Kurs keinerlei Scheine.&#039;&#039;&#039; &amp;lt;br&amp;gt;&lt;br /&gt;
Es gibt auch keinerlei Anwesenheitspflicht. Dementsprechend entspannt ist allerdings auch die Atmosphäre.&lt;br /&gt;
&lt;br /&gt;
== Termine ==&lt;br /&gt;
&lt;br /&gt;
07. April bis 10. April 2008, jeweils von ca. 9 bis 16 Uhr. Weitere Daten folgen im Laufe der Zeit, sobald die Planungen unsererseits stehen ...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Übungen ==&lt;br /&gt;
Die betreuten Übungen werden im [[Franklingebäude]] (FR) stattfinden, und zwar in den Rechnerräumen FR5539, FR5538, FR5535, FR5514, FR2516 und FR2517. Es soll für jeden Teilnehmer ein eigener Computerarbeitsplatz vorhanden sein.&lt;br /&gt;
&lt;br /&gt;
Wir werden jedem Teilnehmer zu Beginn des Kurses einen Arbeitsraum zuteilen. Wenn dadurch Arbeitsgruppen getrennt werden oder euch die Nase des jeweiligen Tutors nicht gefällt, könnt ihr, sofern genügend Arbeitsplätze vorhanden sind, die Räume wechseln. &lt;br /&gt;
Die anfängliche Raumeinteilung werden wir euch per Mail zusenden. Sie wird nach den Vorlesungen jedoch auch noch einmal in Papierform ausliegen.&lt;br /&gt;
&lt;br /&gt;
Um im Rechnernetz arbeiten zu können, benötigt ihr einen [[IRB|CS-Account]] den ihr euch als Student der TU-Berlin im [http://www.irb.cs.tu-berlin.de/leitfaden/antrag-rechnernutzung.html IRB] einrichten lassen könnt. Informatiker haben das zu Beginn ihres Studiums sowieso schon getan.&lt;br /&gt;
Solltet ihr keinen CS-Account haben, so meldet euch im Raum 5535. Notfalls kann natürlich auch mit einem mitgebrachten Notebook gearbeitet werden. Es sollte jedoch bereits [http://java.sun.com/javase/downloads/index.jsp Java JDK 1.5 oder höher] installiert sein.&lt;br /&gt;
&lt;br /&gt;
=== Übungsablauf ===&lt;br /&gt;
&lt;br /&gt;
Wir sind große Verfechter des selbstorganisierten Lernens. Jeder Teilnehmer hat einen anderen Kenntnisstand und eine andere Lerngeschwindigkeit. Aus diesem Grund gibt es keinen von uns vorgegebenen Übungsplan, sondern lediglich einen Pool von Übungsaufgaben, aus denen ihr selbst wählen könnt, was ihr für euch am Sinnvollsten haltet.&lt;br /&gt;
&#039;&#039;&#039;Versucht nicht, alle Aufgaben zu lösen! Wir haben absichtlich mehr produziert, als ihr schaffen könnt.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Um euch die Wahl zu erleichtern, haben wir die Aufgaben mit Vermerken zu ihrer Schwierigkeit versehen. &lt;br /&gt;
Wenn ihr euch unsicher seid, was ihr als nächstes machen sollt, fragt einfach euren Tutor um Rat.&lt;br /&gt;
&lt;br /&gt;
Wenn ihr irgendwann bei den späteren Vorträgen aussteigen solltet, ist das kein Grund zur Sorge. Übt einfach in der Geschwindigkeit weiter, die für euch angenehm ist. Wenn ihr den Stoff der ersten drei Vorträge anwenden könnt, habt ihr eigentlich schon gewonnen. Viel Spaß!&lt;br /&gt;
&lt;br /&gt;
=== Externe Studierende ===&lt;br /&gt;
Aufgrund dieser Organisiation der Übungen ist es nötig, das ihr eine Möglichkeit habt, Java Code zu schreiben. Dies kann entweder über den eigenen IRB-Account, oder aber mittels eines eigenen Laptops gehen. Falls ihr aus einer anderen Universität kommt und keinen Laptop habt, so gibt es die Möglichkeit euch temporäre Accounts für den Javakurs zu erstellen. Siehe dazu [[Javakurs2008/Externe|externe Studierende]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Anmeldung ==&lt;br /&gt;
&lt;br /&gt;
Zur Anmeldung kommt wieder unser bewährtes Double-Opt-In-Freitagsrunden-Anmelde-Script  (DOIFAS) zum Einsatz:&lt;br /&gt;
&lt;br /&gt;
* per http: [http://www.freitagsrunde.org/~florian/javakurs2008/anmeldung http://www.freitagsrunde.org/~florian/javakurs2008/anmeldung]&lt;br /&gt;
* per https: [https://www.freitagsrunde.org/~florian/javakurs2008/anmeldung https://www.freitagsrunde.org/~florian/javakurs2008/anmeldung]&lt;br /&gt;
&lt;br /&gt;
Die Anmeldung muss bis spätestens 4.4.08 erfolgt sein.&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* [http://java.sun.com/j2se/1.5.0/docs/api/ Java API 1.5] (wird in LE3 erklärt)&lt;br /&gt;
* [http://javadocs.org/ Seite zum Suchen in der API]&lt;br /&gt;
* [[Javakurs2006/Java_Kurzreferenz | Java Kurzreferenz]] (zum Lesen in den Pausen)&lt;br /&gt;
* [http://wiki.freitagsrunde.org/Javakurs2007/Errors Hilfe bei Fehlermeldungen]&lt;br /&gt;
&lt;br /&gt;
== Java-Download ==&lt;br /&gt;
* http://java.sun.com/javase/downloads/index.jsp (JDK = Development Kit)&lt;br /&gt;
&lt;br /&gt;
Ihr braucht das JDK (Java Development Kit), z.B. &amp;quot;JDK 6 Update 5&amp;quot; - die vorgängerversion, also &#039;Java5&#039; bzw. 1.5 reicht aber auch völlig aus.&lt;br /&gt;
&lt;br /&gt;
HINWEIS: Es wurde beobachtet, dass der Installer von Sun beim JDK 6 Update 5 unter Vista das Development-kit, also die javac.exe NICHT installiert, wenn man den Installationspfad aendert!&lt;br /&gt;
&lt;br /&gt;
== Freie Literatur ==&lt;br /&gt;
* [http://www.codeguru.com/java/tij/tij_c.shtml Thinking in Java]&lt;br /&gt;
* [http://www.galileocomputing.de/openbook/javainsel5/ Java ist auch eine Insel]&lt;br /&gt;
&lt;br /&gt;
== Orga ==&lt;br /&gt;
* [[Javakurs2008/Tutorenportal Javakurs 2008]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie: Veranstaltungen der Freitagsrunde]]&lt;/div&gt;</summary>
		<author><name>130.149.17.37</name></author>
	</entry>
</feed>