<?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.52</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.52"/>
	<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//Spezial:Beitr%C3%A4ge/130.149.17.52"/>
	<updated>2026-10-29T19:48:33Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.45.6</generator>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=Javakurs/%C3%9Cbungsaufgaben&amp;diff=13671</id>
		<title>Javakurs/Übungsaufgaben</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=Javakurs/%C3%9Cbungsaufgaben&amp;diff=13671"/>
		<updated>2010-03-23T15:34:26Z</updated>

		<summary type="html">&lt;p&gt;130.149.17.52: /* 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;
 !Musterlösung&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;
&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;
&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;
&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;
&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;
&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;
&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;
 | [[Javakurs2007/Arrays/Musterloesung | Musterlösung Quickies Arrays]]&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;
&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;
&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;
&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;
&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;
&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;
&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;
&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&amp;quot;&lt;br /&gt;
 | [[Javakurs2007/MathematischeMethoden | Mathematische 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;
&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;
&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;
&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;
&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;
&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;
&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;
&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;
&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;
&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;
&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;
&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;
&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;
&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;
&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;
&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;
&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;
&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;
&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;
&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;
&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;
&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;
&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;
&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;
&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.52</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=Diskussion:Einf%C3%BChrungswoche_2009/seidaktiv&amp;diff=12732</id>
		<title>Diskussion:Einführungswoche 2009/seidaktiv</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=Diskussion:Einf%C3%BChrungswoche_2009/seidaktiv&amp;diff=12732"/>
		<updated>2009-10-14T11:16:33Z</updated>

		<summary type="html">&lt;p&gt;130.149.17.52: /* unirally */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Bitte drückt jetzt auf das Plus, damit ihr einen Kommentar hinterlasst. Damit wir wissen, wer diesen Kommentar geschrieben hat, schreibt bitte das gleiche auch auf eure Abgabe. &lt;br /&gt;
&lt;br /&gt;
== Kommentar ==&lt;br /&gt;
&lt;br /&gt;
Hallo liebe Erstsemester! --[[Benutzer:Mario|Mario]] 16:33, 13. Okt. 2009 (CEST)&lt;br /&gt;
&lt;br /&gt;
== Uni rallye ==&lt;br /&gt;
&lt;br /&gt;
God save the Chancelor of Germany&lt;br /&gt;
&lt;br /&gt;
== uniralley ==&lt;br /&gt;
&lt;br /&gt;
good night, and good luck!&lt;br /&gt;
&lt;br /&gt;
Grüße aus dem TuBitLaden von Konstantin und Rafael auf UniRallye 2009&lt;br /&gt;
&lt;br /&gt;
Wie viel Sitzplätze hat der Audimax?&lt;br /&gt;
&lt;br /&gt;
Die Gewinner waren schon da. Viel Glück noch. Koffein wir kommen.&lt;br /&gt;
&lt;br /&gt;
== Uni Rally ==&lt;br /&gt;
&lt;br /&gt;
hehe leptop bei gehabt...premnitz grüßt berlin&lt;br /&gt;
&lt;br /&gt;
== Unirallye ==&lt;br /&gt;
&lt;br /&gt;
Hack the Planet!&lt;br /&gt;
Oder auch die Unirallye...&lt;br /&gt;
&lt;br /&gt;
_\\// (Vulkanier ascii art)&lt;br /&gt;
&lt;br /&gt;
== Unirallye 2099 ==&lt;br /&gt;
&lt;br /&gt;
lalalalalala&lt;br /&gt;
&lt;br /&gt;
http://www.youtube.com/watch?v=RHLa2K8ikAc&lt;br /&gt;
&lt;br /&gt;
== unirallye ==&lt;br /&gt;
&lt;br /&gt;
abc&lt;/div&gt;</summary>
		<author><name>130.149.17.52</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=Diskussion:Einf%C3%BChrungswoche_2009/seidaktiv&amp;diff=12731</id>
		<title>Diskussion:Einführungswoche 2009/seidaktiv</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=Diskussion:Einf%C3%BChrungswoche_2009/seidaktiv&amp;diff=12731"/>
		<updated>2009-10-14T11:16:13Z</updated>

		<summary type="html">&lt;p&gt;130.149.17.52: Neuer Abschnitt /* unirally */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Bitte drückt jetzt auf das Plus, damit ihr einen Kommentar hinterlasst. Damit wir wissen, wer diesen Kommentar geschrieben hat, schreibt bitte das gleiche auch auf eure Abgabe. &lt;br /&gt;
