Adresse
Beuth Hochschule für Technik Berlin
University of Applied Sciences, Berlin
Fachbereich Informatik und Medien (FB VI)

Luxemburger Str. 10
D-13353 Berlin
Germany

Fon: +49 30 4504-2265
Fax: +49 30 4504-2914
Email an: Ulrich Grude

Prof. Dr. Ulrich Grude
(der dritte von links, gleich neben Astrid und Philipp) lehrt Programmierung und Compilerbau an der Beuth Hochschule Berlin.

Java ist eine Sprache

Ein Buch über die Grundbegriffe der Programmierung und eine Einführung
in die Sprache Java (Version 5.0), mit vielen Beispielen, Übungen, Aufgaben
mit Lösungen etc. Näheres dazu findet man hier.

Algorithmen (MB2-ALG, Zug 1) im SS14

Erster Termin: Do 03.04.2014, 10.00 Uhr im Raum D113 (Labor für Informatik-Service, LIS)
Für diese Lehrveranstaltung sind 2 Übungsgruppen 1a und 1b geplant. Welche Übungsgruppe wann Übung hat, steht
in der Datei Stichworte.pdf. Wer zu welcher Übungsgruppe gehört, wird (nicht vom Online-Belegsystem festgelegt, sondern)
beim ersten Termin entschieden. Wenn mehr InteressentInnen erscheinen, als es Plätze gibt, werden die Plätze verlost, An
dieser Verlosung können Sie nur teilnehmen, wenn Sie persönlich anwesend sind.

Hier ein paar Unterlagen für diese Lehrveranstaltung:
Stichworte.pdf 12 Seiten, ca 40 KB aktualisiert: 17.04.2014
AnfangsQuizz.odt 3 Seiten, ca. 20 KB                                                  
AnfangsQuizz.pdf 3 Seiten, ca. 15 KB
UebIfUndSchleifen.java Java-Programm, ca 30 KB
UebIfUndSchleifenJut.java JUnit-3-Programm, ca. 25 KB
Zahlensysteme.pdf 4 Seiten, ca. 20 KB
RekursionAufgaben.pdf 11 Seiten, ca. 45 KB  
RekursionTestProgs.txt 7 Programme, ca. 70 KB  
Projekte.pdf 31 Seiten, ca. 110 KB
Projekte.txt ca. 45 KB
Bojen01.pdf 4 Seiten, ca. 50 KB
Bojen02.pdf 7 Seiten, ca. 90 KB
TippsZuEclipse.pdf 18 Seiten, ca. 100 KB  
Sort_BIS_A.java ca. 15 KB
SchrittFunktionenA.java ca. 20 KB  
BinBaumBoje11.pdf 1 Seite, ca. 20 KB
ZufallPi03.java ca. 7 KB
HashTabellen.pdf 5 Seiten, ca. 25 KB
Dijkstra.pdf 9 Seiten, ca. 40 KB
P_Gleich_NP.pdf 5 Seiten, ca. 30 KB
Klausur01.pdf 6 Seiten, ca. 25 KB
Klausur02.pdf 8 Seiten, ca. 35 KB

Compilerbau (TB5-CPB) im WS13/14

Hier ein paar Unterlagen für diese Lehrveranstaltung:
Stichworte.pdf 37 Seiten, ca 135 KB 31.01.2014: Vollständig
Aufgaben.pdf 19 Seiten, ca. 70 KB                                                          
TypenInGentle.pdf 5 Seiten, ca. 23 KB
ChomskyGrammatiken.pdf 4 Seiten, ca. 20 KB
TermeInGentle.pdf 9 Seiten, ca. 40 KB
LexerUndParser.pdf 3 Seiten, ca. 15 KB
Generatoren.pdf 3 Seiten, ca. 10 KB
JvmUndJasmin.pdf 14 Seiten, ca. 50 KB
GentleBeispiele.pdf 7 Seiten, ca. 20 KB
GentleBeispiele.txt ca. 10 KB
QuizAlg30.pdf 1 Seite, ca. 8 KB
Klausur01.pdf 5 Seiten, ca. 20 KB
Klausur02.pdf 8 Seiten, ca. 22 KB 31.01.2014: Lösung 4 korrigiert
Klausur03.pdf 8 Seiten, ca. 30 KB 31.02.2014: Neu hinzugekommen
Klausur04.pdf 7 Seiten, ca. 20 KB 31.02.2014: Neu hinzugekommen



Programmieren 2 (MB2-PR2) im SS12

Für diese Lehrveranstaltung benötigen Sie das Buch "Java ist eine Sprache" von Ulrich Grude (kann man in der
Bibliothek der Beuth-Hochschule für 0 Euro ausleihen, im Buchhandel gebraucht ab ca. 22 Euro, neu ca. 40 Euro).

Hier ein paa Unterlagen für diese Lehrveranstaltung:
Stichworte.pdf
42 Seite, ca. 120 KB
AufgabenPR2.pdf 25 Seiten, ca. 80 KB
DateienFuerPR2.zip ca. 70 KB
Zufall.pdf
2 Seiten, ca.10 KB
HashTabellen.pdf 4 Seiten, ca. 20 KB
Rekursion.pdf 8 Seiten, ca. 35 KB
UebungenPR2.pdf 10 Seiten, ca. 40 KB
Scanner.pdf 4 Seiten, ca. 15 KB
Bruchzahlen.pdf 8 Seiten, ca. 36 KB
Xml01.pdf 5 Seiten, ca. 20 KB
Xml02.pdf 8 Seiten, ca. 30 KB
Xml03.pdf 4 Seiten, ca. 16 KB
TabSchrittzahlen.pdf 1 Seiten, ca. 8 KB
TipsZuEclipse.pdf 18 Seiten, ca. 65 KB
KlausurenPR2.zip 10 Klausuren, ca. 365 KB


Eine Software-Distribution für das Fach TB1-IN1 (Programmieren mit C)