&lt;br /&gt;
== Kommentar ==&lt;br /&gt;
&lt;br /&gt;
Hallo liebe Erstsemester! --[[Benutzer:Mario|Mario]] 16:33, 13. Okt. 2009 (CEST)&lt;br /&gt;
&lt;br /&gt;
== Uni rallye ==&lt;br /&gt;
&lt;br /&gt;
God save the Chancelor of Germany&lt;br /&gt;
&lt;br /&gt;
== uniralley ==&lt;br /&gt;
&lt;br /&gt;
good night, and good luck!&lt;br /&gt;
&lt;br /&gt;
Grüße aus dem TuBitLaden von Konstantin und Rafael auf UniRallye 2009&lt;br /&gt;
&lt;br /&gt;
Wie viel Sitzplätze hat der Audimax?&lt;br /&gt;
&lt;br /&gt;
Die Gewinner waren schon da. Viel Glück noch. Koffein wir kommen.&lt;br /&gt;
&lt;br /&gt;
== Uni Rally ==&lt;br /&gt;
&lt;br /&gt;
hehe leptop bei gehabt...premnitz grüßt berlin&lt;br /&gt;
&lt;br /&gt;
== Unirallye ==&lt;br /&gt;
&lt;br /&gt;
Hack the Planet!&lt;br /&gt;
Oder auch die Unirallye...&lt;br /&gt;
&lt;br /&gt;
_\\// (Vulkanier ascii art)&lt;br /&gt;
&lt;br /&gt;
== Unirallye 2099 ==&lt;br /&gt;
&lt;br /&gt;
lalalalalala&lt;br /&gt;
&lt;br /&gt;
http://www.youtube.com/watch?v=RHLa2K8ikAc&lt;br /&gt;
&lt;br /&gt;
== unirally ==&lt;br /&gt;
&lt;br /&gt;
abc&lt;/div&gt;</summary>
		<author><name>130.149.17.52</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=C-Kurs/%C3%9Cbungsaufgaben&amp;diff=12512</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=12512"/>
		<updated>2009-09-22T13:13:30Z</updated>

		<summary type="html">&lt;p&gt;130.149.17.52: /* 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;
{| 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;
 !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]]&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&lt;br /&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;
 | &lt;br /&gt;
 | [[Ckurs2009/Base64/Musterlösung | Base64]]&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&lt;br /&gt;
 | [[Ckurs2009/EingabeAusgabe/Musterlösung | Ein- und Ausgabe]]&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]]&lt;br /&gt;
 | [[Ckurs2009/Taschenrechner/Musterlösung | Taschenrechner]]&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&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&lt;br /&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)&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.&lt;br /&gt;
 | [[Ckurs2009/Taschenrechner2.0/Musterlösung | Taschenrechner &#039;&#039;2.0&#039;&#039;]]&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&lt;br /&gt;
 | [[Ckurs2009/Call by reference/Musterlösung | Call by reference]]&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&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]]&lt;br /&gt;
 | [[Ckurs2009/Text processing/Musterlösung | Text processing]]&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&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;
 |&lt;br /&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;
 |&lt;br /&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]]&lt;br /&gt;
 | [[Ckurs2009/Matrizenmultiplikation/Musterlösung | Matrizenmultiplikation]]&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&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.&lt;br /&gt;
 | vorhanden&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&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;
 |&lt;br /&gt;
 | vorhanden&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;
 | Florian S.&lt;br /&gt;
 | [[Benutzer:Mario|Mario]]&lt;br /&gt;
 | Teilweise vorhanden&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;
 | &lt;br /&gt;
 | vorhanden&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&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;
 | &lt;br /&gt;
 | siehe Folien&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&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;
 | &lt;br /&gt;
 |&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&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;
 | &lt;br /&gt;
 |&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&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;
 | vorhanden&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&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; | ....&lt;br /&gt;
 | Arbeiten mit Dateien&amp;lt;br&amp;gt;Kommandozeilenparameter&lt;br /&gt;
 | nion&lt;br /&gt;
 | sping&lt;br /&gt;
 | vorhanden&lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&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; | ...&lt;br /&gt;
 | allgemeiner Programmablauf, fortgeschrittene Konsolenausgaben/eingaben&lt;br /&gt;
 | AlexanderK&lt;br /&gt;
 |&lt;br /&gt;
 | vorhanden &lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&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; | ....&lt;br /&gt;
 | Lesen aus Dateien&lt;br /&gt;
 | reiner&lt;br /&gt;
 | &lt;br /&gt;
 | &lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Ckurs2009/StringArraySortieren | StringArraySortieren]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; | 7&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; | ...&lt;br /&gt;
 | Konsolparameter, Funktionspointer, stdlib&lt;br /&gt;
 | reiner&lt;br /&gt;
 |&lt;br /&gt;
 | vorhanden&lt;br /&gt;
 |- bgcolor=&amp;quot;#E8E8E8&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; | ....&lt;br /&gt;
 | Funktionspointer&lt;br /&gt;
 | reiner&lt;br /&gt;
 | &lt;br /&gt;
 | &lt;br /&gt;
 |- bgcolor=&amp;quot;#F5F5F5&amp;quot;&lt;br /&gt;
 | [[Ckurs/forschleife | forschleife]]&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; | 2&lt;br /&gt;
 | align=&amp;quot;center&amp;quot; | ...&lt;br /&gt;
 | Bug&lt;br /&gt;
 | reiner&lt;br /&gt;
 | nion&lt;br /&gt;
 | vorhanden&lt;br /&gt;
 | &lt;br /&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;
 | Bug&lt;br /&gt;
 | aeichner&lt;br /&gt;
 |&lt;br /&gt;
 | vorhanden&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.52</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=C-Kurs/Code_Layout&amp;diff=12511</id>
		<title>C-Kurs/Code Layout</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=C-Kurs/Code_Layout&amp;diff=12511"/>
		<updated>2009-09-22T13:11:57Z</updated>

		<summary type="html">&lt;p&gt;130.149.17.52: /* Aufgabenstellung */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Aufgabenstellung =&lt;br /&gt;