Diese Distribution TB1-IN1-SS12.zip (ca. 150 MB, entpackt ca. 350 MB) läuft unter Windows (getestet unter XP und W7).
Sie enthält vier verschiedene C-Compiler-Systeme:
Den gcc (Gnu C-Compiler, Version 4.5.2, siehe http://www.mingw.org)
Den lcc  (Little C Compiler, Version 3.8, siehe http://www.cs.virginia.edu/~lcc-win32/)
Den bcc32 (C/C++-Compiler von Borland, Version 5.5.1, siehe http://edn.embarcadero.com/article/20633)
Den tcc (Tiny C Compiler, Version 0.9.25, siehe http://bellard.org/tcc/)
Ausserdem eine bash-Shell, grep, find, make..., ein paar C-Beispielprogramme und Skripte (für die bash-Shell
und für die Windows-Shell cmd.exe) zum Compilieren und Binden von C-Programmen mit den vier Compilern.
Die Distribution muss nur entpackt werden (z.B. auf einen Stick) und ist dann sofort lauffähig.


Weitere Lehrveranstaltungen, Unterlagen, Applets etc.:
Programmieren 1 mit Java
Programmieren 2 mit Java
Programmieren 1 mit C
Programmieren 2 mit C
Programmieren 3 mit C++
Programmieren mit Ada
Abschlussarbeiten (Bachelor, Master)
Verschiedenes  : VPL, Gleitpunktzahlenprintf, Petri-Netze, Lambda-Kalkül , Erlang etc.


Verschiedenes ("Heringe und andere Südfrüchte")


Programmieren 2 im Studiengang Medien-Informatik Bachelor (MB2-PR2)  

Hier ein paar Unterlagen zu dieser Lehrveranstaltung
(Klausuren inklusive Nachklausur WS10/11):
AufgabenPR2.pdf 19 Seiten, ca. 55 KB
Stichworte.pdf 103 Seite, ca. 270 KB
DateienFuerPR2.zip ca. 70 KB
HashTabellen.pdf 4 Seiten, ca. 20 KB
Rekursion.pdf 8 Seiten, ca. 35 KB
UebungenPR2.pdf 10 Seiten, ca. 40 KB
Scanner.pdf 4 Seiten, ca. 15 KB
Bruchzahlen.pdf 8 Seiten, ca. 36 KB
Xml01.pdf 5 Seiten, ca. 20 KB
Xml02.pdf 8 Seiten, ca. 30 KB
Xml03.pdf 4 Seiten, ca. 16 KB
TabSchrittzahlen.pdf 1 Seiten, ca. 8 KB
TipsZuEclipse.pdf 15 Seiten, ca. 60 KB
KlausurenPR2.zip 10 Klausuren, ca. 365 KB



Programmieren 1 im Studiengang Medieninformatik Bachelor (MB1-PR1) 

Hier ein paar Unterlagen zu dieser Lehrveranstaltung:
AufgabenPR1.pdf 27 Seiten, ca. 85 KB
Stichworte.pdf 72 Seite, ca. 140 KB
DateienFuerPR1.zip 27 Dateien, ca. 100 KB
TipsZumTextPad.pdf 25 Seiten, ca. 230 KB
Übungen.pdf 29 Seiten, ca. 65 KB
JUnitBeispiel.pdf 4 Seiten, ca. 15 KB
JUnitEinführung.pdf 10 Seiten, ca. 110 KB
ÜbungenMitJut.zip 40 Programmierübungen, ca. 63 KB
AlteKlausuren.zip 19 Klausuren, ca. 520  KB
Erläuterung: Aufgaben "müssen bearbeitet und abgegeben werden", Übungen sind freiwillige Zusatzleistungen, die nicht
offiziell kontrolliert oder bewertet werden. Eine ÜbungMitJut ist eine Kombination aus einer Programmierübung und
einem JUnit-Programm, mit dem Sie Ihre Lösung testen können. Ca. 40 solche Kombinationen stehen Ihnen hier zur
Verfügung.

Programmieren 1 (mit C) im Studiengang Technische Informatik Bachelor (TB1-PR)

Zwei Empfehlungen von Büchern (die es auch in der Bibliothek der Beuth Hochschule gibt):

B. W. Kernighan, D. M. Ritchie: "The C Programming Language", Second Edition
Prentice Hall 1988, 272 Seiten, ca 45,- Euro.

S. P. Harbison, G. L. Steele: "C, a Reference Manual", Fifth Edition
Pearson Education 2002, 533 Seiten, ca. 47,- Euro.

Hier ein paar Unterlagen (ein kleines Papier und ein paar Beispielprogramme):
SkriptC.pdf 51 Seiten, ca. 150 KB
Kommandos.pdf 4 Seiten, ca. 16 KB
CehBeispielProgramme.zip ca. 50 KB
GccUndCehProgramme.pdf 12 Seiten, ca. 40 KB

Die Programmiersprache Erlang

Ein Vortrag (Folien.pdf.) über Erlang. Ein paar kleine, kommentierte Erlang-Programme.pdf
sollen den Einstieg erleichtern.

Die Programmiersprache VPL (Visual Programming Language)

Im Dezenber 2006 hat Microsoft eine ganz neue Programmiersprache veröffentlicht.
Sie ist erstmal zum Programmieren von Robotern geeignet. Aber da sie sehr stark
auf dem Konzept von Netzdiensten (engl. web services) beruht, wird man damit wohl
bald auch Geschäftsprozesse programmieren und andere Probleme lösen können. Hier
finden Sie eine kleine Einführung in VPL und eine Sammlung von lauffähigen Beispielen
Die Einführung (39 Seiten, .pdf-Datei, ca. 1,3 MB) ist eine Ergänzung zu den Turorials
von Microsoft. Die Beispielsammlung (ein .zip-Archiv, ca. 250 KB) enthält die knapp
40 VPL-Programme, die in der Einführung behandelt werden.

Applets zum Lernen bestimmter Java-Konstrukte

Mit den beiden Applets GleitBitsFloatApplet und GleitBitsDoubleApplet kann man die
Eigenschaften von Gleitpunktzahlen der Typen float und double erforschen.
Wissen Sie, welchen Wert das Literal 0.1 hat?  Nein, es hat nicht den Wert 0.1, aber
Sie dürfen noch mal raten. Oder wollten Sie nicht schon immer mal herausfinden, wieviele
Dezimalziffern man für die genaue Darstelllung des kleinsten double-Wertes braucht?
Oder welches die nächstgrößere float-Zahl nach 16 Milliarden ist? Kennen Sie den
Unterschied zwischen +0.0 und -0.0? Und wissen Sie, wieviele Unzahlen (engl. NaN
values) zum Typ float (bzw. zum Typ double) gehören? Mit den Applets können
Sie die Antworten auf diese und ähnliche Fragen herausfinden.

Mit dem neuen  eTeachMePrintf-Applet von S. Effenberg kann man die zahlreichen
Möglichkeiten des Befehls format (alias printf) interaktiv ausprobieren und kennenlernen..
Voraussetzung: Ihr Browser muss Java 6.0 können.

Mit dem älteren PrintfApplet kann man den printf-Befehl auch auf Datumsangaben
anwenden und braucht nur einen Java 5 fähigen Browser. Wenn man ausserdem
einen UNICODE-Font intstalliert hat, werden auch chinesische, japanische und
koreanische Montas- und Tagesnamen richtig dargestellt.

Programmieren 3 (mit C++) im Diplomstudiengang Medieninformatik (PR3-MD)

C++ für Java-Programmierer.pdf 179 Seiten, ca. 480 KB
C++-Übungen.pdf 30 Seiten, ca. 65 KB
Aufgaben-für-PR3-MD.pdf 16 Seiten, ca. 120 KB
C++-Beispiele.zip (vom 09.10.05) ca. 440 KB
PR3-Klausuren mit Lösungen.zip 6 Klausuren, ca. 100 KB

Links zu einer C++-Referenz und weiterern Informationen über C++

C++-Referenz (HTML-Dateien)
Netzadressen von C++-Infos

Programmieren 2 (mit C) im Diplomstudiengang Technische Informatik (PR2-TI)

C_Skript.pdf 51 Seiten, ca. 150 KB
C_Aufgaben.pdf 11 Seiten, ca. 30 KB
BeispieleC.zip ca. 625 KB
BojenFuerC.pdf 14 Seiten, ca. 43 KB
PR2-Klausuren mit Lösungen.zip ca. 21 KB

Konzepte von Programmiersprachen im Diplomstudiengang Medieninformatik (KPS-MD)

Organisatorisches.pdf 1 Seite, ca. 40 KB
Rekursion.pdf 5 Seiten, ca. 85 KB
GenerischesJava.pdf 4 Seiten, ca. 70 KB
LexerParser.pdf 4 Seiten, ca. 60 KB
Metaprogrammierung.pdf 10 Seiten, ca. 120 KB
VergleichGenEinheitenInCppUndJava.pdf 4 Seiten, ca. 65 KB
KonzepteVonProgrammiersprachen.pdf 36 Seiten, ca. 365 KB
Aufgaben.pdf 8 Seiten, ca. 90 KB
EineUebung.pdf 2 Seiten, ca. 50 KB
Beispiel-Programme-KPS.zip ca. 25 KB
KPS-Klausur mit Lösungen.zip ca. 23 KB

Den Java 2 Software Development Kit (J2SDK) und den TextPad installieren

Den neusten (kostenlosen) Java Software Development Kit  (SDK) kann man von den Netzseiten der
Firma Sun herunterladen. Ebenso die (ebenfalls kostenlose, sehr leistungsfähige, aber auch "leistungshungrige")
Entwicklungsumgebung NetBeans. Eine sehr viel "leichtere" Enttwicklungsumgebung für Java-Programme
erhält man, indem man z.B. den Editor TextPad mit dem SDK kombiniert (Achtung: erst den SDK installieren,
danach den TextPad, dann verbindet sich der TextPad automatisch mit dem SDK).

Lambda calculus

The result of a thesis: A complete environment for the development of (simple and) complicated lambda expressions,
their compilation into an intermediary form and the execution of this intermediary form. The LCD (Lambda Calculus
Developer) runs on PCs under Windows. You are free to download LCD (ca. 412 KB) for evaluation.

Petri-Netze

Petri-Netze dienen dazu, den Begriff der Nebenläufigkeit zu klären und nebenläufige Systeme (z. B. die Prozesse
eines Betriebssystems oder die Steuerfäden eines Programms) zu modellieren. Das Papier Petri-Netze.pdf  (ca. 77 Seiten,
800 KB) erläutert wichtige Grundideen von Petri-Netzen auf informelle, hoffentlich leichtverständliche Weise, und versucht
dabei, einige verbreitete Missverständnisse zu vermeiden bzw. aufzuklären.

Die Cygwin-Distribution für Windows

Diese quelloffene Software umfasst zahlreiche Werkzeuge, die sich relativ leicht einzeln oder zusammen unter einem
Windows-Betriebssystem installieren lassen und einem dann den Komfort eines Linux-Systems bieten. Zu diesen
Werkzeugen gehören unter anderem: Sehr gute Compiler für die Sprachen C, C++, Java, Ada und Fortran (mit dem
Java-Compiler kann man wahlweise die üblichen .class-Dateien oder aber .exe-Dateien erzeugen), die Skriptsprachen
Perl, Tcl und Phyton, die Bash-Shell, die Z-Shell, Kommandos wie ls, cp, mv (die deutlich mächtiger sind als die Dos-
Befehle dir, copy und rename), die Editoren vim und emacs und sehr, sehr viel mehr. Die jeweils neuste Version dieser
Distribution finden Sie hier . Ein paar einfache Bash-Skripte zum Bearbeiten (compilieren, evtl. binden, ausführen) von
Java-Programmen, C-Programmen und C++-Programmen, allgemeine Bash-Skripte namens profile, .bash_profile und
.bashrc und Initialisierungsdateien für den Editor vim finden Sie im Archiv BashSkripteEtc.zip (ca. 28 KB).

Wollen Sie Ada lernen?

Ein Skript für die Vorlesungen Programmieren 1 und 2 (mit Ada), ca. 380 Seiten, mit zahlreichen Aufgaben, steht hier
als PDF-Datei zur Verfügung. Lösungen zu einigen der Aufgaben und eine Sammlung von fast 300 Beispielprogrammen
ergänzen das Skript.

AdaSkript.pdf  386 Seiten, ca. 1,5 MB
Lösungen zu  den Aufgaben im Skript.pdf  30 Seiten, ca. 90 KB
Ada Beispielprogramme.zip  296 Dateien, ca. 160 KB

Mit 10 Fingern blind tippen!

Professionelle InformatikerInnen (im Gegensatz zu LaienprogrammiererInnen) sollten "richtig" mit einer
Tastatur umgehen können. Je länger man ohne System tippt, desto mühsamer wird es, richtig mit 10 Fingern
blind schreiben zu lernen. Fangen Sie  deshalb am besten gleich heute an, richtig tippen zu lernen (es sei denn,
sie haben schon gestern angefangen oder es früher gelernt). Hier ein Programm zum Tippen-Lernen , (eines von
vielen), welches von Sebastian Machon (Student der TFH, die heute Beuth Hochschule heißt) empfohlen wird.
Es kostet 9,- Euro, aber bevor, man bezahlt kann man eine kostenlose Demoversion ausprobieren.

Other interests

Von der Seite http://www.mal-was-anderes.de/de/karteikasten können Sie sich ein kostenloses Programm
zum Vokabeln lernen herunterladen, und auf der Seite  http://www.mal-was-anderes.de/de/karteikasten/speicherungen
können Sie dazu u.a. die folgenden beiden interessanten Vokabel-Dateien finden:

1. Für alle, die Indonesisch lernen möchten: Eine Datei mit ca. 2000 indonesisch / deutschen Vokabel-Paaren.
2. Für Fallschirmspringer, die als 4-er-Team ernsthaft Formationsspringen trainieren wollen:
Eine Datei, die die englischen Namen und die Abkürzungen für die Formationen des Dive Pools
enthält, der bei FS4-Wettbewerben verwendet wird (Random Formationen A bis Q und Blöcke 1 bis 22) .

Verschiedene Unterlagen zum Indonesisch-Lernen


Die indonesischen Untertitel des Films Laskar Pelangi von Riri Riza (Regie)
"Wort für Wort" ins Deutsche übersetzt und ein paar Zusatzinformationen.
LaskarPelangi.pdf (46 Seiten, ca 360 KB)

Mitschrift des 1. Kurses in der KBRI: IndonesischerBotschaftsKurs1.pdf
Mitschrift des 2. Kurses in der KBRI: IndonesischerBotschaftsKurs2.pdf
Mitschrift des 3. Kurses in der KBRI: IndonesischerBotschaftsKurs3.pdf
Mitschrift des 4. Kurses in der KBRI: Konversations-Kurs
Mitschrift des 5. Kurses in der KBRI: IndonesischerBotschaftsKurs5.pdf
 
Märchen auf Indonesisch
  (mit deutscher Übersetzung)

Indonesiche Wurzelworte mit Vor-/Nachsilben: Affixe.pdf
Tierbeschreibungen: Binatang2.pdf
Tierbeschreibungen: Binatang3.pdf
Tierbeschreibungen: Binatang5.pdf

Diese Unterlagen enthalten sicherlich noch zahlreiche Fehler. Für Verbesserungs-
vorschläge und Hinweise auf Fehler (am liebsten per Email, siehe ganz oben)
bin ich jederzeit dankbar.

Zuletzt geändert am 17.04.2014