&lt;br /&gt;
In dieser Aufgabe sind einige Codeschnipsel gegeben die zwar funktionieren, aber etwas unübersichtlich oder umständlich geschrieben sind. Deine Aufgabe ist es diese so um zu schreiben, dass sie übersichtlicher und einfacher sind. Vergleiche die Ergebnisse mit deinem Nachbarn und sprecht über eure Ergebnisse.&lt;br /&gt;
&lt;br /&gt;
== fac.c ==&lt;br /&gt;
&lt;br /&gt;
Die Fakultät kann auch Rekursiv berechnet werden, allerdings könnte man das auch bequem in zwei Zeilen machen, ohne dabei unübersichtlich zu werden.&lt;br /&gt;
&lt;br /&gt;
 int faculty(int n){&lt;br /&gt;
   if (n &amp;lt; 2) return 1;&lt;br /&gt;
 &lt;br /&gt;
   if(n == 2)&lt;br /&gt;
   {&lt;br /&gt;
       return 2;&lt;br /&gt;
   } else {&lt;br /&gt;
     int m;&lt;br /&gt;
     m = n*faculty(n-1);&lt;br /&gt;
     return m;&lt;br /&gt;
   }&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
= Kommentare =&lt;/div&gt;</summary>
		<author><name>130.149.17.52</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=C-Kurs/Refactoring&amp;diff=12510</id>
		<title>C-Kurs/Refactoring</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=C-Kurs/Refactoring&amp;diff=12510"/>
		<updated>2009-09-22T13:02:26Z</updated>

		<summary type="html">&lt;p&gt;130.149.17.52: /* Schritt 1 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Teil 1 =&lt;br /&gt;
&lt;br /&gt;
Das gegebene Programm ist eine Hashtabelle. Leider ist es etwas unübersichtlich, da es eine Funktion enthält, die ca. 150 Zeilen lang ist. Schaffe mehr Übersicht indem du zusammengehörige Codefragmente oder mehrfach im Quelltext auftauchen in kleinere Funktionen auslagerst. Wie zum Beispiel diese:&lt;br /&gt;
&lt;br /&gt;
 static int calcHashKey(const char *pszHash);&lt;br /&gt;
 static PHASHITEM getItemFromHash(const char *pszHash);&lt;br /&gt;
 static void execGetHash(const char *pszHash);&lt;br /&gt;
 static void execRemoveHash(const char *pszHash);&lt;br /&gt;
 static void execInsertHash(const char *pszHash, char *pszData);&lt;br /&gt;
 static int parseCmd(const char *pszCmdLine);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Halte dich dabei an die Namenskonvention der [http://de.wikipedia.org/wiki/Ungarische_Notation Ungarischen Notation] und [http://de.wikipedia.org/wiki/Binnenmajuskel#Verwendung_in_Programmiersprachen Camel Case].&lt;br /&gt;
&lt;br /&gt;
Hier ist die Vorlage: [http://docs.freitagsrunde.org/Veranstaltungen/ckurs_2009/vorgaben/HashTableRefactor.c HashTableRefactor.c]&lt;br /&gt;
&lt;br /&gt;
= Teil 2 =&lt;br /&gt;
&lt;br /&gt;
Den Algorithmus zum Codieren eines Strings nach base64 aus einer anderen [[Ckurs2009/Base64|Aufgabe]] kann man auch noch etwas eleganter und knapper schreiben.&lt;br /&gt;
&lt;br /&gt;
Das Programm erwatet genau einen Kommandozeilenparameter und convertiert diesen nach Base64.&lt;br /&gt;
&lt;br /&gt;
 $ ./base64 &amp;quot;Das ist ein Test&amp;quot;&lt;br /&gt;
 RGFzIGlzdCBlaW4gVGVzdA==&lt;br /&gt;
&lt;br /&gt;
Hier ist die Vorlage: [http://docs.freitagsrunde.org/Veranstaltungen/ckurs_2009/vorgaben/base64_refactor.c base64_refactor.c]&lt;br /&gt;
&lt;br /&gt;
== Schritt 1 ==&lt;br /&gt;
&lt;br /&gt;
Schreibe eine Funktion encode_block(), die die vier gegebenen encode_*_output() Funktionen ersetzt.&lt;br /&gt;
&lt;br /&gt;
 /**&lt;br /&gt;
  * Encodes three input chars into four output chars based on the base64 scheme.&lt;br /&gt;
  * @param in chararray with input characters&lt;br /&gt;
  * @param out chararray where the output is written to&lt;br /&gt;
  * @param len number of chars to be used from input&lt;br /&gt;
  */&lt;br /&gt;
 void encode_block( unsigned char in[3], unsigned char out[4], int len )&lt;br /&gt;
 {&lt;br /&gt;
   /* ... */&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Ersetze die Aufrufe der vier Funktionen an den drei Stellen im Code durch einen Aufruf der Funktion encode_block().&lt;br /&gt;
&lt;br /&gt;
== Schritt 2 ==&lt;br /&gt;
&lt;br /&gt;
Vereinfache den Code so, dass die Funktion encode_block() nur einmal aufgerufen wird. Lagere den Algorithmus zum Codieren in eine Funktion encode() aus. Initialisierung und Benutzerinteraktion soll in der main() umgesetzt werden.&lt;br /&gt;
&lt;br /&gt;
 /**&lt;br /&gt;
  * Encodes the input string into an output string based on the base64 scheme.&lt;br /&gt;
  * @param length size of input string&lt;br /&gt;
  * @param input string with input characters&lt;br /&gt;
  * @param output string where the output is written to. It has to be long enough to hold the output&lt;br /&gt;
  */&lt;br /&gt;
 void encode(int length, char *input, char *output)&lt;br /&gt;
 {&lt;br /&gt;
   /* ... */&lt;br /&gt;
 }&lt;/div&gt;</summary>
		<author><name>130.149.17.52</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=C-Kurs/Refactoring&amp;diff=12509</id>
		<title>C-Kurs/Refactoring</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=C-Kurs/Refactoring&amp;diff=12509"/>
		<updated>2009-09-22T12:59:42Z</updated>

		<summary type="html">&lt;p&gt;130.149.17.52: /* Schritt 1 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Teil 1 =&lt;br /&gt;
&lt;br /&gt;
Das gegebene Programm ist eine Hashtabelle. Leider ist es etwas unübersichtlich, da es eine Funktion enthält, die ca. 150 Zeilen lang ist. Schaffe mehr Übersicht indem du zusammengehörige Codefragmente oder mehrfach im Quelltext auftauchen in kleinere Funktionen auslagerst. Wie zum Beispiel diese:&lt;br /&gt;
&lt;br /&gt;
 static int calcHashKey(const char *pszHash);&lt;br /&gt;
 static PHASHITEM getItemFromHash(const char *pszHash);&lt;br /&gt;
 static void execGetHash(const char *pszHash);&lt;br /&gt;
 static void execRemoveHash(const char *pszHash);&lt;br /&gt;
 static void execInsertHash(const char *pszHash, char *pszData);&lt;br /&gt;
 static int parseCmd(const char *pszCmdLine);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Halte dich dabei an die Namenskonvention der [http://de.wikipedia.org/wiki/Ungarische_Notation Ungarischen Notation] und [http://de.wikipedia.org/wiki/Binnenmajuskel#Verwendung_in_Programmiersprachen Camel Case].&lt;br /&gt;
&lt;br /&gt;
Hier ist die Vorlage: [http://docs.freitagsrunde.org/Veranstaltungen/ckurs_2009/vorgaben/HashTableRefactor.c HashTableRefactor.c]&lt;br /&gt;
&lt;br /&gt;
= Teil 2 =&lt;br /&gt;
&lt;br /&gt;
Den Algorithmus zum Codieren eines Strings nach base64 aus einer anderen [[Ckurs2009/Base64|Aufgabe]] kann man auch noch etwas eleganter und knapper schreiben.&lt;br /&gt;
&lt;br /&gt;
Das Programm erwatet genau einen Kommandozeilenparameter und convertiert diesen nach Base64.&lt;br /&gt;
&lt;br /&gt;
 $ ./base64 &amp;quot;Das ist ein Test&amp;quot;&lt;br /&gt;
 RGFzIGlzdCBlaW4gVGVzdA==&lt;br /&gt;
&lt;br /&gt;
Hier ist die Vorlage: [http://docs.freitagsrunde.org/Veranstaltungen/ckurs_2009/vorgaben/base64_refactor.c base64_refactor.c]&lt;br /&gt;
&lt;br /&gt;
== Schritt 1 ==&lt;br /&gt;
&lt;br /&gt;
Schreibe eine Funktion encode_block(), die die vier gegebenen encode_*_output() Funktionen ersetzt.&lt;br /&gt;
&lt;br /&gt;
 /**&lt;br /&gt;
  * Encodes three input chars into four output chars based on the base64 scheme.&lt;br /&gt;
  * @param in chararray with input characters&lt;br /&gt;
  * @param out chararray where the output is written to&lt;br /&gt;
  * @param len number of chars to be used from input&lt;br /&gt;
  */&lt;br /&gt;
 void encode_block( unsigned char in[3], unsigned char out[4], int len )&lt;br /&gt;
 {&lt;br /&gt;
   /* ... */&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Ersetze die Aufrufe der vier Funktionen an den drei Stellen im Code durch den einmaligen Aufruf der Funktion encode_block().&lt;br /&gt;
&lt;br /&gt;
== Schritt 2 ==&lt;br /&gt;
&lt;br /&gt;
Vereinfache den Code so, dass die Funktion encode_block() nur einmal aufgerufen wird. Lagere den Algorithmus zum Codieren in eine Funktion encode() aus. Initialisierung und Benutzerinteraktion soll in der main() umgesetzt werden.&lt;br /&gt;
&lt;br /&gt;
 /**&lt;br /&gt;
  * Encodes the input string into an output string based on the base64 scheme.&lt;br /&gt;
  * @param length size of input string&lt;br /&gt;
  * @param input string with input characters&lt;br /&gt;
  * @param output string where the output is written to. It has to be long enough to hold the output&lt;br /&gt;
  */&lt;br /&gt;
 void encode(int length, char *input, char *output)&lt;br /&gt;
 {&lt;br /&gt;
   /* ... */&lt;br /&gt;
 }&lt;/div&gt;</summary>
		<author><name>130.149.17.52</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=C-Kurs/Refactoring&amp;diff=12507</id>
		<title>C-Kurs/Refactoring</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=C-Kurs/Refactoring&amp;diff=12507"/>
		<updated>2009-09-22T12:57:47Z</updated>

		<summary type="html">&lt;p&gt;130.149.17.52: /* Schritt 2 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Teil 1 =&lt;br /&gt;
&lt;br /&gt;
Das gegebene Programm ist eine Hashtabelle. Leider ist es etwas unübersichtlich, da es eine Funktion enthält, die ca. 150 Zeilen lang ist. Schaffe mehr Übersicht indem du zusammengehörige Codefragmente oder mehrfach im Quelltext auftauchen in kleinere Funktionen auslagerst. Wie zum Beispiel diese:&lt;br /&gt;
&lt;br /&gt;
 static int calcHashKey(const char *pszHash);&lt;br /&gt;
 static PHASHITEM getItemFromHash(const char *pszHash);&lt;br /&gt;
 static void execGetHash(const char *pszHash);&lt;br /&gt;
 static void execRemoveHash(const char *pszHash);&lt;br /&gt;
 static void execInsertHash(const char *pszHash, char *pszData);&lt;br /&gt;
 static int parseCmd(const char *pszCmdLine);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Halte dich dabei an die Namenskonvention der [http://de.wikipedia.org/wiki/Ungarische_Notation Ungarischen Notation] und [http://de.wikipedia.org/wiki/Binnenmajuskel#Verwendung_in_Programmiersprachen Camel Case].&lt;br /&gt;
&lt;br /&gt;
Hier ist die Vorlage: [http://docs.freitagsrunde.org/Veranstaltungen/ckurs_2009/vorgaben/HashTableRefactor.c HashTableRefactor.c]&lt;br /&gt;
&lt;br /&gt;
= Teil 2 =&lt;br /&gt;
&lt;br /&gt;
Den Algorithmus zum Codieren eines Strings nach base64 aus einer anderen [[Ckurs2009/Base64|Aufgabe]] kann man auch noch etwas eleganter und knapper schreiben.&lt;br /&gt;
&lt;br /&gt;
Das Programm erwatet genau einen Kommandozeilenparameter und convertiert diesen nach Base64.&lt;br /&gt;
&lt;br /&gt;
 $ ./base64 &amp;quot;Das ist ein Test&amp;quot;&lt;br /&gt;
 RGFzIGlzdCBlaW4gVGVzdA==&lt;br /&gt;
&lt;br /&gt;
Hier ist die Vorlage: [http://docs.freitagsrunde.org/Veranstaltungen/ckurs_2009/vorgaben/base64_refactor.c base64_refactor.c]&lt;br /&gt;
&lt;br /&gt;
== Schritt 1 ==&lt;br /&gt;
&lt;br /&gt;
Schreibe eine Funktion encode_block(), die die vier gegebenen encode_*_output() Funktionen ersetzt.&lt;br /&gt;
&lt;br /&gt;
 /**&lt;br /&gt;
  * Encodes three input chars into four output chars based on the base64 scheme.&lt;br /&gt;
  * @param in chararray with input characters&lt;br /&gt;
  * @param out chararray where the output is written to&lt;br /&gt;
  * @param len number of chars to be used from input&lt;br /&gt;
  */&lt;br /&gt;
 void encode_block( unsigned char in[3], unsigned char out[4], int len )&lt;br /&gt;
 {&lt;br /&gt;
   /* ... */&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Ersetze die Aufrufe der vier Funktionen an den drei stellen im Code durch den einmaligen Aufruf der Funktion encode_block().&lt;br /&gt;
&lt;br /&gt;
== Schritt 2 ==&lt;br /&gt;
&lt;br /&gt;
Vereinfache den Code so, dass die Funktion encode_block() nur einmal aufgerufen wird. Lagere den Algorithmus zum Codieren in eine Funktion encode() aus. Initialisierung und Benutzerinteraktion soll in der main() umgesetzt werden.&lt;br /&gt;
&lt;br /&gt;
 /**&lt;br /&gt;
  * Encodes the input string into an output string based on the base64 scheme.&lt;br /&gt;
  * @param length size of input string&lt;br /&gt;
  * @param input string with input characters&lt;br /&gt;
  * @param output string where the output is written to. It has to be long enough to hold the output&lt;br /&gt;
  */&lt;br /&gt;
 void encode(int length, char *input, char *output)&lt;br /&gt;
 {&lt;br /&gt;
   /* ... */&lt;br /&gt;
 }&lt;/div&gt;</summary>
		<author><name>130.149.17.52</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=C-Kurs/Refactoring&amp;diff=12506</id>
		<title>C-Kurs/Refactoring</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=C-Kurs/Refactoring&amp;diff=12506"/>
		<updated>2009-09-22T12:50:01Z</updated>

		<summary type="html">&lt;p&gt;130.149.17.52: /* Teil 1 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Teil 1 =&lt;br /&gt;
&lt;br /&gt;
Das gegebene Programm ist eine Hashtabelle. Leider ist es etwas unübersichtlich, da es eine Funktion enthält, die ca. 150 Zeilen lang ist. Schaffe mehr Übersicht indem du zusammengehörige Codefragmente oder mehrfach im Quelltext auftauchen in kleinere Funktionen auslagerst. Wie zum Beispiel diese:&lt;br /&gt;
&lt;br /&gt;
 static int calcHashKey(const char *pszHash);&lt;br /&gt;
 static PHASHITEM getItemFromHash(const char *pszHash);&lt;br /&gt;
 static void execGetHash(const char *pszHash);&lt;br /&gt;
 static void execRemoveHash(const char *pszHash);&lt;br /&gt;
 static void execInsertHash(const char *pszHash, char *pszData);&lt;br /&gt;
 static int parseCmd(const char *pszCmdLine);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Halte dich dabei an die Namenskonvention der [http://de.wikipedia.org/wiki/Ungarische_Notation Ungarischen Notation] und [http://de.wikipedia.org/wiki/Binnenmajuskel#Verwendung_in_Programmiersprachen Camel Case].&lt;br /&gt;
&lt;br /&gt;
Hier ist die Vorlage: [http://docs.freitagsrunde.org/Veranstaltungen/ckurs_2009/vorgaben/HashTableRefactor.c HashTableRefactor.c]&lt;br /&gt;
&lt;br /&gt;
= Teil 2 =&lt;br /&gt;
&lt;br /&gt;
Den Algorithmus zum Codieren eines Strings nach base64 aus einer anderen [[Ckurs2009/Base64|Aufgabe]] kann man auch noch etwas eleganter und knapper schreiben.&lt;br /&gt;
&lt;br /&gt;
Das Programm erwatet genau einen Kommandozeilenparameter und convertiert diesen nach Base64.&lt;br /&gt;
&lt;br /&gt;
 $ ./base64 &amp;quot;Das ist ein Test&amp;quot;&lt;br /&gt;
 RGFzIGlzdCBlaW4gVGVzdA==&lt;br /&gt;
&lt;br /&gt;
Hier ist die Vorlage: [http://docs.freitagsrunde.org/Veranstaltungen/ckurs_2009/vorgaben/base64_refactor.c base64_refactor.c]&lt;br /&gt;
&lt;br /&gt;
== Schritt 1 ==&lt;br /&gt;
&lt;br /&gt;
Schreibe eine Funktion encode_block(), die die vier gegebenen encode_*_output() Funktionen ersetzt.&lt;br /&gt;
&lt;br /&gt;
 /**&lt;br /&gt;
  * Encodes three input chars into four output chars based on the base64 scheme.&lt;br /&gt;
  * @param in chararray with input characters&lt;br /&gt;
  * @param out chararray where the output is written to&lt;br /&gt;
  * @param len number of chars to be used from input&lt;br /&gt;
  */&lt;br /&gt;
 void encode_block( unsigned char in[3], unsigned char out[4], int len )&lt;br /&gt;
 {&lt;br /&gt;
   /* ... */&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Ersetze die Aufrufe der vier Funktionen an den drei stellen im Code durch den einmaligen Aufruf der Funktion encode_block().&lt;br /&gt;
&lt;br /&gt;
== Schritt 2 ==&lt;br /&gt;
&lt;br /&gt;
Vereinfache den Code so, dass die Funktion encode_block() nur ein einziges mal aufgerufen wird. Lagere den Algorithmus zum encodieren in eine Extra Funktion encode() aus. Alles was die ein und Ausgabe mit dem Benutzer und Initialisierung von Variablen betrifft soll in der Funktion main() bleiben.&lt;br /&gt;
&lt;br /&gt;
 /**&lt;br /&gt;
  * Encodes the input string into an output string based on the base64 scheme.&lt;br /&gt;
  * @param length size of input string&lt;br /&gt;
  * @param input string with input characters&lt;br /&gt;
  * @param output string where the output is written to. It has to be long enough to hold the output&lt;br /&gt;
  */&lt;br /&gt;
 void encode(int length, char *input, char *output)&lt;br /&gt;
 {&lt;br /&gt;
   /* ... */&lt;br /&gt;
 }&lt;/div&gt;</summary>
		<author><name>130.149.17.52</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=C-Kurs/Refactoring&amp;diff=12505</id>
		<title>C-Kurs/Refactoring</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=C-Kurs/Refactoring&amp;diff=12505"/>
		<updated>2009-09-22T12:47:28Z</updated>

		<summary type="html">&lt;p&gt;130.149.17.52: /* Teil 2 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Teil 1 =&lt;br /&gt;
&lt;br /&gt;
Das gegebene Programm ist eine Hashtabelle. Leider ist es etwas unübersichtlich, da es eine Funktion enthält, die ca. 150 Zeilen lang ist. Schaffe mehr übersicht indem du Codefragmente die zusammengehören oder mehrmals im Quelltext auftauchen in kleinere Funktionen auslagerst. Wie zum Beispiel diese:&lt;br /&gt;
&lt;br /&gt;
 static int calcHashKey(const char *pszHash);&lt;br /&gt;
 static PHASHITEM getItemFromHash(const char *pszHash);&lt;br /&gt;
 static void execGetHash(const char *pszHash);&lt;br /&gt;
 static void execRemoveHash(const char *pszHash);&lt;br /&gt;
 static void execInsertHash(const char *pszHash, char *pszData);&lt;br /&gt;
 static int parseCmd(const char *pszCmdLine);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
halte dich dabei an die Namenskonvention der [http://de.wikipedia.org/wiki/Ungarische_Notation Ungarischen Notation] und [http://de.wikipedia.org/wiki/Binnenmajuskel#Verwendung_in_Programmiersprachen Camel Case].&lt;br /&gt;
&lt;br /&gt;
Hier ist die Vorlage: [http://docs.freitagsrunde.org/Veranstaltungen/ckurs_2009/vorgaben/HashTableRefactor.c HashTableRefactor.c]&lt;br /&gt;
&lt;br /&gt;
= Teil 2 =&lt;br /&gt;
&lt;br /&gt;
Den Algorithmus zum Codieren eines Strings nach base64 aus einer anderen [[Ckurs2009/Base64|Aufgabe]] kann man auch noch etwas eleganter und knapper schreiben.&lt;br /&gt;
&lt;br /&gt;
Das Programm erwatet genau einen Kommandozeilenparameter und convertiert diesen nach Base64.&lt;br /&gt;
&lt;br /&gt;
 $ ./base64 &amp;quot;Das ist ein Test&amp;quot;&lt;br /&gt;
 RGFzIGlzdCBlaW4gVGVzdA==&lt;br /&gt;
&lt;br /&gt;
Hier ist die Vorlage: [http://docs.freitagsrunde.org/Veranstaltungen/ckurs_2009/vorgaben/base64_refactor.c base64_refactor.c]&lt;br /&gt;
&lt;br /&gt;
== Schritt 1 ==&lt;br /&gt;
&lt;br /&gt;
Schreibe eine Funktion encode_block(), die die vier gegebenen encode_*_output() Funktionen ersetzt.&lt;br /&gt;
&lt;br /&gt;
 /**&lt;br /&gt;
  * Encodes three input chars into four output chars based on the base64 scheme.&lt;br /&gt;
  * @param in chararray with input characters&lt;br /&gt;
  * @param out chararray where the output is written to&lt;br /&gt;
  * @param len number of chars to be used from input&lt;br /&gt;
  */&lt;br /&gt;
 void encode_block( unsigned char in[3], unsigned char out[4], int len )&lt;br /&gt;
 {&lt;br /&gt;
   /* ... */&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Ersetze die Aufrufe der vier Funktionen an den drei stellen im Code durch den einmaligen Aufruf der Funktion encode_block().&lt;br /&gt;
&lt;br /&gt;
== Schritt 2 ==&lt;br /&gt;
&lt;br /&gt;
Vereinfache den Code so, dass die Funktion encode_block() nur ein einziges mal aufgerufen wird. Lagere den Algorithmus zum encodieren in eine Extra Funktion encode() aus. Alles was die ein und Ausgabe mit dem Benutzer und Initialisierung von Variablen betrifft soll in der Funktion main() bleiben.&lt;br /&gt;
&lt;br /&gt;
 /**&lt;br /&gt;
  * Encodes the input string into an output string based on the base64 scheme.&lt;br /&gt;
  * @param length size of input string&lt;br /&gt;
  * @param input string with input characters&lt;br /&gt;
  * @param output string where the output is written to. It has to be long enough to hold the output&lt;br /&gt;
  */&lt;br /&gt;
 void encode(int length, char *input, char *output)&lt;br /&gt;
 {&lt;br /&gt;
   /* ... */&lt;br /&gt;
 }&lt;/div&gt;</summary>
		<author><name>130.149.17.52</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=C-Kurs/Refactoring&amp;diff=12504</id>
		<title>C-Kurs/Refactoring</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=C-Kurs/Refactoring&amp;diff=12504"/>
		<updated>2009-09-22T12:46:09Z</updated>

		<summary type="html">&lt;p&gt;130.149.17.52: /* Teil 1 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Teil 1 =&lt;br /&gt;
&lt;br /&gt;
Das gegebene Programm ist eine Hashtabelle. Leider ist es etwas unübersichtlich, da es eine Funktion enthält, die ca. 150 Zeilen lang ist. Schaffe mehr übersicht indem du Codefragmente die zusammengehören oder mehrmals im Quelltext auftauchen in kleinere Funktionen auslagerst. Wie zum Beispiel diese:&lt;br /&gt;
&lt;br /&gt;
 static int calcHashKey(const char *pszHash);&lt;br /&gt;
 static PHASHITEM getItemFromHash(const char *pszHash);&lt;br /&gt;
 static void execGetHash(const char *pszHash);&lt;br /&gt;
 static void execRemoveHash(const char *pszHash);&lt;br /&gt;
 static void execInsertHash(const char *pszHash, char *pszData);&lt;br /&gt;
 static int parseCmd(const char *pszCmdLine);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
halte dich dabei an die Namenskonvention der [http://de.wikipedia.org/wiki/Ungarische_Notation Ungarischen Notation] und [http://de.wikipedia.org/wiki/Binnenmajuskel#Verwendung_in_Programmiersprachen Camel Case].&lt;br /&gt;
&lt;br /&gt;
Hier ist die Vorlage: [http://docs.freitagsrunde.org/Veranstaltungen/ckurs_2009/vorgaben/HashTableRefactor.c HashTableRefactor.c]&lt;br /&gt;
&lt;br /&gt;
= Teil 2 =&lt;br /&gt;
&lt;br /&gt;
Den Algorythmus zum encodieren eines Strings nach base64 aus einer anderen [[Ckurs2009/Base64|Aufgabe]] kann man auch noch etwas eleganter und knapper schreiben.&lt;br /&gt;
&lt;br /&gt;
Das Programm erwatet genau einen Kommandozeilenparameter und convertiert diesen nach Base64.&lt;br /&gt;
&lt;br /&gt;
 $ ./base64 &amp;quot;Das ist ein Test&amp;quot;&lt;br /&gt;
 RGFzIGlzdCBlaW4gVGVzdA==&lt;br /&gt;
&lt;br /&gt;
Hier ist die Vorlage: [http://docs.freitagsrunde.org/Veranstaltungen/ckurs_2009/vorgaben/base64_refactor.c base64_refactor.c]&lt;br /&gt;
&lt;br /&gt;
== Schritt 1 ==&lt;br /&gt;
&lt;br /&gt;
Schreibe eine Funktion encode_block(), die die vier gegebenen encode_*_output() Funktionen ersetzt.&lt;br /&gt;
&lt;br /&gt;
 /**&lt;br /&gt;
  * Encodes three input chars into four output chars based on the base64 scheme.&lt;br /&gt;
  * @param in chararray with input characters&lt;br /&gt;
  * @param out chararray where the output is written to&lt;br /&gt;
  * @param len number of chars to be used from input&lt;br /&gt;
  */&lt;br /&gt;
 void encode_block( unsigned char in[3], unsigned char out[4], int len )&lt;br /&gt;
 {&lt;br /&gt;
   /* ... */&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
Ersetze die Aufrufe der vier Funktionen an den drei stellen im Code durch den einmaligen Aufruf der Funktion encode_block().&lt;br /&gt;
&lt;br /&gt;
== Schritt 2 ==&lt;br /&gt;
&lt;br /&gt;
Vereinfache den Code so, dass die Funktion encode_block() nur ein einziges mal aufgerufen wird. Lagere den Algorithmus zum encodieren in eine Extra Funktion encode() aus. Alles was die ein und Ausgabe mit dem Benutzer und Initialisierung von Variablen betrifft soll in der Funktion main() bleiben.&lt;br /&gt;
&lt;br /&gt;
 /**&lt;br /&gt;
  * Encodes the input string into an output string based on the base64 scheme.&lt;br /&gt;
  * @param length size of input string&lt;br /&gt;
  * @param input string with input characters&lt;br /&gt;
  * @param output string where the output is written to. It has to be long enough to hold the output&lt;br /&gt;
  */&lt;br /&gt;
 void encode(int length, char *input, char *output)&lt;br /&gt;
 {&lt;br /&gt;
   /* ... */&lt;br /&gt;
 }&lt;/div&gt;</summary>
		<author><name>130.149.17.52</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=Diskussion:C-Kurs_2009&amp;diff=12048</id>
		<title>Diskussion:C-Kurs 2009</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=Diskussion:C-Kurs_2009&amp;diff=12048"/>
		<updated>2009-07-10T10:33:38Z</updated>

		<summary type="html">&lt;p&gt;130.149.17.52: Die Seite wurde neu angelegt: „Ist es möglich sich nur für die Vorträge anzumelden?--~~~~“&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Ist es möglich sich nur für die Vorträge anzumelden?--[[Spezial:Beiträge/130.149.17.52|130.149.17.52]] 10:33, 10. Jul. 2009 (UTC)&lt;/div&gt;</summary>
		<author><name>130.149.17.52</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=Javakurs/%C3%9Cbungsaufgaben/Javamenue&amp;diff=9367</id>
		<title>Javakurs/Übungsaufgaben/Javamenue</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=Javakurs/%C3%9Cbungsaufgaben/Javamenue&amp;diff=9367"/>
		<updated>2009-03-24T14:33:19Z</updated>

		<summary type="html">&lt;p&gt;130.149.17.52: /* Tipps */ auf manchen firefox darstellungen sieht das aus wie eine eckige klammer&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Handwerkszeug ===&lt;br /&gt;
In vielen deiner Javaprogramme wirst du vom Benutzer eine Eingabe per Tastatur erfragen wollen.&lt;br /&gt;
Da sich in Java das Lesen von Tastatureingaben normalerweise etwas umständlich gestaltet, haben wir dir an dieser Stelle etwas zur Erleichterung vorbereitet.&lt;br /&gt;
&lt;br /&gt;
* kopiere die Datei [http://uebb.cs.tu-berlin.de/books/java/klassen/Terminal.java Terminal.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 einige Befehle zur Verfügung, die das Lesen von Tastatureingaben stark erleichtern. Wenn dich interessiert, warum das so ist, so erfährst du es [[Javakurs2007/Terminal | hier]].&lt;br /&gt;
&lt;br /&gt;
Falls das nicht funktioniert, ist der sogenannte CLASSPATH falsch gesetzt.&lt;br /&gt;
Gibt dazu in dem Terminal(Eingabeaufforderung) direkt nach dem Öffnen vor dem Aufruf des Compilers in der shell folgendes Kommando ein: &lt;br /&gt;
  &lt;br /&gt;
 CLASSPATH=&amp;quot;.:$CLASSPATH&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Zurück zum Thema: Einer dieser Befehle lautet &amp;quot;Terminal.readString()&amp;quot;. Er liest eine Tastatureingabe bis zum nächsten Zeilenumbruch von der Konsole und liefert ihn als String zurück.&lt;br /&gt;
&lt;br /&gt;
Beispiel:&lt;br /&gt;
 // Einlesen einer Tastatureingabe bis zum nächsten Zeilenumbruch in die Variable &amp;quot;eingegebeneTextzeile&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 String eingegebeneTextzeile;&lt;br /&gt;
 eingegebeneTextzeile = Terminal.readString();&lt;br /&gt;
&lt;br /&gt;
=== Erste Konsolenabfrage ===&lt;br /&gt;
Probieren wir das ganze einmal aus.&lt;br /&gt;
&lt;br /&gt;
* Frage auf der Konsole nach dem Namen des Benutzers.&lt;br /&gt;
* speichere seine Eingabe mit Hilfe von &amp;quot;Terminal.readString()&amp;quot;.&lt;br /&gt;
* Begrüße den Benutzer mit seinem Namen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Menü mit Zahlen ===&lt;br /&gt;
Schonmal nicht schlecht. Nun zum interessanten Teil.&lt;br /&gt;
Ein weiterer Befehl zur Vereinfachung der Konsolenbenutzung lautet Terminal.readInt(). Er liest eine Zahl von der Konsole und gibt sie als int zurück.&lt;br /&gt;
&lt;br /&gt;
Beispiel:&lt;br /&gt;
 // Einlesen einer Zahl per Tastatureingabe in die Variable &amp;quot;eingegebeneZahl&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 int eingegebeneZahl;&lt;br /&gt;
 eingegebeneZahl = Terminal.readInt();&lt;br /&gt;
&lt;br /&gt;
* Frage auf der Konsole, ob der Benutzer: &lt;br /&gt;
: 1) eine Frau ist.&lt;br /&gt;
: 2) ein Mann ist.&lt;br /&gt;
: 3) die Frage nicht beantworten möchte.&lt;br /&gt;
&lt;br /&gt;
* Begrüße den Benutzer abhängig von seiner Eingabe mit &amp;quot;Herr&amp;quot;, &amp;quot;Frau&amp;quot; oder geschlechtslos.&lt;br /&gt;
* Zeige eine Fehlermeldung an, wenn eine andere Zahl als 1,2 oder 3 eingegeben wird.&lt;br /&gt;
&lt;br /&gt;
=== Tipps ===&lt;br /&gt;
Einen Text auf der Konsole ausgeben:&lt;br /&gt;
 System.out.println(&amp;quot;text&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
Den Programmfluss abhängig vom Wahrheitsgehalt einer Bedingung lenken:&lt;br /&gt;
 &#039;&#039;&#039;if&#039;&#039;&#039; (bedingung) { // dies ist eine geschweifte Klammer&lt;br /&gt;
  fall1&lt;br /&gt;
 } // dies ist eine geschweifte Klammer&lt;br /&gt;
 &#039;&#039;&#039;else&#039;&#039;&#039; { // dies ist eine geschweifte Klammer&lt;br /&gt;
  fall2&lt;br /&gt;
 } // dies ist eine geschweifte Klammer&lt;br /&gt;
&lt;br /&gt;
Zwei Bedingungen logisch miteinander verknüpfen:&lt;br /&gt;
 &#039;&#039;&#039;if&#039;&#039;&#039; (bedingung1 &amp;amp;&amp;amp; bedingung2) {...} // Logisches Und&lt;br /&gt;
&lt;br /&gt;
 &#039;&#039;&#039;if&#039;&#039;&#039; (bedingung1 || bedingung2) {...} // logisches Oder&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;
&#039;&#039;&#039;Julia&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Ich finde es ziemlich nervig, dass es keinen zurück-Button gibt oder einen Link &amp;quot;Zurück zu den Übungsaufgaben&amp;quot;, um wieder zur Übersicht der Aufgaben zu kommen. Vielleicht könnt ihr das mal einrichten...&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Java]]&lt;br /&gt;
[[Kategorie:Java_Aufgaben]]&lt;/div&gt;</summary>
		<author><name>130.149.17.52</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=Javakurs/%C3%9Cbungsaufgaben/Variablen_und_Zuweisungen&amp;diff=9678</id>
		<title>Javakurs/Übungsaufgaben/Variablen und Zuweisungen</title>
		<link rel="alternate" type="text/html" href="wiki.stageing.freitagsrunde.org//index.php?title=Javakurs/%C3%9Cbungsaufgaben/Variablen_und_Zuweisungen&amp;diff=9678"/>
		<updated>2009-03-24T11:21:34Z</updated>

		<summary type="html">&lt;p&gt;130.149.17.52: /* Kommentare */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Hinweis:&#039;&#039;&#039; Alle in diese Übung verwendeten Klassen findest du auch als Vorgabedateien unter [http://docs.freitagsrunde.org/Veranstaltungen/javakurs_2007/vorgaben/VariablenUndZuweisungen.tar http://docs.freitagsrunde.org/Veranstaltungen/javakurs_2007/vorgaben/VariablenUndZuweisungen.tar]&lt;br /&gt;
&lt;br /&gt;
(Die Datei wird mit dem Kommando tar -xf entpackt)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Deklaration und Initialisierung ==&lt;br /&gt;
&lt;br /&gt;
* An welcher Stelle im folgenden Programm wird die Variable &#039;&#039;aWholeNumber&#039;&#039; deklariert?&lt;br /&gt;
* An welcher Stelle im folgenden Programm wird die Variable &#039;&#039;aWholeNumber&#039;&#039; initialisiert?&lt;br /&gt;
* Beantworte diese Fragen auch für die Variablen: &#039;&#039;notAWholeNumber&#039;&#039;, &#039;&#039;aString&#039;&#039;, &#039;&#039;anotherWholeNumber&#039;&#039;, &#039;&#039;anotherNotSoWholeNumber&#039;&#039;, &#039;&#039;anotherString&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Erkläre deine Meinung einem Tutor oder diskutiere sie mit der Person am Rechner nebenan.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
class DeklarationUndInitialisierung {&lt;br /&gt;
	public static void main(String [] ignored) {&lt;br /&gt;
		int aWholeNumber;&lt;br /&gt;
		double notAWholeNumber;&lt;br /&gt;
		String aString;&lt;br /&gt;
&lt;br /&gt;
		aWholeNumber = 0;&lt;br /&gt;
		notAWholeNumber = 0.0;&lt;br /&gt;
		aString = &amp;quot;&amp;quot;;&lt;br /&gt;
		System.out.println(aWholeNumber);&lt;br /&gt;
		System.out.println(notAWholeNumber);&lt;br /&gt;
		System.out.println(aString);&lt;br /&gt;
&lt;br /&gt;
		int anotherWholeNumber = 0;&lt;br /&gt;
		double anotherNotSoWholeNumber = 0;&lt;br /&gt;
		String anotherString = &amp;quot;&amp;quot;;&lt;br /&gt;
		System.out.println(anotherWholeNumber);&lt;br /&gt;
		System.out.println(anotherNotSoWholeNumber);&lt;br /&gt;
		System.out.println(anotherString);&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Selber Deklarationen und Definitionen durchführen ==&lt;br /&gt;
&lt;br /&gt;
* Realisiere die Kommentare im folgenden Codestück. &lt;br /&gt;
* Denke daran die Kommentarzeichen &amp;quot;//&amp;quot; vor der zugehörigen Ausgabeanweisung vor dem Kompilieren und Ausführen zu entfernen&lt;br /&gt;
* Teste deinen Code.&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
class SelbstDeklarierenUndDefinieren {&lt;br /&gt;
	public static void main(String [] ignored) {&lt;br /&gt;
		// deklariere eine Variable &amp;quot;birnen&amp;quot;  vom Typ int&lt;br /&gt;
		&lt;br /&gt;
		// weise ihr den Wert drei zu&lt;br /&gt;
&lt;br /&gt;
//		System.out.println(&amp;quot;3 erwartet: &amp;quot; + birnen);&lt;br /&gt;
		// addiere fuenf zu dem Wert&lt;br /&gt;
&lt;br /&gt;
//		System.out.println(&amp;quot;8 erwartet: &amp;quot; + birnen);&lt;br /&gt;
		// deklariere eine Variable &amp;quot;aepfel&amp;quot; und weise ihr den Wert fuenf zu&lt;br /&gt;
&lt;br /&gt;
//		System.out.println(&amp;quot;5 erwartet: &amp;quot; + aepfel);&lt;br /&gt;
		// subtrahiere zwei von dem Wert&lt;br /&gt;
&lt;br /&gt;
//		System.out.println(&amp;quot;3 erwartet: &amp;quot; + aepfel);&lt;br /&gt;
&lt;br /&gt;
		&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Zuweisung an Variablen ==&lt;br /&gt;
&lt;br /&gt;
* Überlege dir, was für eine Ausgabe der folgende Code erzeugen würde.&lt;br /&gt;
* Compiliere den Code, führe ihn aus und vergleiche das Resultat mit deinen Erwartungen.&lt;br /&gt;
* Was sind die Unterschiede?&lt;br /&gt;
* Diskutiere die Unterschiede mit der Person am Rechner nebenan, oder einem Tutor.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
class ZuweisungenAnVariablen {&lt;br /&gt;
	public static void main(String [] ignored) {&lt;br /&gt;
		System.out.println(0);&lt;br /&gt;
		int zero = 0;&lt;br /&gt;
		System.out.println(zero);&lt;br /&gt;
		int one = 1;&lt;br /&gt;
		int whatsThis = zero;&lt;br /&gt;
		System.out.println(whatsThis);&lt;br /&gt;
		whatsThis = one;&lt;br /&gt;
		System.out.println(whatsThis);&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Variablen ändern ihre Werte ==&lt;br /&gt;
&lt;br /&gt;
* Überlege dir, was für eine Ausgabe der folgende Code erzeugen würde.&lt;br /&gt;
* Compiliere den Code, führe ihn aus und vergleiche das Resultat mit deinen Erwartungen.&lt;br /&gt;
* Was sind die Unterschiede?&lt;br /&gt;
* Diskutiere die Unterschiede mit der Person am Rechner nebenan, oder einem Tutor.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
class VariablenAendernIhreWerte {&lt;br /&gt;
	public static void main(String [] ignored) {&lt;br /&gt;
		int number = 1;&lt;br /&gt;
		System.out.println(number);&lt;br /&gt;
		number = 1;&lt;br /&gt;
		System.out.println(number);&lt;br /&gt;
		number = 2;&lt;br /&gt;
		System.out.println(number);&lt;br /&gt;
		number = 3;&lt;br /&gt;
		System.out.println(number);&lt;br /&gt;
		number = 1;&lt;br /&gt;
		System.out.println(number);&lt;br /&gt;
		number = 17;&lt;br /&gt;
		System.out.println(number);&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Formatierung und Namen ==&lt;br /&gt;
&lt;br /&gt;
* Wieso haben wir die Code-Beispiele nach den geschweiften Klammern eingerückt und die Variablen so benannt, wie wir es taten und nicht so:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
class _{static long _&lt;br /&gt;
(long __,long  ___) {&lt;br /&gt;
return __==0 ?___+ 1:&lt;br /&gt;
___==0?_(__-1,1):_(__&lt;br /&gt;
-1,_(__, ___-1)) ;  }&lt;br /&gt;
static  {int _=2 ,___&lt;br /&gt;
= 2;System.out.print(&lt;br /&gt;
&amp;quot;a(&amp;quot;+_+’,’+___+ &amp;quot;)=&amp;quot;+&lt;br /&gt;
_ (_,  ___) ) ;System&lt;br /&gt;
.exit(1);}}//(C) Ulli&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Etwas weniger Extrem: Was ist im folgenden Beispiel bei der Formatierung schief gelaufen?&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
class Formatierung1 {public static void main&lt;br /&gt;
	(String [] ignored) {&lt;br /&gt;
	System.out.println(0); int zero = 0;&lt;br /&gt;
			System.out.println(zero);&lt;br /&gt;
		int one = 1;&lt;br /&gt;
		int whatsThis = zero;&lt;br /&gt;
			System.out.&lt;br /&gt;
		println(whatsThis);&lt;br /&gt;
	whatsThis = one;		System.out.println(whatsThis)&lt;br /&gt;
;}}&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Warum ist der folgende Code so schlecht lesbar?&lt;br /&gt;
* Woran erinnert er dich?&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
class b {&lt;br /&gt;
	public static void main(String [] i) {&lt;br /&gt;
		System.out.println(0);&lt;br /&gt;
		int a = 0;&lt;br /&gt;
		System.out.println(a);&lt;br /&gt;
		int b = 1;&lt;br /&gt;
		int c = a;&lt;br /&gt;
		System.out.println(c);&lt;br /&gt;
		c = b;&lt;br /&gt;
		System.out.println(c);&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/nowiki&amp;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 schauen, ob irgendjemand diese Funktion wirklich benutzt. Ich fände es jedenfalls toll.&lt;br /&gt;
--&amp;gt;&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;
&amp;lt;!--&lt;br /&gt;
Aufgabe funktioniert auch gut, wenn man&lt;br /&gt;
Code mit copy+past von der Website kopiert&lt;br /&gt;
Reiner --&amp;gt;&lt;br /&gt;
Bisher laeuft alles ganz klasse, weiter so!&lt;br /&gt;
Echt gut Aufgaben! Großes LOB :)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Die erste Aufgabe &amp;quot;SelbstDeklarieren und Definieren&amp;quot; ist etwas unverständlich. Das mit den eingebauten &amp;quot;Testfunktionen&amp;quot; kapiert man als Anfänger nicht unbedingt, also dass man da zum testen die Kommentarzeichen löschen muss.&lt;br /&gt;
&lt;br /&gt;
Woran soll uns denn der letzte Fetzen Code erinnern??? Vielleicht an unsere ersten Programme ohne jeglichen Einfallsreichtum was Namensgebung angeht? :) Ansonsten alles super.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Java]]&lt;br /&gt;
[[Kategorie:Java_Aufgaben]]&lt;/div&gt;</summary>
		<author><name>130.149.17.52</name></author>
	</entry>
	<entry>
		<id>wiki.stageing.freitagsrunde.org//index.php?title=Javakurs/%C3%9Cbungsaufgaben/Kassenbon&amp;diff=9477</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=9477"/>
		<updated>2009-03-24T11:06:15Z</updated>

		<summary type="html">&lt;p&gt;130.149.17.52: /* Kassenbon */&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;
==== 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;
[[Kategorie:Java]]&lt;br /&gt;
[[Kategorie:Java_Aufgaben]]&lt;/div&gt;</summary>
		<author><name>130.149.17.52</name></author>
	</entry>
</feed>