Hier findet man einige ausgewählte Kommentare und unsere Anmerkungen zu den Kommentaren (kursiv).
-nh
100.)
++++++++++++++ Tue Dec 14 14:16:51 2004 ++++++++++++++
Ich finde es unpraktisch, wenn das Skript nicht schon vor der Vorlesung
im Netz erhältlich ist. Es lässt sich einfach besser folgen, wenn man
das Skript in Papierform vor sich hat und man kann sich gleich praktisch
Notizen dazu machen.

Der Grund dafür, daß das Skript nicht bereits online ist,
liegt in der Erkrankung von Dr. Borchert. Bitte haben Sie hier noch ein
wenig Geduld!

Trotzdem aber Herzlichen Glückwunsch zum 100. Feedback!


-nh

99.)
++++++++++++++ Mon Dec 13 00:25:53 2004 ++++++++++++++
Bezüglich der 95% Frage, die mein Vorredner gestellt hatte...
Also so wie ich den Algorithmus verstanden habe, ist die Wahrscheinlichkeit,
dass ein Geschenk durch ein neues Geschenk ersetzt wird beim 21.Geschenk, da
über das Fließband läuft am größten( vgl. 95%) . Sie nimmt dann kontinuierlich
ab, da der Zahlenmenge der möglichen Zufallszahl größer wird aber n konstant
bleibt. Für ein n.Geschenk und n gegen Unendlich müsste sie dann nahezu gegen
0% gehen - oder?

Genau so isch' eees!

-nh

98.)
++++++++++++++ Mon Dec 13 00:19:36 2004 ++++++++++++++
Ich glaube, dass ich den Algorithmus kapiert habe und habe ihn schon in Oberon
umgesetzt. 
Leider fehlt mir das letzte (und zugleich wichtigste ;-) ) Stück...
Soviel wie ich das verstanden habe, sollen wir mit dem Perl-Befehl, der in der
Übung vorgestellt wird und dann vermutlich mal mit der Pipe umgeleitet die
Eingabe machen. 
Meine Frage: Wie lese ich dann die Daten ein?!?
Ich dachte man könnte einfach nen Read.Int in ne Loop-Schleife packen - und
habe gerade ein "böses Erwachen erlebt...

Wollte nur noch sagen, dass die Übungen net schlecht sind - Lob.

Ja, genau so soll die Eingabe geschehen (also mit Pipe und so). Was
heißt denn "böses Erwachen"? Die Verwendung einer LOOP-Schleife
ist durchaus in Ordnung! Vielleicht haben Sie nur einen kleinen Fehler
in deren Anwendung gemacht?

P.S.: Danke!

-nh

97.)
++++++++++++++ Mon Dec 13 00:16:57 2004 ++++++++++++++
aha

Nun verstehe ich auch was gemeint ist (ganz nebenbei bemerkt: z.B.Ich war
sowohl in der Vorlesung alsauch in der Übung!)
Das Problem besteht im Verständnis "was ein Fließband ist". 
Ich dachte hierbei an ein Kofferfließband im Flughafen. Bei diesem
kehren die Koffer ja immer wieder. Der angebotene Algorithmus wäre dann
ja nicht sinnvoll.

Sehen Sie: Wie gut das es dieses Feedback gibt ;-)

-nh

96.)
++++++++++++++ Sun Dec 12 18:20:39 2004 ++++++++++++++
Ich verstehe nicht ganz wie bei dem gegebenen Algorithmus eine gleichmässige
Verteilung erreicht werden soll.
Nachdem Zufallszahlen zwischen 0 und 20 erzeugt werden wird doch in 95% der
Fälle eine der alten Zahlen ersetzt.

Sollte der Wert nicht weiter gestreut werden? Weil im Moment siehts so aus als
ob Anfangs nur super schlechte Geschenke auf dem Fließband ankommen würden.

Es werden nicht Zufallszahlen zwischen 0 und 20 erzeugt, sondern zwischen
0 und t-1, also der Anzahl der bislang erfolgreich eingelesenen Zahlen. Und
diese Anzahl kann beliebig groß werden. Liegt die Zufallszahl 
über 19, dann... aber das habe ich nun glaub' ich schon oft genug
hier erklärt.

Es werden also nicht in 95% der Fälle die Geschenke / Zahlen ersetzt,
sondern nur in den Fällen in denen die Zufallszahl tatsächlich
zwischen 0 und 19 liegt.

-nh

95.)
++++++++++++++ Sat Dec 11 20:50:11 2004 ++++++++++++++
Hallo !
Zuerst muss ich zu meiner Schande zugeben, dass ich am Mittwoch nicht in der
Übung war , vielleicht ist mir der Algorithmus auch deshalb völlig unklar. Mein
Problem ist nämlich abgesehen vom Programmieren, dass ich den Algorithmus schon
gar nicht verstehe, das heißt, ich weiß gar nicht was ich überhaupt
programmieren soll. Mir ist zwar ungefähr klar wie am Ende die Ausgabe aussehen
soll, aber wie dieser Algorithmus funktionieren soll, ist mir völlig
schleierhaft.Mein Mitbewohner hat mir beispielsweise gezeigt, wie er in Delphi
meine gewünschte Ausgabe hinbekommt und er braucht dazu eigentlich gar keinen
Algorithmus. Was zum Beispiel bedeuten die Pfeile in der Beschreibung des
Algorithmus ?  Bedeuten die , dass n t zugeordnet wird und x A(M)? Ich wäre
Ihnen wirklich sehr dankbar, wenn Sie mir den Algorithmus einfach einmal in
Worten erklären könnten. Danke schon mal im Voraus und ich werde mich in
Zukunft bemühen, keine Übung mehr zu verpassen :)

Tja, da wären Sie mal besser in die Übungen gekommen...!

Also, ausnahmsweise hier nochmal eine verbale Erklärung:

R1.) Wir lesen 20 Zahlen von der Standardeingabe ein und speichern sie in
     einem Array (im Algorithmus A genannt) ab (Positionen 0 bis 19,
     siehe Feedbacks 93 und 94).
     Dabei zählen wir die eingelesenen Zahlen mit (Variable t).
     Und t <- n bedeutet "t := n".

R2.) klar!

R3.) Wenn R2 gerade geklappt hat, haben wir jetzt die 21. Zahl vor uns.
     Wir erzeugen eine Zufallszahl zwischen 0 und 20 (siehe wieder
     Feedbacks 93 und 94) und überprüfen, ob sie im erlaubten
     Bereich (0 bis 19) liegt. Wenn nicht, verwerfen wir die soeben
     gemachte Eingabe, indem wir zu R5 springen.

R4.) Hier landen wir, falls die Zufallszahl im "erlaubten" Bereich war.
     Nun ersetzen wir die Zahl, die im Array (genannt A) auf der Position
     der Zufallszahl (gennant M) steht, durch die soeben eingelesene Zahl
     (genannt x) und springen zurück zu Schritt R2.

R5.) Hier machen wir nichts, sondern springen zurück zu R2, um die
     nächste Zahl (sofern vorhanden) einzulesen. Auf diese Weise
     ignorieren wir unsere gerade gelesene Zahl x.

-nh


Update: Und hier noch eine Ergänzung von Andreas Borchert:
Und offensichtlich wurde auch die Vorlesung versaeumt, da wir dort
einen aehnlichen Algorithmus mit der gleichen Notation behandelt
haben. Wer glaubt, sich Vorlesungen und Uebungen schenken zu koennen,
wird aller Wahrscheinlichkeit nach so den Anschluss verlieren, dass
spaeter keine Chance besteht, die Klausur zu bestehen (sei es jetzt
die Vordiplomsklausur fuer die E-Techniker oder spaeter die
Scheinklausur in Allgemeine Informatik II fuer die anderen Teilnehmer).

Zum Hintergrund dieser Uebungsaufgabe: Dieser Algorithmus erlaubt
das gleichverteilte zufaellige Auswaehlen von n Objekten aus einer
sehr grossen Menge von m Objekten mit m >> n. Dabei kann m sogar
so gross sein, dass der Hauptspeicher ueberhaupt nicht ausreicht,
um alle m Objekte gleichzeitig im Zugriff zu haben. Der Algorithmus
ist interessant, weil wir nur ein Array der Laenge n benoetigen und
einige kleine Hilfsvariablen. Das wird durch das Fliessband bildlich
symbolisiert: Wir sehen nur einen kleinen Ausschnitt des Fliessbands und
die Objekte, die an uns vorbeigerauscht sind, koennen nie mehr betrachtet
werden. Unser Platz um uns herum ist begrenzt. Wenn wir ein neues Objekt
auf dem Fliessband sehen, muessen wir uns sofort entscheiden, dieses im
Austausch mit einem der um uns herum gestapelten Objekte auszutauschen
oder es ungenutzt auf dem Fliessband an uns vorbeiziehen zu lassen.
Dass wir bei diesem Algorithmus trotz dieser Restriktion zu einer
gleichmaessig verteilten Auswahl kommen, ist der eigentliche Clou.

-afb


94.)
++++++++++++++ Sat Dec 11 17:55:56 2004 ++++++++++++++
Sorry. Ich habe so meine Probleme wie das Programm in Aufg. 17 denn aussehen
soll. Insbesondere verstehe ich den Zusammenhang der  Aufgabenstellung ("Santa
Claus") und dem "angebotenen Algorithmus" nicht. 

Im ersten Schritt sollen n Einträge aus der Menge in das Array eingelesen
werden. 

Problem: Wenn man das so macht, dann werden doch automatisch die ersten 20
und nicht linear eine Auswahl aus den ersten Geschenken/Zahlen genommen -
oder?!? Den Sinn verstehe ich nich so ganz, denn: Dann aber müsste das
Array meiner ausgewählten Geschenke doch schon "voll" sein, d.h. wenn
ich im zweiten Schritt versuche nochmal was einzulesen, dann wird
das doch ganz bestimmt nicht funktionieren, da das Programm dann sofort
beendet werden würde und wir hätten keine zufällige Auswahl... (siehe
"beenden den Algorithmus").

Selbst wenn ich dann weitermachen würde mit Schritt 3 wäre das doch
irgendwie unsinnig. Ich würde dann eine weitere Zahl nur zufällig anstatt
eines alten Elements in das Array speichern. Aber ich würde nicht "ein
Geschenk gezielt durch ein anderes ersetzen".

HMMM. Entweder ich habe da etwas gehörig missverstanden oder ich habe die
Aufgabenstellung nicht kapiert. Auf jeden Fall muss ich sagen, dass mir der
Zusammenhang zwischen Aufgabe und Algorithmus leider nicht klar ist. 

Unabhängig vom Algorithmus hätte ich folgende Überlegung: Wäre es denn
nicht sinnvoller das "Array der Menge unbekannter Größe" komplett von 0
nach x zu durchlaufen. AUtomatisch die ersten Elemente auszuwählen bzw.
bei jedem Durchgang eine BEdingung reinzusetzen, ob das Element gewählt
werden soll. Das dann in einem zweiten Array A der Größe n (Array aller
ausgewählten Geschenke) abzuspeichern. Denn nur dann hätte man doch ein
"Fließband" simuliert, wo ein GEschenk nach dem anderen herauskommt.
Und nur dann würde die Zusatzbedingung "wenn danach eines kommt, das
ihm vielleicht besser gefällt, als eines der 20 bereits ausgewählten"
auch Sinn machen - im Gegensatz zu einer durchmischten Auswahl ( denn bei
dieser wären die Geschenke ja schon bereits "komplett durchgelaufen").
Im Zusammenhang mit dem Fließband ist mir ein Sortieralgorithmus nicht
so wirklich ersichtlich.

Über Hilfe wäre ich deshalb äußerst dankbar.

Wenn ich Ihre Frage richtig verstehen, dann gehen Sie davon aus,
daß unmittelbar in das Array eingelesen wird. Dies ist aber
nicht der Fall!

Zwar haben Sie haben recht: zunächst werden exakt die ersten
20 eingelesenen Zahlen / Geschenke in das Array gespeichert. Dann ist
es voll! Nun versuchen wir, die 21. Zahl zu lesen. Wenn das klappt,
dann berechnen wir nun eine Zufallszahl zwischen 0 und 20 (weil unser
Array bei 0 zu zählen beginnt). Ist diese Zahl gleich 20 (und
damit grösser als unser maximaler Index (19, siehe Feedback 93)), dann
verwerfen wir die eingelesene Zahl auf Nimmerwiedersehen und versuchen,
die nächste einzulesen und erneut eine Zufallszahl (nun zwischen
0 und 21) zu bestimmen. Ist sie hingegen kleiner, dann ersetzen wir
die Zahl, die in unserem Array auf der Position der soeben ermittelten
Zufallszahl steht, durch die gerade eingelesene Zahl / das Geschenk.

Das Array ist damit also immer noch genauso voll wie vorher, wir haben
nämlich nur eine Arrayposition ersetzt.

Ihr Vorschlag ist leider nicht durchführbar, da Sie beim Anlegen
eines Arrays stets dessen Größe angeben müssen. Genau
das ist aber der Witz an unserer Aufgabe: Die Anzahl der einzulesenden
Zahlen bzw.  Geschenke ist völlig unbekannt, so daß es
nicht möglich ist, sie in ein Array irgendeiner vordefinierten
Größe - so wie Sie es vorschlagen - zu speichern.

-nh

93.)
++++++++++++++ Fri Dec 10 17:29:34 2004 ++++++++++++++
Hallo,
ich habe eine Frage zur Aufgabe 17.
Ist es gewollt, dass Array[0] nicht mit einer anderen Zahl besetzt werden kann.
In der Aufgabenstellung steht nämlich, dass nur der Bereich 1 -> 19 neu
bestetzt wird. (RamdonGenerators.Val(1, 20))

Vielen Dank für die Antwort und weiter so! 

Der Algorithmus auf dem Übungsblatt sollte zunächst
mal unabhängig von der späteren Umsetzung in eine bestimmte
Programmiersprache gelesen werden. Somit ist im Algorithmus mit Element 1
tatsächlich das erste, mit 2 das zweite und mit n das letzte
Element gemeint.

Wenn dieser Algorithmus nun (z.B. in Oberon) umgesetzt wird, so
verschieben sich die Bezeichnungen um eins "nach unten", da bei uns
das erste Element ja mit 0, das zweite mit 1 und das letzte mit n-1
angesprochen wird.

Die obere Grenze des Bereiches, aus dem eine Zufallszahl erzeugt werden
soll, ist aber keinesfalls immer 19 bzw. 20. Denn als Obergrenze fungiert
hier die Variable t, die mitzählt, wieviele "Geschenke" bereits
erfolgreich gelesen werden konnten. Ist t > 19 (also größer als
der höchste Index des Arrays), dann wird die Eingabe
verworfen, andererseits das Element an Position t ersetzt.

-nh

92.)
++++++++++++++ Wed Dec  8 20:18:23 2004 ++++++++++++++
abend erstmal,

ich hab da mal eine frage :

ist der befehl zum erstellen der 1000 zahlen

"perl -e 'print join(" ", (1..1000))'}"
(originalkopie vom blatt 8 ohne die "" :D )

so korrekt oder ist da ne klammer zu viel? komisch ist auch dass eine
geschweifte klammer zugeht aber keine aufgemacht wurde. --- so wie der befehl
dasteht hat er bei mir nicht funktioniert (..ich war auf der thales falls das
ne rolle spielt...)

Mea maxima culpa! Die geschweifte Klammer war in der Tat falsch! Ich
hab's soeben korrigiert! Vielen Dank!

Aber die beiden runden Klammern stimmen. Das äußere Paar Klammern
(bzw. dessen Inhalt) wird von der Funktion "join" benötigt, und 
(1..1000) steht in Perl sinngemäß für eine Liste der
Zahlen von 1 bis 1000.

Nur für Interessierte: Exakt bedeutet der Perlausdruck: Schreibe
mir bitte die Liste der Zahlen von 1 bis 1000 - jeweils getrennt durch 
ein Whitespace (" ") - auf die Standardausgabe.

-nh

91.)
++++++++++++++ Tue Dec  7 18:22:23 2004 ++++++++++++++
Hallo!
Wird in Allgem. Informatik im ersten Semester eigentlich eine Klausur
geschrieben?
Wenn ja: wann?

Das kommt auf Ihren Studiengang an. Normalerweise schreiben nur die
E-Techniker eine Klausur. Falls Sie also ein(e) WiMa sind, bekommen Sie
den Schein für eine erfolgreiche Teilnahme an den Übungen. Wenn
Sie jedoch E-Techniker(in) sind, dann sollten Sie sich den Klausurtermin,
den Sie übrigens auf unserer Vorlesungshomepage (ganz oben unter
"Termin") finden, schonmal freihalten!

-nh


Update: Und hier noch eine Ergänzung von Andreas Borchert:
So eine Frage kann heute nur von jemanden oder jemandin kommen, der
oder die nicht in der Vorlesung war, da dies ausfuehrlich besprochen
wurde. Selbst wenn Wimas den Schein fuer Allgemeine Informatik I nicht
benoetigen, empfiehlt es sich dringend, die Vorlesung zu besuchen und an
den Uebungen teilzunehmen, da es sonst massive Probleme in Allgemeine
Informatik II geben wird. Dort ist der Schein Pflicht und es gibt auch
eine Klausur dazu.

-afb


90.)
++++++++++++++ Mon Dec  6 22:04:31 2004 ++++++++++++++
Hallo!

Ich hätte mal einen Vorschlag zu machen,
wäre es möglich das Informatik-Skript in kleine Portionen unterteilt ins Netzt
zu stellen??
Man müßte dann nicht immer das gesamte Skript runterladen, was ja irgendwann
auch nicht mehr ganz wenig sein wird.

Durch die HTML-Variante des Skriptes haben Sie doch die Möglichkeit,
sich das Skript sogar seitenweise herunterzuladen.

Ansonsten ist es aber doch sinnvoller, nur eine Datei mit dem kompletten
Skript zu haben (in dem Sie dann auch mal blättern können), als
für jedes Thema (oder jede Vorlesung) eine eigene Datei öffnen
zu müssen.

Und dann gibt es da noch die Möglichkeit, Ihren
"Wunschteil" aus dem Skript zu extrahieren. Eine
detaillierte Anleitung hierfür finden Sie hier.

-nh

89.)
++++++++++++++ Mon Dec  6 21:34:22 2004 ++++++++++++++
Zu Kommentar 86:
Die Argumentation, dass man jede FOR Schleife nach C-Syntax ja auch als WHILE
schreiben könnte, ist irgendwie nicht konsequent weitergeführt worden.
Schließlich könnte man LOOP, PROCEDURE und WHILE durch den sehr viel simpleren
Befehl GOTO ersetzen. Wie man beweisen kann
(http://de.wikipedia.org/wiki/GOTO-Programm), wird dadurchdie Berechnbarkeit
von Problem nicht verändert. Und trotzdem werden Sie mir zustimmen, dass ein
solcher Schritt sehr unsinnig wäre. Wo also ist die Grenze zwischen
Vereinfachung der Sprache und unschöner Programmiertechnik? Oder anders
gefragt: Warum programmieren wir nicht in Brainfuck? 
Ich meine eine FOR Schleife nach C-Syntax lässt sich einfach gut lesen, man
wird sofort über Countervariablen informiert, insbesondere ist der Syntax ja
perfekt um Arrays, verkette Listen usw... geeignet (Ich frage besser nicht nach
foreach...) Insofern kann ich die Argumentation gegen FOR-Schleifen nicht
wirklich verstehen.

Selbst wenn ich Ihre Argumente nachvollziehen kann, lässt es sich
nun leider nicht ändern, daß es in Oberon keine FOR-Schleife
(und wie Sie richtig vermuten auch kein "foreach") gibt.

Aber trösten Sie sich: Ab dem dritten Semester programmieren Sie
in der Regel mit C, und im Hauptstudium können Sie Ihre Vorlesungen
sogar nach dort verwendeter Programmiersprache wählen.

Also: noch eineinhalb Semester warten, und Sie bekommen Gelegenheit,
FOR-Schleifen zu verwenden!

-nh


Update: Und hier noch eine Ergänzung von Andreas Borchert:
Wir koennen auch voellig auf Schleifen und insbesondere auf GOTOs
verzichten. Beispielsweise mit dem Lambda-Kalkuel haben wir immer
noch die gleiche Ausdruckskraft. Mehr dazu findet sich in meinen
Vorlesungsfolien dazu unter
   http://www.cs.rit.edu/~afb/20013/plc/slides/lambda.html

Die for-Schleifen-Konstruktion von C hat auch einige Nachteile:

 - Unuebersichtliche Syntax: Gerade wenn die drei Teile etwas
   laenglicher werden, entstehen wahre Monster, die nicht einmal
   optisch voneinander gut getrennt sind.

 - Sie bringt eben wegen ihrer Aequivalenz zur while-Schleife
   keine Optimierungsvorteile.

Bei jeder Programmiersprache sollten zumindest Abwaegungen
stattfinden, die sicherstellen, dass eine elegante Ausdrucksweise
moeglich ist, ohne ein Uebermass an Ueberladung und Komplexitaet
in Kauf zu nehmen. Persoenliche Geschmaecker koennen hier natuerlich
zu unterschiedlichen Resultaten kommen. Es ist also ganz normal,
dass man nicht mit allen Punkten einer Programmiersprache
uebereinstimmt. Allerdings gehoert auch sehr viel Erfahrung dazu,
um sinnvolle Abwaegungen durchzufuehren.

-afb


88.)
++++++++++++++ Mon Dec  6 14:08:56 2004 ++++++++++++++
Hallo zusammen

Ein ganz dickes "rofl" und ein noch dickeres "thumbs up" für Aufgabe 16. Ich
konnte erst mit ein paar Minuten Verspätung die Aufgabe bearbeiten, weil ich
vor Lachen nix gesehen habe und auch nicht im Stande war eine Tastatur zu
bedienen.
Dickes Lob !
Weiter so !

Ja, vielen Dank! Mal sehen, was sich machen lässt... ;-)

-nh

87.)
++++++++++++++ Mon Dec  6 13:48:57 2004 ++++++++++++++
Hallo,
ich hatte da mal ne kurze Frage bzw. eine Bitte um Hilfe :-)

Bei der Aufgabe mit dem Psychiater habe ich das ganze erst logisch selbst
betrachtet - es gibt ja nur eine Lösungsmöglichkeit für das Problem, deshalb
muss ich das ganze ja nicht mit den SChleifen machen.
Ich habe die Bedingungen ausformuliert, so wie es mir richtig erscheint -
jedoch bekomme ich nie eine Antwort, d.h. alle Bedingungen sind nie erfüllt.
Daraufhin habe ich die Boolschen Variable des Ergebnisses, das herauskommen
muss, also 
hysterisch := TRUE;
minderwertigkeit := TRUE;
zwangsvorstellungen := TRUE;
schon im vornherein gesetzt um zu überprüfen, welche der sieben Bedingungen bei
diesem Ergebnis nicht TRUE ist (das habe ich mit IF Abfragen gemacht).
Nun das Programm zeigt mir an, dass alle Bedingungen außer die zweite erfüllt
sind, also:
"Wenn Sie größenwahnsinnig sind, jedoch keinen Minderwertigkeitskomplex haben,
dann haben Sie Zwangsvorstellungen."
Ist die Vorgehensweise so richtig, damit ich den Fehler ermitteln kann? Ich
denke, dass die korrekte Implementierung der Bedinung zwei wie folgt aussieht:

s2 := (groessenwahnsinn & ~minderwertigkeit) = zwangsvorstellungen;

Meine Überprüfung zeigt jedoch trotzdem an, dass die Bedingung nicht erfüllt
ist - woran kann das liegen?
Habe ich die Bedingung evtl. doch falsch übertragen?

Vielen dank für die Hilfe :-)

Ich glaube, hier können wir am besten helfen, wenn wir Ihr
vollständiges Programm zur Verfügung gestellt bekommen. Sie
können es mir gerne per E-Mail zukommen lassen"

So wie es aussieht, liegt der Fehler aber bereits hier:

   s2 := (groessenwahnsinn & ~minderwertigkeit) = zwangsvorstellungen;

Dies entspricht nämlich nicht der Bedingung!

-nh

86.)
++++++++++++++ Sat Dec  4 15:57:59 2004 ++++++++++++++
Warum hat unsere Oberon Version keine FOR Schleife? Ist irgendwie
reichlich umständlich (um es mal nett zu formulieren) ohne for to zu
programmieren.

Den Grund dafür, warum es in Oberon keine FOR-Schleife gibt, kann
Ihnen Andreas Borchert besser nennen als ich. Ich habe diese Frage
mal an ihn weitergegeben und werde seine Antwort demnächst hier posten.

Aber letztlich können Sie doch durch die Verwendung einer
entsprechenden WHILE-Schleife die fehlende FOR-Schleife ersetzen!

-nh


Update: Und hier noch eine Ergänzung von Andreas Borchert:
In dem Sprachreport fuer Oberon von Niklaus Wirth ist keine FOR-Schleife
enthalten. Und Niklaus Wirth hat auch nie spaeter eine FOR-Schleife
hinzugefuegt. Insofern hat es nichts mit unserer Oberon-Version zu
tun, sondern gilt fuer alle Oberon-Implementierungen, die sich an die
Sprachdefinition von Niklaus Wirth halten.

Es bleibt die Frage, warum Niklaus Wirth sich dafuer entschieden hat,
die FOR-Schleife wegzulassen. Ich habe ihn nicht diesbezueglich
persoenlich befragt, aber mir faellt dazu folgendes ein:

 - Wenn es eine FOR-Schleife nach dem Muster von Modula-2 oder Pascal
   ist, dann haben wir eine komplizierte besondere Semantik fuer
   diese Schleife:
   
    * Was passiert, wenn die Schleifenvariable waehrend der Ausfuehrung
      der Schleife modifiziert wird? Viele besonders effiziente
      Umsetzungen der FOR-Schleife koennen diesbezueglich so sensibel
      sein, dass dies u.U. zu einer Dauerschleife fuehren kann.

    * Welchen Wert hat die Schleifenvariable nach Beendigung der
      FOR-Schleife?

    * Ist garantiert, dass die FOR-Schleife das richtige tut, wenn
      der Endwert gleichzeitig der Endwert des zugehoerigen Wertebereiches
      ist?

    * Was ist als Schleifenvariable zugelassen? Ein beliebiger
      Designator oder nur eine lokale Variable?

 - Wenn es eine FOR-Schleife nach dem Muster von C, C++ oder Java ist,
   dann ist es nichts anderes als eine etwas anders formulierte
   WHILE-Schleife. Das vereinfacht die Semantik, bringt aber eben
   auch keine besonderen Vorteile.

Wenn Niklaus Wirth also die FOR-Schleife eingefuehrt haette,
dann haette er sie wahrscheinlich so aehnlich wie in Modula-2
definiert. Die Implementierung dieser Schleife ist jedoch deutlich
komplizierter als die Implementierung aller anderen Schleifenformen
zusammengenommen. Es ist natuerlich machbar, aber hier fiel offenbar
eine Kosten-Nutzen-Entscheidung und die fiel am Ende zu Lasten der
FOR-Schleife aus.

-afb


85.)
++++++++++++++ Fri Dec  3 14:45:08 2004 ++++++++++++++
Also ich weiss irgend wie nicht wie man solche Logik-Aufaben
loest! Ich habe noch nie von so was gehoert und weiss nicht
wie man an so ein problem wie Aufgabe 15 per Hand loesen
soll!
Ich hab jetzt das Programm geschrieben und das laeuft auch nun
weiss ich leider nicht ob das stimmt was da als Loesung ausgegeben wird!
Ich brauchte einen Tipp wie man so eine Aufgabe loesen kann ohne sich
ewig den Kopf zu zerbrechen!
Was sollte das Programm zu Aufgabe 15 ausgeben?

Die Beispielprogramme aus den Übungen sind doch in ganz
ähnlicher Form konzipiert, wie es Ihre Lösung sein
sollte. Versuchen Sie zunächst, diese nachzuvollziehen und
die Funktionsweisen zu verstehen. Dann sind Sie der Lösung der
Übungsaufgaben schon ein großes Stück näher.

Und schauen Sie auch mal in das Forum. Dort haben "Dominik"
und "Helios" die Ausgaben ihrer Programme gepostet. Ich würde sagen,
diese Ausgaben sehen gar nicht so schlecht aus...

-nh


Update: Und hier noch eine Ergänzung von Andreas Borchert:
Bei den Logeleien von Zweistein handelt es sich um eine regelmaessige
Kolumne der Wochenzeitung ``DIE ZEIT'', die durchaus an das allgemeine
Publikum gerichtet ist. Sie begann in den 60er Jahren und wird bis heute
fortgesetzt. Die aktuelle Logelei findet sich beispielsweise unter
http://www.zeit.de/2004/50/Spielen_2fLogelei_50

Wie bei jedem guten Raetsel ist die Loesung natuerlich nicht offenkundig
und etwas Grips muss schon investiert werden. Sonst waere es auch
langweilig. Typischerweise beginnt die Suche mit einer ausfuehrlichen
Betrachtung und Analyse der vorgegebenen Punkte. Es kann hilfreich
sein, diese zu formalisieren, aber auch das kann haeufig wegfallen.
Jedenfalls wird zu Beginn nach leicht zu ziehenden Schlussfolgerungen
gesucht, die geeignet sind, den Loesungsraum deutlich einzugrenzen.

Schauen wir mal konkret die Aufgabe an.  Wenn wir den ersten und
letzten Punkt betrachten, wissen wir bereits, dass der Patient
mindestens zwei Leiden hat:

   - hysterisch oder groessenwahnsinning
   - Zwangsvorstellungen oder Depressionen

Als naechstes sehen wir eine Reihe von Unvereinbarkeiten, also
Leiden, die sich gegenseitig ausschliessen:

   - Zwangsvorstellungen <-> Depressionen (Punkt 3)
   - hysterisch <-> Depressionen (Punkt 5)
   - Zwangsvorstellungen <-> groessenwahnsinning (Punkt 6)

Entsprechend gewinnen wir zwei Kombinationen, von denen genau
eine zutrifft:

   - hysterisch und Zwangsvorstellungen
   - groessenwahnsinnig und Depressionen

Mit beiden Kombinationen koennen wir dann Schritt fuer Schritt durch
alle Punkte gehen.  Fangen wir mit der zweiten an. Aus Punkt 2 folgt ein
Minderwertigkeitskomplex (sonst muesste er Zwangsvorstellungen haben,
was wegen Punkt 6 ausgeschlossen ist). Aus Punkt 4 folgt dann, dass
keine Depressionen vorliegen. Widerspruch!

Also bleibt die erste Kombination aus hysterisch und Zwangsvorstellungen.
Aber auch hier muessen wir durch alle Punkte gehen: Nach Punkt 6 kommen
dann die Minderwertigkeitskomplexe noch hinzu. Nach einer letzten
Ueberpruefung stellt sich dann heraus, dass kein Widerspruch mehr vorliegt:

   hysterisch
   Zwangsvorstellungen
   Minderwertigkeitskomplexe

Die beiden verbliebenen Leiden sind bereits ausgeschlossen (siehe
die obige Liste der Unvereinbarkeiten). Somit gibt es auch keine
weiteren Loesungen.

-afb


84.)
++++++++++++++ Thu Dec  2 18:12:40 2004 ++++++++++++++
Ich möchte nun nicht zu allgemeiner Schlamperei aufrufen oder dafür
verantwortlich sein, dass jemand seine Daten verliert. Aber bei mir
funktioniert das mit dem USB-Stick so wie unten beschrieben seit Wochen ohne
Probleme. Und es sind keinerlei Fenster auf, die noch auf den Stick zugreifen.
Es ist mehr ein Problem, dass der Stick irgendwie über Ihre Methode gar nicht
aufzufinden ist, per Plug&Play jedoch prima funktioniert (wird auch im
Arbeitsplatz unter Suse 9.2 korrekt angezeigt). Mit Datenverlust hatte ich
jedenfalls noch keine Probleme.

Okay, ich glaube Ihnen gerne, daß es im Linux-Pool unter
SuSE 9.2 mit KDE über Plug & Play problemlos funktionert,
USB-Sticks anzusprechen. Die ursprüngliche Methode (also die aus
den Übungen mit mount und so) sollte aber zusätzlich
auch noch funktionieren.

Aber wie gesagt: Ich selber habe aber keinerlei aktuelle Erfahrung
dort. Bei Gelegenheit schaue ich mal wieder vorbei und werde in den
Übungen davon berichten.

-nh

83.)
++++++++++++++ Thu Dec  2 10:25:51 2004 ++++++++++++++
Hallo,

unsere Info-Gruppe hatte eben vor das neue Übungsblatt zu
bearbeiten. Dabei sind "schwerwiegende" Probleme aufgetreten. Der Zugang
zu den Homeverzeichnissen ist nicht möglich. Es hat den Anschein,
dass es mal wieder ein Serverproblem vorliegt. Damit ist uns leider
nicht möglich das neue Übungsblatt pünktlich zum nächsten Tutorium
fertig zustellen (welches für uns bereits Montag stattfindet), da die
verschiedenen Mitglieder unserer Gruppe dieses Wochenende unausweisliche
Termine ausserhalb Ulms wahrnehmen müssen. Wir möchten jetzt nicht wieder
alles schlecht machen, dennoch hiermit unseren Ärger zum Ausdruck bringen.

Wo genau ist denn die Party "außerhalb Ulms" am Wochenende?

Na gut Spaß beiseite: Es gab heute früh in der Tat leider
Schwierigkeiten mit der Theseus, auf der die Heimatverzeichnisse der
Studenten liegen. Seit dem frühen Nachmittag ist aber alles wieder
in Ordnung, und Sie können nun wie gewohnt arbeiten.

-nh

82.)
++++++++++++++ Wed Dec  1 16:45:06 2004 ++++++++++++++
Interessanterweise funktioniert das mounten eines USB-Sticks im Linux-Pool
gerade so wie in den Übungen besprochen nicht! Wenn man lediglich den Stick
anschließt und dann über ein Unterverzeichnis von /media/ anspricht
funktioniert alles tadellos. Der Stick kann auch ohne Probleme einfach wieder
entfernt werden, wenn ich die Schritte aus den Übungen jedoch per Shell
versuche, wird der Stick in der /etc/fstab nicht aufgeführt, ist aber bereits
als /dev/sda1 gemountet. Unmounten geht ebenfalls nicht, da der Stick nicht in
der /etc/fstab sei und man zudem keine root-Rechte habe. Es hat den Anschein,
dass Plug&Play hier irgendwie die Nase vorne hat.

Ja, das nehme ich jetzt mal so zur Kenntnis, kann aber mangels neuester
Erfahrung in diesem Pool nicht allzuviel dazu sagen. "Zu meiner Zeit"
(die noch nicht sehr lange her ist ;-)) klappte das auf die von mir
beschriebene Art und Weise (unter SuSE Linux 9.0), und eigentlich sollte es
auch immer noch so gehen.

Beim Unmounten müssen Sie natürlich darauf achten, daß
niemand mehr den Stick (bzw. dessen Verzeichnis) verwendet - auch nicht
irgendwelche Konquerror-Fenster. Vielleicht war das die Ursache für
das Problem?

In jedem Fall können Sie den Stick aber nicht "einfach wieder
entfernen", denn ein Unmounten muß - auf welche Art auch immer -
vorher erfolgen, wenn Sie keinen Datenverlust riskieren möchten!

-nh

81.)
++++++++++++++ Tue Nov 30 21:52:39 2004 ++++++++++++++
Hallo,

das neue Übungsblatt macht richtig Spaß (o.k. habe noch nicht mit dem
Programmieren begonnen), aber die Idee mit den Logeleien finde ich toll. Zudem
habe ich nun auch ein Weihnachtsgeschenk für meine anvertrauten Verwandten
(hoffe mal, das das neue Buch von Zweistein ähnlich den 88 Logeleien ist,
welches es wohl nicht mehr zu kaufen gibt) gefunden. :)

Wenn das kein Fullservice ist: Informatik lernen und gleichzeitig noch
Geschenkideen erhalten. Das gibt es nur bei der SAI!

(Es sei denn, Sie möchten Ihrer Oma vielleicht ein Analysis-Buch schenken?)

-nh

80.)
++++++++++++++ Tue Nov 30 11:19:42 2004 ++++++++++++++
Also zu Kommentar 77 würde ich sagen dass es für Leute die schon Ahnung vom
Programme schreiben haben, eine Erleichterung wäre, denn dann müsste man nicht
irgendwelche primitiven Methoden verwenden bei denen sich jedem etwas geübten
Coder die Haare sträuben.
Zu 78 finde ich ist zu sagen dass der Automat auch mit einer while Schleife
umsetzbar ist und dieses Beispiel noch lange keine loop Schleife rechtfertigt.

PS: Ich weiß immernoch nicht wie das Gegenteil zu CAP() ist.

Mittlerweile gibt es ein Update von Andreas Borchert zu Kommentar 77!
Damit sollten nun Ihre Fragen und Wünsche geklärt sein!

-nh

79.)
++++++++++++++ Tue Nov 30 00:03:44 2004 ++++++++++++++
Wenn ich mich von zu Hause über eine SSH-Shell in die Uni-Rechner einlogge und
Programmtexte in vi bearbeiten will, kommen die leider nicht so schön bunt
rüber wie an den Uni-Rechner. Und da bunt nicht nur schön, sondern auch
übersichtlicher ist, gibts da doch bestimmt eine Methode, das einzustellen.
Wissen Sie, wie das geht?

Das ist ein wenig davon abhängig mit was (Putty, Linux, CygWin, ...)
Sie sich bei uns einloggen. Für Farben gilt das gleiche wie
auch für andere grafische Dinge: Sie benötigen einen laufenden
X-Server. Das heisst, wenn Sie "nur" mit Putty arbeiten, wird Ihnen die
Darstellung von Farben leider gar nicht gelingen :-(

-nh


Update: Und hier noch eine Ergänzung von Andreas Borchert:
Was liefert bei der ssh-Anmeldung von zu Hause aus bei uns in der
Shell folgendes Kommando:
 
   echo $TERM

Wenn wir diese Antwort wissen, koennen wir vielleicht weiterhelfen.

-afb


78.)
++++++++++++++ Mon Nov 29 19:43:44 2004 ++++++++++++++
Könnten Sie mir bitte den Sinn der LOOP-Schleife erklären, ich dachte bislang
immer, dass Endlosschleifen zu schlechtem Programmierstil zählen. Eigentlich
muss doch jede Schleife im Laufe des Programms irgendwann beendet werden, und
so provoziert die LOOP Schleife nur Fehlerquellen. Und sollte eine
Endlosschleife unabdingbar sein, gibt es ja noch while (1)

Okay, mach' ich gerne nochmal für alle morgen in den Übungen.

Hier schnell die Kurzfassung: Eine LOOP-Schleife muß nicht
zwangsläufig ewig laufen, da Sie mit EXIT jederzeit
herauskommen können. Gerade das geht aber in einer
WHILE TRUE DO...-Konstruktion eben nicht (siehe dritter "blauer Balken"
auf dieser Folie!)
Und wann man eine (fehlerfrei) laufende LOOP-Schleife brauchen kann, ist
auch schnell am Beispiel eines Geldautomaten beantwortet: Wenn man an ihm
eine komplette Transaktion durchgeführt hat, geht er wieder in den
Startzustand und wartet auf den nächsten Kunden. Oder möchten
Sie einen Geldautomaten verwenden, der nach jedem "Kundenbesuch" wieder
manuell neu gestartet werden muß?

-nh

77.)
++++++++++++++ Mon Nov 29 19:08:42 2004 ++++++++++++++
Was ist das Gegenteil zur CAP() Prozedur? Es wär im Allgemeinen eh mal sinnvoll
ne Liste mit allen wichtigen Prozeduren, Funktionen und Vordefinierten
Variablen zu geben, da man sich sonst jeglichen Mist zusammensuchen muss.
Wobei es fast eh nicht lohnt in Oberon ein gutes Programm zu schreiben, wenn
die Sprache nichtmal standardmäßig ein gutes Input Output System (ich sag nur
Char statt Zahl eingeben bringt Endlosschleife) bereithält.

Alle "Tools" (also Prozeduren, Funktionen, vorbelegte Variablen /
Konstanten usw.), die Sie für die Übungsaufgaben benötigen,
werden in der Regel in den Übungen vorgestellt. Damit - und
natürlich mit dem Wissen aus vergangenen Übungsblättern -
sind Sie in der Lage, die Aufgaben zu bearbeiten.

Sprich: Sie müssen sich nichts weiter "zusammensuchen", und schon
gar keinen "Mist"!

-nh


Update: Und hier noch eine Ergänzung von Andreas Borchert:
Es gibt keine aehnlich einfache Standardfunktion wie CAP, die einfach das
Gegenstueck darstellt. Aber es laesst sich trotzdem leicht formulieren,
wenn schon mal sichergestellt ist, dass es sich um einen Grossbuchstaben
handelt:

   CHR(ORD(ch) - ORD("A") + ORD("a"))

Falls unklar ist, in welchen Bereich ch faellt, wird eine IF- Anweisung
benoetigt, etwa:

   IF (ch >= "A") & (ch <= "Z") THEN
      ch := CHR(ORD(ch) - ORD("A") + ORD("a"));
   END;

Die Liste mit allen in Oberon vordefinierten Standard-Funktionen und
-Prozeduren gibt es unter http://www.mathematik.uni-ulm.de/oberon/reports/report-1992.html
im Abschnitt 10.2.

Die Aussage ueber das Ein- und Ausgabe-System der Ulmer Oberon-Bibliothek
ist natuerlich herzlich unsachlich. Wie soll das Einlesen einer Zahl
funktionieren, wenn keine Zahl eingegeben wird? Wenn eine Schleife
dann endlos darauf wartet, dass eine Zahl kommt, wo keine Zahl ist,
kann dies doch nicht auf ``magische'' Weise geheilt werden! Das ist in
den anderen Programmiersprachen auch nicht anders. In allen modernen
Ein- und Ausgabe-Bibliotheken wird beim Versuch, eine Zahl einzulesen,
das unpassende Zeichen nicht verkonsumiert. Dies haette noch deutlich
haesslichere Effekte zur Folge.

-afb


76.)
++++++++++++++ Mon Nov 29 11:08:29 2004 ++++++++++++++
Vielleicht wäre es ganz praktisch, wenn man bei doch immer
komplizierter werdenden Programmen (zumindest kompliziert mit dem was
wir bisher laut Vorlesung können) sich vor dem Programmieren erst einen
Programmablaufsplan oder ein Struktogramm erstellt.  Dazu wäre es aber
praktisch wenn sowas zumindest am Rande in der Vorlesung behandelt wird
bzw. Anleitungen dazu ins Skript aufgenommen werden, die allermeisten
werden mit den Begriffen sicherlich nichts anfangen und schon gar nicht
selbige erstellen können.

... oder steht das eh noch auf dem Plan?

Sehr gute Anregung! Ich kann in den nächsten Übungen mal auf
solche Diagramme eingehen.

-nh

75.)
++++++++++++++ Mon Nov 29 10:53:20 2004 ++++++++++++++
Ich finde die Übungsblätter eignetlich immer sehr lustig gestellt,
wenn ich den kompletten Inhalt natürlich nicht verstehen würde, würde
ich es auch nicht lustig finden.
Wobei man für das aktuelle Blatt doch gar keine der neuen Schleifen
braucht. Hab eigentlich alles mit völlig verschachtelten IF-Sätzen und
einer While Schleife geript.  So lange die Aufgaben so übersichtlich
bleiben ist doch alles im grünen Bereich und ich bin auch ein
Programieranfänger!!

(Gilt eher noch als Erweiterung zum Kommentar zu Feedback 73:)
Genau: Wie es sich in einer Demokratie gehört, hat hier
jeder die Wahl, mit den Schleifen / Bedingungen zu programmieren,
die er/sie gerne benutzen möchte. Es müssen in Aufgabe 14 nicht
alle vorgestellen Schleifen verwendet werden!

Da in der Vorlesung gezeigt wurde, wie man verschiedene Schleifen
ineinander überführen kann, ist es Ihre Entscheidung, mit
welcher genau Sie jetzt arbeiten möchten.

-nh

74.)
++++++++++++++ Sun Nov 28 19:00:34 2004 ++++++++++++++
Hallo 
ich hätte auch mal ne frage zum neuen übungsblatt.
Was sind bitte Transitionsdiagramme? Die sind weder
in der Übung noch im Skript aufgetaucht

Mit Transitionsdiagrammen sind Diagramme dieser Art gemeint.

Für die aktuelle Aufgabe können wir es etwas einfacher halten:
Erstens können wir uns auf gültige bzw. erlaubte
Zustände beschränken, und zweitens muß Ihr Diagramm
nicht unbedingt so aussehen wie im zitierten Beispiel. Es sollte
nur irgendwie zu erkennen sein, in welchem Zustand wir uns gerade
befinden und durch welche Handlung wir nun in welchen (erlaubten)
Zustand gelangen (hinübergehen, lat.: transire, daher
Transitionsdiagramm...) können.

Salve, Caesar!

-nh

73.)
++++++++++++++ Sun Nov 28 15:44:46 2004 ++++++++++++++
(ich spar mir hier das übliche "eigentlich ist es ja gar nicht so
schlecht...ABER")

Ich habe noch nie zuvor in meinem Leben programmiert und kann wahrscheinlich
deswegen die einfachen Beispielen aus den Übungen nicht in die Übungsaufgaben
integrieren (v.a. Münzspiel). Seit dieser Woche ist das für mich nur noch ein
einziges Chaos an Schleifen, die ich wohl irgendwie miteinander verarbeiten
sollte.
(Die Vorlesung hat mir bis jetzt sowieso rein gar nix gebracht, sorry aber is
so!)

Übrigens sollten sie meiner Meinung nach die Drogen weglassen, ich finde es nur
unnötig anstrengend sich durch Ihre "Witze" durchzuschlagen.

Dass es für Anfänger besonders toll sein soll mit oberon zu arbeiten halte ich
jetzt auf für totalen Unfug, weil ich die Programme nicht bei mir zu Hause
ausprobieren kann.
Die "Profis" gehen mal kurz ne halbe Stunde an die Uni und schauen sich das an,
ich habe eigentlich besseres zu tun als mein Wochenende an der Uni zu
verbringen. (Auf meinem langsamen Rechner läuft kein Knoppix, wenn ich Linux
installiere töten mich meine Eltern und nen PC werd ich von Ihnen wohl auch
nicht geschenkt bekommen!?!)

Die Übungen sind so gedacht, daß Sie gemeinsam mit dem
Rest Ihrer Tutorien-Gruppe bearbeitet werden. Und wenn ich mich recht
erinnere, dann gibt es ausser dem Wochenende noch fünf weitere
Tage, an denen Sie doch gewiß mal an der Uni vorbeischauen (und
programmieren) könn(t)en.

Sorry, aber Schleifen und so werden Sie jetzt quer durch alle
Informatik-Vorlesungen und Programmiersprachen begleiten. Sie sind das
"Handwerkszeug", und deshalb haben wir sie Ihnen auch alle gleich zu
Beginn vorgestellt.

-nh

72.)
++++++++++++++ Fri Nov 26 23:23:13 2004 ++++++++++++++
Die Info Übungsblätter sind mit das unterhaltsamste was ich momentan
zu lesen bekomme, dieser subtile Humor kombiniert mit der nötigen Prise
Ernst, dickes Kompliment     :D

Vielen Dank! 
(Aber bald werden mir die Alcopops, die ich pro Blatt brauche, zu teuer -
dann gibt es nur noch ernste Blätter...)

-nh

71.)
++++++++++++++ Fri Nov 26 20:25:22 2004 ++++++++++++++
Hallo...

kurz mal ne Frage zu Aufgabe 12:
Da heißt es, Kalle darf nicht mit dem Auto/ Freundin auf "einer" Uferseitze
sein - damit ist die Aufgabe doch quasi unlösbar - weil ich ja stets hin und
zurück muss.
Wenn ich folglich Kalle als erstes über die Brücke helfe,
um eben den Problemen auszuweichen, dann muss ich ja als zweites entweder mein
Auto oder die Freundin mit rübernehmen. Da ich aber nur einen Gegenstand/Person
mit rübernehmen darf ist das Problem unlösbar; da auf der anderen Uferseite die
gleichen Probleme wieder auftreten.

Es sei denn die Aufgabe ist so formuliert, dass die Problemstellungen
Kalle+Auto bzw. Kalle+Freundin sich nur auf die eine Uferseite beziehen.

Vielleich hängts aber auch bei mir und ich checks einfach nicht :-)

Die Einschränkungen gelten schon für beide
Uferseiten. Und Sie haben recht: Sie müssen "stets hin und
zurück". Aber niemand sagt ja, daß Sie beim "zurück"
nicht auch wieder jemanden mitnehmen dürfen...

-nh

70.)
++++++++++++++ Fri Nov 26 18:44:23 2004 ++++++++++++++
Ich habe gerade das Münzspiel programmiert. Es wird auch alles fehlerfrei
kompiliert. Doch wenn ich das Programm starte, dann kommt nach der Eingabe der
Anzahl der Münzen die Fehlermeldung:

"Abort (core dumped)"

Das Programm bricht im Anschluss einfach ab. Was habe ich falsch gemacht? Ist
dies eine bekannte Fehlermeldung?

Ja, die Fehlermeldung ist schon "bekannt", allerdings tritt sie
typischerweise in einem Zusammenhang auf, der in der Vorlesung erst noch
behandelt wird (Arrays). Im Kern bedeutet sie, daß versucht wurde,
auf einen "falschen" Bereich im Speicher zuzugreifen.

Was genau jetzt bei Ihnen die Ursache für diese Meldung ist, kann
ich ohne Quellcode natürlich nicht sagen. Sie können mir Ihr
Programm aber gerne per E-Mail schicken!

-nh


Update: Und hier noch eine Ergänzung von Andreas Borchert:

Bei ``Abort (core dumped)'' liegt nicht automatisch ein Zugriff auf eine
falsche Speicherposition vor. Es liegt hier irgendein Laufzeitfehler vor,
z.B. wenn bei der CASE-Anweisung der ELSE- Teil vermisst wurde.

Die Fehlermeldung wird _deutlich_ detaillierter, wenn zusaetzlich das
Modul Conclusions importiert wird. Das faengt Laufzeitfehler ab und druckt
dann eine praezise Fehlermeldung einschliesslich Zeilennummer. Das sollte
dann normalerweise helfen.

-afb


69.)
++++++++++++++ Fri Nov 26 11:28:00 2004 ++++++++++++++
Ich habe mir die Muenzen_Linux heruntergeladen, habe sie auch zu einer
ausführbaren Datei gemacht mit dem chmod +x Befehl, nur wie starte ich die
Datei. Alle meine Bemühungen haben nicht gefruchtet.

Gruß

Normalerweise starten Sie das (ausführbar gemachte) Programm
einfach durch Eingabe des Namens (z.B. Muenzen_Linux oder
Muenzen_Solaris). Eventuell hilft Ihnen auch das Voranstellen eines
"./", also so: ./Muenzen_Linux oder ./Muenzen_Solaris.

Ansonsten haben Sie vielleicht den selben Fehler gemacht wie in Feedback
68.) beschrieben?

-nh

68.)
++++++++++++++ Fri Nov 26 08:51:35 2004 ++++++++++++++
hallo!

argh! jetzt habe ich für diese Muenzen_Linux-datei alles genauso gemacht wie in
der übung besprochen und das programm funktioniert nicht.

meine befehle:

wget
ftp://ftp.mathematik.uni-ulm.de/pub/vorlesungen/ws04/prog/uebungen/blatt6/bsp/mu
enzspiel/Muenzen_Linux

chmod +x Muenzen_Linux


anschließend erhalte ich folgende fehlermeldung:

"bash: ./Muenzen_Linux: cannot execute binary file"

was habe ich falsch gemacht?

Ich vermute mal, daß Sie auf einem unserer Solaris-Rechner
gearbeitet haben und nicht auf Ihrem eigenen Linux-Rechner, oder? Wenn
das zutrifft, dann liegt die Ursache für die Fehlermeldung
darin, daß Sie ein für Linux kompiliertes Programm
(Sie schreiben ja "Muenzen_Linux-datei") unter Solaris
laufen lassen wollten. Oder noch präziser gesagt: Linux
arbeitet auf Intel- und dazu kompatiblen Prozessoren, Solaris aber auf
SPARC-Archtiekturen. Deshalb können Sie Linux-Programme nicht unter
Solaris betreiben (und umgekehrt).

Lange Rede, kurzer Sinn: Wenn Sie die "Beta-Version" auf einem unserer
Rechner laufen lassen möchten, müssen Sie die Version
Muenzen_Solaris verwenden, unter Linux daheim oder beim KIZ
entsprechend die Version Muenzen_Linux.

Die Sache mit dem chmod +x gilt übrigens für beide
Betriebssysteme!

-nh

67.)
++++++++++++++ Thu Nov 25 16:46:25 2004 ++++++++++++++
Die forumsfreie Zeit ist bald zu Ende, denn in den nächsten Tagen wird das
Forum wieder geoeffnet.

Das Gerücht habe ich heute auch schon gehört. Aber wie gesagt:
Wir wissen nix und haben auch keinerlei Einfluß darauf!

-nh

66.)
++++++++++++++ Thu Nov 25 16:20:43 2004 ++++++++++++++
Was eigendlich mit KI gemeint? Blöde Frage!

KI ist die Abkürzung für Künstliche Intelligenz.

Hier ein Zitat aus der Wikipedia:

  "Künstliche Intelligenz (KI, beziehungsweise AI vom englischen
  Artificial Intelligence) ist eine Fachdisziplin der Informatik mit
  interdisziplinärem Charakter. Ziel der KI ist es, Maschinen zu
  entwickeln, die sich verhalten, als verfügten sie über Intelligenz
  (John McCarthy, 1955)."

Wer noch mehr wissen möchte, findet hier
den gesamten Wikipedia-Eintrag!

-nh

65.)
++++++++++++++ Wed Nov 24 19:25:44 2004 ++++++++++++++
Nur zur Info, das Münzen Beispielprogramm ist fehlerhaft, weil die Abfrage
fehlt ob man überhaupt noch eine bestimmte Anzahl an Münzen nehmen darf. Und
wenn dann erstmal -1 oder -2 Münzen  noch da sind gehts endlos weiter.
Und die KI ist auch nicht sonderlich toll. :D

Ja, so ist das mit den Beta-Versionen. Unglaubliche Schlamperei! Ich
habe den verantwortlichen Programmierer gerade 'rausgeworfen und den
Fehler selbst behoben. Danke für den Hinweis!

Was jedoch die KI angeht, so finde ich die genial! Die ist nämlich
von mir ;-)))

-nh

64.)
++++++++++++++ Wed Nov 24 18:34:05 2004 ++++++++++++++
Die Idee einer Platform, auf der sich die Teilnehmen von AI I austauschen und
helfen können fand ich sehr gut, und in dem Forum, auf das hier hingewiesen
wurde klappte das auch recht gut. Nun wurde dieses Forum aber geschlossen, da
die Studenten im 3. Semester offenbar darauf hingewiesen wurden, dass ab sofort
abgeschriebene Lösungen mit 0P bewertet werden, was anscheinend daran lag, dass
der Link hier "veröffentlicht" wurde...
Wäre es irgendwie möglich, so eine Platform für AI I zu schaffen (mit möglichst
wenig Administrationsaufwand natürlich) ?

Warum das Forum jetzt genau geschlossen wurde, kann ich Ihnen leider nicht
sagen. Wir finden das eigentlich auch bedauerlich, denn gegen eine offene
Diskussion über die Aufgaben, den Vorlesungsstoff und technische
Dinge ist absolut nichts zu sagen. Schade ist es natürlich, wenn
so ein Forum nur noch zum Abschreiben verwendet wird, aber wir haben
uns einfach mal darauf verlassen, daß Sie wirklich etwas aus der
Vorlesung und der Übung "mitnehmen" möchten und daher die
im Forum angebotenen Lösungen als Anregungen für eine eigene
verwendet haben.

Daß ein solches Forum existiert, war uns übrigens auch
schon vor Posting Nr. 47 bekannt. Sie können dessen Urheber(in)
also wieder von der Folterbank lösen!

Ich schlage vor, wir warten mal ab, ob das Forum bald wieder öffnet.
Wenn einer von Ihnen jedoch Zeit und Lust hat, ein reines AI-I-Forum oder
eine Newsgroup zu betreiben (und sich alle an die Spielregeln halten),
dann können wir das gerne machen. Also, wer will...?

-nh

63.)
++++++++++++++ Wed Nov 24 17:45:40 2004 ++++++++++++++
Mal ne blöde Frage! Wovon ist es abhängig vieviel Münzen der Computer nimmt?
Davon wieviel ich nehme, oder zufällig, oder nimmt er z.B wenn ich zwei nehme
immer eine usw. oder kommt es alles darauf an wieviel Münzen auf dem Tisch
liegen?!

Die Frage möchte ich im Augenblick mal noch nicht beantworten,
sondern als so eine Art Knobelaufgabe im Raum stehen lassen.

Aber spielen Sie doch mal das von mir vorbereitete Spiel (Link auf dem
Übungsblatt) gegen den Computer und beobachten Sie seine "Strategie".

Ein ganz kleiner Tip: Vom Zufall ist es nicht abhängig!

-nh

62.)
++++++++++++++ Wed Nov 24 16:48:03 2004 ++++++++++++++
Hallo,

erst mal ein großes Lob an -nh und -afb, die es als absolutem Laien Informatik
schon Stück näher bringen konnten. Ich habe gerade versucht das Münzen -
Programm runterzuladen. Leider kann ich es nicht starten. Ich habe, wie in der
Übung gesagt, mit chmod + execute (dateiname) das Programm für mich
freizugeben. Bisher ohne Erfolg. Ich bekomme als Meldung chmod: invalid mode
string: 'execute'. Was habe ich da nur falsch gemacht???

Sie haben vergessen, auch den Computer zu loben, denn der ist ja auch
nur ein Mensch... ;-) Also, erstmal vielen Dank für das nette Lob.

Und hier die Erklärung für Ihren Fehler:

Korrekt muß der Befehl lauten:

   chmod +x dateiname 

(also nicht "execute" ausschreiben, sondern durch das "x" sozusagen
nur andeuten!) Das "x" steht dann für executable, also
ausführbar.

-nh

61.)
++++++++++++++ Tue Nov 23 14:21:25 2004 ++++++++++++++
Hi!

Ich würd mich mal dafür interessieren, wie die Informatik Prüfung abläuft.
Müssen wir da ein Programm auf Papier verfassen und/oder allgemeine Fragen zur
Inf. beantworten. (z.B. über Grammatiken ..) 
Steht schon ein genauer Prüfungstermin fest?

Sowohl als auch: Es werden Fragen zum Verständnis des Stoffes
gestellt, aber es kommt auch vor, daß Sie mal (kleinere) Programme
aufschreiben müssen. Schauen Sie bei Gelegenheit mal in Ihrer
Fachschaft vorbei. Dort gibt es in der Regel Prüfungsprotokolle zum
Kopieren, die Ihnen ein recht genaues Bild vom Ablauf einer Prüfung
geben.

Ein Tipp aus eigener Erfahrung: Sie sollten sich gerade im Grundstudium
auf jeden Fall Prüfungsprotokolle ansehen, bevor Sie in eine
Prüfung gehen!

Der Termin ist übrigens Verhandlungssache mit Ihrem Prüfer. Da
gibt es keine festen Vorgaben (zumindest nicht in der Mathematik und
bei uns in der SAI).

Update: Das Vorstehende gilt allgemein auch für andere
Vorlesungen. Von Andreas Borchert haben mich gerade noch einige Hinweise
erreicht, die sich exakt auf unsere Vorlesung "Allgemeine Informatik I"
beziehen und die ich Ihnen nachstehend - mit Ergänzungen von mir -
weitergebe:

   Die Pruefungsmodalitaeten haengen vom Studiengang ab:

   - E-Techniker werden im Anschluß an dieses Semester eine
     Vordiplomsklausur schreiben. Beispiele für diese Klausuren
     finden Sie auf den Homepages vergangener Vorleseungen.

   - Bei den anderen wird der Schein fuer Allgemeine Informatik I
     aufgrund der Uebungsteilnahme vergeben.
     Eine Klausur zum Schein gibt es erst bei Allgemeine Informatik II
     im Sommersemester.

   - Muendliche Vordiploms-Pruefungen gibt es bei den Diplom-Studiengaengen
     Physik (falls so gewaehlt) und Mathematik (mit Informatik als
     Nebenfach) fuer Allgemeine Informatik I und II, also nicht etwa
     jetzt nur auf Basis von Allgemeine Informatik I.

-nh / -afb

60.)
++++++++++++++ Mon Nov 22 10:43:39 2004 ++++++++++++++
hm, da steht aber keine Zeilennummer
jetzt hab ich zwar den Fehler mit Hilfe anderer behoben, doch wenn ich nun mein
Programm ausführen möchte, dann ist das wie ne Endlosschleife; d.h., er gibt
mir irgendwelche Zahlen aus und das am Stück (hab es abgebrochen mit Strg. c,
doch den Fehler dafür hab ich leider nicht gefunden
wenn es dafür auch noch ne logische Erklärung gebe, dann hätte ich die bitte :)

(Das ist doch hier wohl die Fortsetzung von Feedback 58, oder?)
Ganz ganz sicher wird es auch dafür eine "logische Erklärung"
geben. Die kann ich aber nur näher ausführen, wenn ich Ihren
Programmcode habe, denn wie sollte ich sonst Ihren Fehler finden? Also
wäre der nächste "logische" Schritt für Sie, mir Ihre
.om-Datei zu schicken, nach Möglichkeit aber bitte per E-Mail.

Update: Was das Problem mit den Zeilennummern betrifft, so gibt
der Oberon-Compiler grundsätzlich die Zeilennummern
sowie die genaue Position des Fehlers aus. Siehe dazu auch 
das Skript zur Vorlesung.

Den einzigen Grund, den ich erkennen kann, daß keine Zeilennummern
ausgegeben wurden, ist, daß nicht der Compiler den 'syntax error'
angemahnt hat, sondern dies bei der Erstellung des makefiles mit Hilfe von
'mmo' bereits geschehen ist. In diesem Fall wäre der Fehler dann am
ehesten in den Kopfzeilen (z.B. beim IMPORT) Ihrer *.om-Datei zu suchen.

Bei Anfragen dieser Art sollten Sie - um schnell eine Lösung Ihres
Problems zu erhalten - jedoch immer die konkreten Fehlermeldungen mit
in Ihre Feedback-Anfrage hineinkopieren. Dies erleichtert uns die
Fehlersuche.

-nh

59.)
++++++++++++++ Mon Nov 22 10:14:33 2004 ++++++++++++++
Find das mit den Goodies ganz nett... guter "service" :-)

Jaja, so sind wir halt...!

-nh

58.)
++++++++++++++ Mon Nov 22 10:00:08 2004 ++++++++++++++
bei mir erscheint immer syntax error, wenn ich meine Programmierungen ausführen
möchte! Was soll ich tun????

Den Syntax-Error beheben... :-)))

(Bevor es wieder Ärger gibt: Ein Syntax-Error bedeutet, daß
Sie irgendwo in Ihrem Programmtext einen Fehler im Satzbau ("Syntax")
haben. Mitsamt der beschriebenen Meldung müssten Sie eigentlich auch
eine Zeilennummer ausgegeben bekommen, in der dieser Fehler steckt. Also
schauen Sie sich diese Zeile nochmals genau an und suchen / beheben den
Fehler. Danach übersetzen Sie Ihr Programm erneut und schauen,
ob es diesmal ohne Fehlermeldung durchläuft.)

-nh

57.)
++++++++++++++ Sun Nov 21 19:56:45 2004 ++++++++++++++
Es hat zwar nichts mit der Aufgabe direkt zu tun, aber widersprechen die
Ausführungen in Feedback Nr.56 nicht der Formel auf dem Übungsblatt? Die
Rechenmethode von Gauss besagt nämlich, dass Ostersonntag nie auf den
26. April fallen wird, in den Ausführungen heisst es aber, dass dies
unter bestimmten Bedingungen durchaus der Fall sein kann...

Das liegt eher an (meiner) Formulierung auf dem Übungsblatt.
Ich habe nochmal recherchiert und die Auskunft gefunden, daß Ostern
nach dem Konzil von Nicäa (325 n.C.) nicht auf einen 26. April
fallen darf. Das hat Meister Gauss in seiner Formel ja auch
richtig berücksichtigt.

Die in meiner Antwort zu Feedback 56 zitierte Ausführung verstehe
ich so, daß es - abgesehen davon, daß Ostern gar nicht auf
einen 26. April fallen darf - zudem auch noch sehr unwahrscheinlich ist,
daß dieser Fall eintritt.

Also kann Ostern rein theoretisch auf den 26. April fallen,
darf es aber nicht. Oder versteht das irgendjemand von Ihnen
anders? Dann können wir dieses Problem ja mal im Forum miteinander
diskutieren...

-nh

56.)
++++++++++++++ Sat Nov 20 14:18:50 2004 ++++++++++++++
Hallo.
Zu Aufgabe Nr. 10 (Osterformel) würde ich mal gerne die Jahre wissen, in denen
die Sonderfälle greifen müssen. Also in welchem Jahr anstelle des 26. April der
19. April zu setzen ist...
Dann könnte man das Programm mal komplett auf Funktionalität überprüfen.
Danke.

Ein gute Frage...! Ich habe mal ein wenig recherchiert und die Auskunft
gefunden, daß Ostern seit 200 Jahren nicht mehr auf den 26. April
gefallen ist und auch in den nächsten 200 Jahren nicht mehr auf
diesen Termin fallen wird. Hier die Begründung dafür, die ich
im Internet gefunden habe:

   "Auf den 26. April kann Ostersonntag nur dann fallen, wenn es Neumond
   am Nachmittag oder Abend des 20. März gegeben hat. Dann tritt
   nämlich der nächstfolgende Neumond wieder am 19. April (morgens oder
   vormittags) auf und nur wenn es dann überdies noch ein Sonntag ist,
   dann wird Ostern am nächstfolgenden Sonntag, den 26. April gefeiert.

   Was die Wahrscheinlichkeiten angeht, müssen wir hier Halbtage
   heranziehen und deren gibt es während eines Mondcyclus'
   59. Also 1:59, dass der Vollmond in der zweiten Hälfte des
   20. März anfällt. Da zudem der 19. April ein Sonntag sein muss
   und es 7 Wochentage gibt, müssen wir diese Wahrscheinlichkeit
   noch Siebenteln, woraus sich der Endwert von 1:413 ergibt und
   niemand von uns je einen 26. April als Ostersonntag erlebt hat
   oder erleben wird."
   

Falls Sie Ihr Programm aber testen wollen, dann nehmen Sie als
"Ausnahmedatum" doch einfach ein anderes (z.B. das von diesem
Jahr). Wohlgemerkt: Nur zum Probieren! Wenn dann alles klappt,
können Sie dieses Datum gegen den 26. April austauschen und sich
darauf verlassen, daß nun auch dies korrekt erkannt wird.

-nh

55.)
++++++++++++++ Fri Nov 19 19:44:43 2004 ++++++++++++++
Hallo

Für das Übungsblatt 5 wollte ich bei mir in Linux (SuSE 9.1) Oberon 0.7.8
installieren. Das hat noch so weit geklappt, aber nun bringt mir obbuild immer
den Fehler, dass er das Modul xxx (Parameter) nicht finde. Die INSTALL-Datei
bin ich komplett durchgegangen, aber beim Ausführen des Befehls
obci -a $OBERON/var/cdbd/write -b /pub/cdb/oberon *.od
oder auch
obci -a $OBERON/var/cdbd/write -b /pub/cdb/oberon *.om
kam immer die Meldung, dass *.om/*.od nicht gefunden werden könne. Liegt das
daran bzw. was kann ich machen/was habe ich falsch gemacht?

Baldige Antwort wäre toll (möglichst noch vor dem Tutorium...), danke.

Diese Frage kann Ihnen am besten Andreas Borchert beantworten. Ich habe
dieses Feedback mal an ihn weitergeleitet und werde seine Antwort hier
für alle zur Verfügung stellen. Grundsätzlich wäre
es aber schöner, wenn Sie Fragen dieser Art direkt per E-Mail an
einen von uns stellen.

-nh


Update: Und hier die Antwort von Andreas Borchert:

Es waere sehr hilfreich, wenn Fehlermeldungen exakt kopiert werden
koennten (Copy & Paste), dann haben wir weniger Raetselspiele. Noch
besser sind komplette Protokolle.

Wenn tatsaechlich eine Fehlermeldung kam, dass ``*.om/*.od'' nicht
gefunden worden sei, dann frage ich, warum da der Schraegstrich steht.
Der steht jedenfalls nicht in der Anleitung.

Wenn ich die Ausfuehrungen richtig interpretiere, koennen wir folgendes
festhalten:

  - Der Aufruf von obci ging schief. Das lag offenbar daran, dass
    nicht-existente Dateien angegeben worden sind.
  - Wenn die Quellen nicht mit obci in die Datenbank befoerdert
    werden, dann muss obbuild daran scheitern, sie zu finden.

Abschliessend: Wer moeglichst rasche Antworten haben moechte, moege
mich bitte unter borchert@mathematik.uni-ulm.de kontaktieren. Das geht
deutlich schneller als der Umweg ueber die Feedback-Seite.

-afb


54.)
++++++++++++++ Fri Nov 19 12:08:19 2004 ++++++++++++++
Hallo,
mit dem Link zu den Beispielen aus der letzten Übung landet man nur auf der
ftp-site. Ist das so gewollt?
Praktischer wäre eine html-site, dann muss man sich nicht durch die
Verzeichnisstruktur klicken. Oder noch besser: Beides.

Na klar! Und eine vergoldete Tastatur samt diamantbesetzter Maus gibt
es dann auch noch dazu, gell?

Also dies Feedback versteh' ich nun wirklich nicht! Natürlich ist es
so gewollt, daß man auf der FTP-Seite landet. Wo denn sonst? Und
auf dieser FTP-Seite gibt es dann - fein säuberlich, wie sich das
gehört - die Beispielprogramme thematisch sortiert in einzelnen
Unterverzeichnissen. Das gilt analog übrigens auch für die
Lösungen! Wo genau ist jetzt das Problem?

Falls Sie nur nicht klicken wollen, kann ich Ihnen kommandozeilenbasierte
FTP-Tools (wie zum Beispiel ncftp) empfehlen, von wget
ganz zu schweigen.

-nh

53.)
++++++++++++++ Fri Nov 19 09:06:34 2004 ++++++++++++++
Ist das bei der Grammatikaufgabe (Aufgabe 9) bei der 5. Teilaufgabe Absicht,
dass die Klammern so gesetzt sind: ((A)),B) ? Oder fehlt da eine Klammer?

Au weia...! Im Gegenteil: Da fehlte keine Klammer, sondern da war eine
zuviel. Ich hab's gerade korrigiert! Aber wer jetzt schon die 'falsche'
Aufgabe 'richtig' bearbeitet hat, bekommt natürlich auch seine
Punkte.

Sorry und Danke!

-nh

52.)
++++++++++++++ Thu Nov 18 16:26:35 2004 ++++++++++++++
hmm. 

Bezüglich "Beispiele aus Übungen"
Entweder ich habe da was gehörig falsch gemacht, oder es gibt kein "Blatt5"
Verzeichnis auf dem FTP Server im Verzeichnis /Übungen/ ...

Falls Sie wirklich nach einem Verzeichnis namens "Übungen" gesucht
haben sollten, haben sie erstens in der Tat etwas falsch gemacht und
sollten zweitens zur Strafe 10 x den Satz "Ich darf keine Umlaute in
Verzeichnis- und Dateinamen verwenden..." innerhalb einer
WHILE-Schleife in Oberon ausgeben lassen.

Das gewünschte Verzeichnis erreichen Sie hier:

ftp://ftp.mathematik.uni-ulm.de/pub/vorlesungen/ws04/prog/uebungen/blatt5/bsp/

Merke: Umlaute in Verzeichnis- und Dateinamen gibt's bei uns nicht!

P.S.:  Darüberhinaus muß "blatt5" klein geschrieben werden!

-nh

51.)
++++++++++++++ Wed Nov 17 22:41:01 2004 ++++++++++++++
Hallo,
wie soll man beim neuen Übungsblatt die Ostern aufgabe lösen, wenn oberon den
AND Befehl nicht kennt?

Indem Sie sich mal die Antwort auf Feedback 49 anschauen ;-)

(Doch, doch, die war schon online, als Sie geschrieben haben...)

-nh

50.)
++++++++++++++ Wed Nov 17 19:11:28 2004 ++++++++++++++
bzgl. Aufgabe 9 zur BNF-Grammatik:
Eine Grammatik ist laut Vorlesung ein 4-Tupel bestehend aus (Vt, Vn, P, S). In
Aufgabe 9 wird das Startsymbol nicht explizit genannt. Soll das Startsymbol
frei gewählt werden?
Die Festlegung eines Startsymbols ist von Relevanz:
Aufgabe 9.6 beispielsweise lässt sich mit  als Startsymbol nicht
darstellen. Wählt man jedoch  als Startsymbol, so ist 9.6 ein Satz
der von der definierten Grammatik erkannt wird. Oder habe ich irgendwo einen
kapitalen Denkfehler?

Nein, nein, Sie haben schon völlig Recht! Ich dachte nur, daß
sich das Startsymbol aus der Logik der Aufgabe ergibt: Wir wollen
doch hier eine Liste bauen, die aus Elementen besteht, und deshalb
ist in dieser Aufgabe "List" als Startsymbol vorgesehen.

-nh

49.)
++++++++++++++ Wed Nov 17 19:00:06 2004 ++++++++++++++
Ich habe ein Problem mit dem heute erwähnten AND befehl der angeblich ja
funktionieren sollte....wie kann ich sonst 2 bedingungen mit einander
verknüpfen??

Das geht - im Unterschied zur Oder-Verknüpfung - nicht im "Klartext",
also z.B. mit "AND", sondern mit (genau) einem kaufmännischen
"und"-Zeichen, also dem '&'.

Kleines Beispiel:

[...]
   IF (day = 25) & (month = 12) THEN
      Write.Line("Frohe Weihnachten!");
   END;
[...]

Ich glaube, daß das in den Übungen etwas untergegangen
ist. Vielen Dank, daß Sie nachgefragt haben!

-nh

48.)
++++++++++++++ Wed Nov 17 16:12:11 2004 ++++++++++++++
Ich hätte mal einen Kommentar zum vim auf der thales: Im gegensatz zum vim auf
meinem Liuxrechner erscheint mir da die Standartkonfiguration etwas merkwürdig:
Zum Einen lässt sich der vim nur über ssh starten, wenn ein XServer per Cygwin
läuft. Anderenfalls erhalte ich die Meldung

"X connection to localhost:55.0 broken (explicit kill or server shutdown)."

Starte ich per ssh den vim auf meinem Linux-PC, startet er auch ohne X.

Außerdem habe ich bemerkt, dass man auf der thales im insert-modus die
Cursortasten nicht benutzen kann. Drückt man auf eine Cursortaste, wird eine
neue Zeile erstellt, die je nach Cursortaste einen Großbuchstaben erhält. Bei
"meinem" vim funktioniert das Problemlos.

Auch kann ich auf der thales im Kommandomodus die Cursortasten nicht benutzen
(gleiches Problem wie oben). Von meinem System bin ich es gewöhnt, dass man mit
der nach-oben-taste Befehle wieder abrufen kann, die man zuvor ausgeführt hat.

Das könnte vielleicht an der etwas betagten Version 5.6 des vim auf der Thales
liegen, oder?
Auf meinem Linuxsystem verwende ich die Version 6.3.4.
Wird es auf der thales vielleicht mal ein Update geben?

Und noch eine Anmerkung zum Standartpromp auf der thales: Ich finde es etwas
nervig, dass das aktuelle verzeichnis nicht angezeigt wird. Ich habe das bei
meinem Account zwar schon geändert, aber wie wäre es denn generell mit einem
Standartprompt in der Form '\u@\h:\w\$ ' ? Ich glaube, das würden auch
Studenten praktisch finden, die nicht wissen, wie man das ändert.

Das war jetzt eher Kritik am Rechnersystem der Uni bzw. an dessen
Konfiguration, an der Vorlesung und Übung habe ich absolut nichts auszusetzen.
Weiter so!

Wer unsere Rechner und deren Konfiguration kritisiert, beleidigt damit
auch uns. Deshalb nehmen wir Ihnen dieses Feedback jetzt auch ganz
furchtbar übel...

Nein, aber im Ernst: Das, was Sie beschreiben, liegt nicht an der
Konfiguration des VIM, sondern dies sind in gewisser Weise die Besonderheiten
eines Solaris-Systems. Als Benutzer von Windows / Linux ist man
natürlich an ein bestimmtes Verhalten gewöhnt, wenn man
bestimmte Tasten drückt (Cursor-Tasten, Delete-Taste, usw.). Aus
historischen Gründen verhält sich da ein Solaris-System jedoch
per default anders. Bei uns müssen Sie, um beispielsweise die
Cursor-Tasten verwenden zu können, zuvor in den Escape-Modus
wechseln. Sicher kann man das alles irgendwie nach seinen eigenen
Wünschen umkonfigurieren, aber mal ehrlich: letztlich ist es doch
nur eine Frage der Gewöhnung, oder?

Zu der Problematik 'vim unter CygWin' mit / ohne X kann ich g'rad nichts
sagen, ich mache mich aber mal schlau!

-nh


Update: Hier drei Kommentare zu diesem Feedback von Andreas Borchert:

1.) Zur Problematik vim / ssh / X
------------------------------------------
   vim moechte gerne, falls DISPLAY gesetzt ist, zum X-Server Kontakt
   aufnehmen. Das klappt problemlos lokal auf unseren Suns und auch wenn
   das X-Protokoll getunnelt wird.

   Wenn X nicht getunnelt wird und DISPLAY beim Anmeldevorgang deswegen
   zunaechst nicht gesetzt ist, wird es durch /etc/profile auf den Rechner
   gesetzt, von dem man kommt. Das ist hauptsaechlich aus historischen
   Gruenden der Fall. vim probiert dann ebenfalls den in DISPLAY genannten
   Rechner zu kontaktieren.

   Wenn dieser Rechner ausserhalb des universitaeren Netzwerkes liegt,
   scheitert dieser Versuch an der Firewall der Universitaet.  Leider gibt
   es dabei kein ACK-RST-Paket, so dass es zu einem sehr ungluecklichen
   Haenger kommt. Erst nach einem laengeren Timeout geht es dann weiter.

   Als Workaround empfehle ich ein ``unset DISPLAY'', bevor vim aufgerufen
   wird.

2.) Zur "Cursortasten-Problematik"
------------------------------------------
   Viele Linux-Distributionen uebertreffen sich gegenseitig dabei,
   zahllose von ihnen als sinnvoll erachtete Zusatzkonfigurationen
   vorzunehmen. Das mag dann zu Beginn bequemer erscheinen, wirft aber
   spaetestens dann Raetselspiele auf, wenn festgestellt wird, dass
   die Voreinstellungen aus der Doku nicht mit denen in der Realitaet
   uebereinstimmen und der Benutzer raetselt, wie einige dieser
   Zusatzkonfigurationen wieder abgeschaltet werden koennen.

   Wir sind sehr konservativ mit solchen Zusatzkonfigurationen. Die
   angefuehrte Unterstuetzung der Cursortasten ist trivial in vim
   zu konfigurieren mit Hilfe des ``map!''-Kommandos. Entsprechende
   Kommandos koennen in ~/.vimrc aufgenommen werden.

3.) Zum Standardprompt
------------------------------------------
   Auch das ist bequem selbst zu konfigurieren. Es gibt keine
   Standardeinstellung, die alle gleichzeitig zufrieden stellt.
   Gluecklicherweise hat bei uns jeder die Freiheit, diese Dinge
   umzukonfigurieren. Ansonsten gilt auch hier der konservative Ansatz:
   Wir sind sehr sehr zurueckhaltend mit der Zahl der Aenderungen.

-afb


47.)
++++++++++++++ Mon Nov 15 22:27:46 2004 ++++++++++++++
Möchte an dieser Stelle kurz mein Lob aussprechen für Dr. Borchert,
der eine abwechslungsreiche und vor allem nicht langweilige Vorlesung
macht, und natürlich für unseren Üb-Leiter Norbert "Heidi", der die
Übungen interessant und locker-witzig durchführt. Deswegen kann ich
auch Kommentar 33 nicht verstehen. Dass diese Person die einzige ist,
die sich so negativ äußert, spricht für sich und zeigt, dass Übung und
Vorlesung bei (fast) allen Studenten gut ankommen!

Zu Kommentar 36:
Die Seite, auf der sich Studenten austauschen können, existiert bereits! Das 3.
Semester WiMa hat ein Forum eröffnet und freundlicherweise dem 2. Semester auch
einen Bereich eingerichtet. Da viele aus dem 2.Semester Informatik I hören (im
Sommersemester gibt es kein Informatik I), haben die Erstsemestler das Glück,
diese Seite auch nutzen zu können.
Die Adresse ist:

http://www.foren.de/system/?id=wima

Vielleicht könnte man in der nächsten Übung kurz darauf hinweisen, natürlich
nur unter der Voraussetzung, dass die Seite nicht zum Lösung abschreiben
gedacht ist :-)

Ja, vielen Dank für dieses Feedback. Es würde uns natürlich
freuen, wenn Sie die Mehrheitsmeinung vertreten und nicht
der-/diejenige aus Feedback 33 :-)

Was das Forum angeht, so kann ich gerne am Mittwoch darauf eingehen. Ich
appelliere aber natürlich an Ihrer aller Vernunft, dies nicht
nur zum Posten und Abschreiben von Lösungen zu verwenden. In den
Tutorien und spätestens in der Klausur ist das Forum dann nämlich
unerreichbar fern...!

Schön wäre es, wenn einige der Softwareprobleme (z.B. mit
CygWin, Putty und Co.), die manchmal hier im Feedback geschildert
werden, auch dort diskutiert würden. Denn wenn viele Ideen dort
zusammengekommen und "darüber gesprochen" wird, ist bestimmt schnell
eine Lösung gefunden.

-nh

46.)
++++++++++++++ Mon Nov 15 16:30:00 2004 ++++++++++++++
Hallo,

noch kurz eine Frage...
wie sieht das bei den Aufgaben aus, bei der die Dateien/Verzeichnisse
aufgelistet werden sollen. Darf da der Pfad mit dabeistehen, oder muss man den
auch loswerden?

Dazu ist ja nichts explizit gesagt worden...bzw. das ist nicht ganz klar
formuliert.
Gruß

Letztlich ist das egal, aber wenn Sie das "du"-Kommando mit der Option
"-s" aufrufen (und dabei in Ihrem Heimatverzeichnis sind), dann
können Sie die Nennung der Pfade gleich von vornherein vermeiden.

-nh

45.)
++++++++++++++ Mon Nov 15 15:50:39 2004 ++++++++++++++
Hallo,

Ich wollte nur mal darauf verweisen, dass man die Aufgaben auch mit dem VI
lösen kann; auch mit regulären Ausdrücken, nur funktioniert da die Optionen \d
für Digits und \s für Whitespaces nicht.
Diese Form der regulären Ausdrücke sind soweit ich weiß eine Erfindung des
VI's, da es für Whitespaces und Digits bei "normalen" Regulären Ausdrücken auch
Ersetzungsmöglichkeiten gibt :-)
Also man muss sich nicht unbedingt in Abhängigkeit des VIM's geben.

Herzliche Grüße :-)

Absolut richtig: Auch der "einfache" VI kann reguläre Ausdrücke,
bis eben auf solche Geschichten wie "\d" und "\s". Wenn Sie später
aber mal z.B. mit Perl programmieren oder das Unix-Tools "sed" verwenden,
dann können Sie diese auch benutzen. Und deshalb wollte ich es
einfach mal vorstellen.

Aber Sie haben recht: Man kann die Aufgabe auch ohne "\d"
lösen. Wenn es die Zeit zulässt, werde ich es in den
Übungen zeigen!

-nh

44.)
++++++++++++++ Sun Nov 14 15:56:19 2004 ++++++++++++++
Hm, es müssen mich zwar jetzt recht viele für recht blöd halten, aber ich weiß
trotzdem noch nicht, wie ich dann den Text einfügen soll! Wie bekomme ich das
hin, dass der mir "Ich darf keine nnn ..." ausgibt? Ich mein, ich schreib immer
mit in ihrer Vorlesung und ich weiß auch, dass Sie das irgendwie hinbekommen
haben, aber WIE?
Übringens, ich hab das hinbekommen, dass der mir das in den vim ausgibt; danke

Wenn ich Sie richtig verstehe, dann haben Sie jetzt eine Datei, die
sie mit dem VIM öffnen können, und in der in jeder Zeile
zunächst eine Zahl (die Anzahl der Kilobytes) und dann ein Text
(der Name des Verzeichnisses / der Datei) steht. Ein "nnn" werden Sie
natürlich nirgends finden, das sollte auf dem Übungsblatt nur
ein Platzhalter für die Anzahl der Kilobytes sein.

Und von nun an helfen Ihnen die regulären Ausdrücke
weiter. Schauen Sie sich nochmal die Beispiele aus den Übungen
an. Insbesondere wie man mit Hilfe von regulären Ausdrücken
Zahlen "erwischt" und mit Klammern Ersetzungsbefehle ausführen kann,
sollten Sie sich nochmals scharf ansehen. Denn das ist Ihr Schlüssel
zum Glück... ;-)

-nh

43.)
++++++++++++++ Sun Nov 14 15:32:11 2004 ++++++++++++++
Hiiiiiilfe
Versuche gerade das 4. Aufgabenblatt zu lösen, doch ich krieg das einfach nicht
hin! Wie bekomme ich meine Größen und Namen in den vim, damit ich den Text
schreiben kann? Und wie soll ich das überhaupt ersetzen? Sitze gerade in der
Uni und komme einfach nicht weiter!
Wäre echt nett, wenn man mir wenigstens nen kleinen Tipp geben könnte!
Danke im Vorraus!

Okay, der kleine Tip ist der Begriff Ausgabeumlenkung. Es sagt
ja keiner, daß Sie sich die Ausgabe von "du" sofort in den VIM
schreiben lassen sollen. Das geht zwar auch, ist aber nicht unbedingt
nötig. Lassen Sie doch einfach die Ausgabe von "du" in eine Datei
schreiben und öffnen Sie anschließend diese mit dem VIM.

-nh

42.)
++++++++++++++ Sun Nov 14 15:16:37 2004 ++++++++++++++
Hallo!
Kann es sein, dass die links zu den "Beispielen aus den
Übungen" und den "Lösungsvorschlägen" fehlerhaft sind?

Nö! Ich hab's gerade nochmal kontrolliert, aber die sind alle
korrekt! Und die Server sind auch alle brav "up".

-nh

41.)
++++++++++++++ Sun Nov 14 12:59:57 2004 ++++++++++++++
Hallo zusammen.

Ich hab via Putty meine Oberon-Übungen angefangen und dort gab es ein kleines
Problem.
Nach erstellen des Codes und Makefiles, führte ich das Makefile aus. Allerdings
kam eine Fehlermeldung zurück, dass das symbol-file fehlt. Liegt das an Putty
oder habe ich beim erstellen des makefiles mist gebaut ?

Mit Putty hat das nix zu tun, denn Putty bringt Sie nur auf unsere
Rechner. Alle Fehlermeldungen, die Sie dann innerhalb von Putty
bekommen, sind Fehlermeldungen von dem Rechner, auf dem Sie bei uns
arbeiten. Daher dürften Sie mit Sicherheit bei der Übersetzung
des Oberonprogramms etwas falsch gemacht haben.

Nochmal zur Erinnerung: So übersetzt man ein Oberonprogramm:

   mmo -c makefile
   make

Dabei unterstellen wir aber, daß im aktuellen Verzeichnis genau
eine Oberonquelle (also eine *.om-Datei nebst der entsprechenden
*.od-Datei) vorhanden ist.

-nh

40.)
++++++++++++++ Fri Nov 12 19:23:24 2004 ++++++++++++++
Ich glaube ich habe ein Laienproblem, aber ich hoffe ich bekomme trotzdem eine
hilfreiche Antwort darauf:
Wenn ich von zuhause den vim aufrufen möchte, muss ich ja cygwin benutzen (mit
einem Windows PC).
Leider schaffe ich es nicht mich mit Cygwin auf dem Uni-rechner einzuloggen.
Was muss ich denn da nochmal genau tun????
Nebenbei noch ein Riesenlob dafür, dass die Übungen nun auch im Internet
stehen. Das erleichtert wirklich vieles.

Um sich unter Cygwin grafisch auf unseren Rechnern einzuloggen,
benötigen Sie zunächst einen laufenden X-Server. Diesen starten
Sie mit dem Befehl startx aus Cygwin heraus. Dann sollte sich
ein neues Fenster öffnen, das ein wenig anders ("grafischer")
aussieht. In dieses geben Sie dann 
   ssh -X theseus.mathematik.uni-ulm.de -l IhrLoginAnDieserStelle
ein.

Wenn Sie nun irgendwelche Fehlermeldungen erhalten, dann wird das
eventuell daran liegen, daß Sie nicht alle Pakete installiert
haben. Für das, was ich gerade erkläre, benötigen Sie auf jeden
Fall die Pakete 
  -  openssh
  -  X11
  -  die Startskripte für X
Diese Pakete können Sie bequem nachinstallieren, falls sie
fehlen sollten. Aber wichtig: Sie benötigen hier eine schnelle
Internet-Verbindung, weil das X-Protokoll ein Bandbreitenfresser ist. Mit
einem 56K-Modem werden Sie vermutlich nicht glücklich.

Sollte dies nicht weiterhelfen, so brauche ich noch etwas detaillierte
Angaben zu Ihrem Problem (und dann bitte per E-Mail!).

Viel Erfolg!


-nh

39.)
++++++++++++++ Fri Nov 12 15:09:12 2004 ++++++++++++++
Hallo, auch von mir ein großes Lob an N.H. und A.B.! Sie verstehn es, das
Interesse an Informatik zu wecken, sogar bei absoluten Laien wie mir. ;-)
Daher kommt jetzt auch eine vermutlich laienhafte, für Sie triviale Frage: Die
Postscript-Dateien kann ich ja von zuhause nicht ohne weiteres öffnen, deswegen
haben sie den Link zum Download auf diese Page gemacht. Nun sind da aber so
viele verschiedenen Dinge und da kenn ich mich nimmer aus. Was muss ich denn
nun genau runterladen, um ps zuhause lesen zu können? Danke!!!

Na, bei so viel Lob gibt es auch sofort eine Antwort :-)

Wenn Sie eine Postscript-Datei zu Hause (ich unterstelle jetzt mal ein
Windows-System) anschauen möchten, dann benötigen Sie dafür
zwei Programme: Ghostscript und Ghostview. Ersteres ist
nötig zum "Interpretieren" dieser Postscript-Datei (sonst weiss Ihr
PC gar nicht, was er damit soll), und mit Ghostview können Sie dann
die Bildschirmanzeige erzeugen (und natürlich auch drucken). Einen
Link zu beiden Programmen finden Sie auf unserer Vorlesungshomepage. Beim
Installieren bitte zuerst Ghostscript und dann Ghostview installieren,
denn Ghostview benötigt bereits ein installiertes Ghostscript.

Beachten Sie aber zu Ihrer Frage auch das Feedback Nummer 29 und meine
Antwort darauf!

-nh

38.)
++++++++++++++ Fri Nov 12 00:15:46 2004 ++++++++++++++
hallo!
ich bin sicher nicht der einzige, der mit dem vim folgendes problem hat:

wenn ich z.B.

vim datei.txt

im terminal eingebe, so erscheint nicht das programm, sondern eine leere zeile.
anschließend kann ich nicht mehr mit dem terminal weiterarbeiten. am linuxpool
passiert das nicht, allerdings daheim auf windows und linux.

wie kann ich das problem beheben?

Unter Linux müsste sich das Problem beheben lassen, indem Sie das
ssh-Kommando mit der Option "-X" aufrufen (wichtig: das X muss gross
geschrieben sein!), also so:

   ssh -X theseus.mathematik.uni-ulm.de -l HierIhrLogin
bzw.
   ssh -X HierIhrLogin@theseus.mathematik.uni-ulm.de

Falls Sie unter Windows Cygwin installiert und mit startx den
X-Server gestartet haben, sollte es so ebenfalls funktionieren.

-nh

37.)
++++++++++++++ Thu Nov 11 12:39:46 2004 ++++++++++++++
Ich finds super, dass die "Beispile aus den Übungen" jetzt nochmal mit
Erklährung im Net sind, So kann man sie nochmal in Ruhe am PC durchgehn. Ist
einiges effektiver, als sich alles aus seinen auch so sauberen Mitschrieben zu
saugen....

             Also, Dickes Lob an N.H.!!!

Vielen Dank für das Lob! Ich werde auch zuküftig die Beispiele,
die ich in den Übungen vorführe, auf's Netz stellen. Und diese
in aller Regel auch ausführlich kommentieren / erläutern. Zum
einen soll Ihnen das natürlich dazu dienen, alles nochmal selber
ausprobieren zu können. Andererseits brauchen Sie dann in den
Übungen auch nicht mehr alles mitzuschreiben und können sich
deshalb mehr auf die "Live-Vorführung" konzentrieren.

-nh

36.)
++++++++++++++ Tue Nov  9 20:14:53 2004 ++++++++++++++
Könnte man vielleicht eine Seite machen, auf denen sich die Studenten
gegenseitig Tipps geben können? Das wäre sicherlich auch recht hilfreich. Und
dann müssten sie nicht alle Fragen beantworten.

Zu einigen Vorlesungen, die ich selber als Student gehört habe,
gab es manchmal eigene Newsgroups. Vielleicht können wir soetwas
demnächst auch anbieten. Ich werde mich mal drum kümmern! Die
Idee gefällt mir!

-nh

35.)
++++++++++++++ Tue Nov  9 18:18:29 2004 ++++++++++++++
Hallo,

mal ganz kurz ne Frage. Ist bei der Aufgabe, bei der man von dem Wort
Katze zum nächsten vorkommenden Wort absichtlich der Kniff eingebaut,
dass man nicht auf das Wort "Katzenpfoten" springen soll?  Das würde
die Sache ein wenig komplizierter machen, meine Tutorin hat aber von
dem Kniff nichts gewusst...  Deshalb wollte ich nur darauf verweisen :-)

Eine andere Bitte war, ob Sie die neuen Übungen nicht schon ein paar
Stunden vor der eigentlichen Übung am Mittwoch auf die Seiten stellen
könnten. Dann könnten wir bei uns in der Schule bereits die neuen Aufgaben
im Informatik Unterricht behandeln...  Wäre echt super!

Vielen dank und weiter so :-)

Damit es für den Anfang nicht zu kompliziert wird, haben wir
auf diesen Kniff verzichtet. Aber die Idee ist klasse und weist in
die Richtung des Stoffes, den wir morgen in den Übungen behandeln
werden: Reguläre Ausdrücke. Damit können Sie dann
tatsächlich nach "echten Katzen" suchen und nicht nur nach Worten,
in denen "Katze" vorkommt, wie z.B. "Katzenpfoten"!

Was das neue Übungsblatt angeht, so habe ich es gerade online
verfügbar gemacht. Ich kann aber nicht versprechen, daß
ich es in Zukunft immer schon Dienstag abend fertig haben werde.

-nh

34.)
++++++++++++++ Tue Nov  9 14:45:07 2004 ++++++++++++++
Worin besteht der Sinn und Zweck den Umgang mit dem Editor VI zu
lernen. Kein Mensch verfasst heutzutage mehr Texte mit diesem aus meiner
Sicht benutzerunfreundlichem Programm. Die Schwierigkeit besteht doch
nur darin irgendwelche Tastaturbefehle auswändig zu lernen und nicht
alle Nerven bei der Bedienung zu verlieren. Ich hab fast schon den
Eindruck ,dass es hier verboten ist Programme mit Mausunterstützung und
graph.Interface zu benutzen.

Verboten ist es bei uns natürlich nicht, Programme mit Maus und
grafischem Interface zu verwenden, aber unter bestimmten Umständen geht
das einfach nicht, z.B. wenn Sie via Modem von daheim aus auf unseren
Rechnern arbeiten möchten. Bleiben wir hier doch einfach mal beim
Putty für Windows: Mit VI-Kenntnissen können Sie sich via Putty
bei uns einloggen und in Zukunft alle Ihre Programmieraufgaben bequem
von daheim aus bearbeiten. Dafür benötigen Sie keine schnelle
Internet-Verbindung, sondern ein 56K-Modem reicht. Wenn Sie hingegen
grafisch arbeiten würden, haben Sie zum einen das Problem, sich einen
X-Server unter Windows installieren zu müssen und vor allem wird Ihnen
das allenfalls noch mit einer schnellen DSL-Verbindung Spaß machen! 

Abgesehen davon hat der VI(M) eine Menge von Funktionen, die zwar nur
über Tastaturkommandos erreicht werden können, aber unter
den gängigsten grafischen Editoren schlicht überhaupt nicht
zur Verfügung stehen! Wenn Sie mir die erste Aufgabe des neuen
Übungsblattes (Blatt 4) mit dem Notepad vorführen, gebe ich
Ihnen darauf auch gerne die volle Punktzahl. Aber ich wette, das wird
Ihnen nicht gelingen.

Wenn wir ab jetzt ins Programmieren einsteigen, dann ist es Ihnen
selbstverständlich freigestellt, welchen Editor Sie verwenden
möchten. Der VI sollte Ihnen nur vorgestellt werden, um Sie
vielleicht ein wenig davon zu überzeugen.

Übrigens: Daß "kein Mensch" mit dem VI arbeitet, halte ich
für etwas voreilig behauptet. In der SAI werden Sie jedenfalls
niemanden finden, der nicht mit dem VI arbeitet. Ihr Skript
zur Vorlesung entsteht übrigens auch mit dem VI, ebenso alle
Übungsaufgaben, Beispiellösungen, und und und...

-nh

33.)
++++++++++++++ Mon Nov  8 22:22:04 2004 ++++++++++++++
Hallo Zusammen
Was mir so nach und nach auffällt ist, dass viele Leute die hier etwas posten
leicht abfällig beahandelt werden. Jedesmal wenn jemand ein Problem hat und es
vermutlich ein reiner Anfängerfehler ist, wird ihm keine richtige Lösung
angeboten, wei z.b. Server war down, sonder "Also bei mir hat´s funktioniert
:)"
Da mich das auch schon einmal betroffen hat und ich es hier schon mehrmals
gesehen habe, denke ich, es ist Zeit dies zur Sprache zu bringen.
Sicherlich sind fast alle der hier aufgefürhrten Probleme vor allem für Herr
Borchert ein Witz, aber jeder muss doch mal irgendwo anfangen und nicht gleich
mit myriaden von Sticheleien in der Antwort auf seinen Post auskommen.
Hoffe mit dieser Meinnung liege ich nicht ganz alleine.

Ansonsten viel Spaß noch allen mit der Vorlesung und gutes Gelingen.

Ich glaube nicht, daß hier jemand durch die Antwort auf ein
Feedback abfällig behandelt wird. Teilweise wird aber direkt nach
den Lösungen der Übungen gefragt, und die möchte ich
natürlich nicht gleich hier posten. Deshalb gibt es kleine Hinweise,
die vielleicht auch mal ein wenig ironisch klingen (sollen). In der
Regel sollte aber jeder soviel Humor besitzen, um dies zu verstehen.

Und wenn Aussagen in dem Stil von "Bei mir funktioniert das
nicht!" getroffen werden, ohne das Problem oder die erhaltenen
Fehlermeldungen näher zu spezifizieren, dann kann ich einfach
nicht helfen. Dann probier ich's halt, ob's bei mir funktioniert (oder
ob eben ein Server "down" ist, wie dies leider in den letzten Tagen mal
gewesen ist), schreibe die Uhrzeit dazu und wie ich's gemacht habe. Dann
kann jeder selber überprüfen, ob er nicht vielleicht doch
einen Tippfehler eingebaut hat.

Also, bitte keine meiner Antworten falsch verstehen - wir sind für alle
Fragen offen!

-nh

32.)
++++++++++++++ Mon Nov  8 20:11:07 2004 ++++++++++++++
Hallo.
Wäre es irgendwie möglich das Skript schon ein bis zwei Tage vor der Vorlesung
ins Netz zu stellen, damit man es vorher ausdrucken kann. Ich würde gerne
während der Vorlesung mitlesen und mir an geeigneter Stelle meine Notizen
machen, so dass ich hinterher einen einfachen Überblick über meine Notizen
habe, und nicht erst zwei Stunden suchen muss bis ich weiß was wozu gehört.

Ursprünglich war es angedacht, das Skript bereits am Montag
online zu stellen. Da es in den letzten Wochen aber zu verschiedenen Rechnerstörungen
gekommen ist, musste Herr Borchert viel Zeit investieren, um diese
Störungen zu beheben - und daher ist das Skript nicht rechtzeitig
(bzw. am Montag) fertiggestellt worden. Wir hoffen, daß wir in
Zukunft wieder ohne Störungen leben, und dann wird das Skript auch
schon vor der Vorlesung verfügbar sein.

-nh

31.)
++++++++++++++ Mon Nov  8 10:36:35 2004 ++++++++++++++
Hallo,

also das Übungsblatt ist ja nicht allzu schwer, sind schon nen paar Kniffs
dabei - aber dann machts ja auch Spass :-) 

Aber jetzt mal ehrlich, wenn ich am Ende das diff mache, dann könnt
ihr doch nicht erwarten, dass die unsrige Datei komplett gleich ist mit
der Musterlösung. Ich meine wenn man da bloß ein Leerzeichen zuwenig
oder zuviel hat, oder das Versmaß nicht so ganz übereinstimmt oder beim
Speichern der beiden Dateien eine Leerzeile zuviel reingerutscht ist,
zeigt das diff das ja auch an -- aber da muss ich mir doch nicht die
Mühe machen das auch zu korrigieren.  Ich mein der Sinn und Zweck ist
es doch mit dem Handwerkszeug zurechtzukommen und ich hoffe, dass man
nicht so pingelich wegen nem Leerzeichen sein wird...

Grüße und dank

Keine Sorge, der Aufruf von diff am Ende des Blattes soll nur
für Sie zur Kontrolle dienen, ob Sie - bis auf die von Ihnen
beschriebenen Kleinigkeiten - alles gut korrigiert haben. Und ich gebe
Ihnen 100% Recht: ein paar Leerzeichen mehr oder weniger wird Ihnen Ihr
Tutor nicht krumm nehmen. Genau wie Sie schreiben ist der Sinn dieser
(Teil-)aufgabe, die Verwendung des Handwerkszeugs zu zeigen (hier also
diff und VI). Und wenn das diff am Ende Unterschiede zeigt, so ist dieser
Zweck ja irgendwie auch erfüt - sofern jeder versteht, was das diff
da eigentlich ausgibt. Also: Keine Panik!

-nh

30.)
++++++++++++++ Sun Nov  7 19:42:28 2004 ++++++++++++++
also das in nr.25 zu der "}" . das kann SO nicht stimmen. immer wenn ich ":!}"
und zum beispiel ls schreibe, dann kommt eine fehlermeldung, ohne die klammer
":!" geht es aber.

Moment! Sie schreiben also ":!}ls" ? Dann bekommen Sie in der
Tat eine Fehlermeldung. Aber lassen Sie doch einfach mal den Doppelpunkt
weg...!

-nh

29.)
++++++++++++++ Sun Nov  7 18:29:12 2004 ++++++++++++++
Um die VIKompakt anzuzeigen habe ich das Ghostview heruntergeladen (für
windows). Allerdings benötigt das Programm Ghostscript aufgrund einiger dlls
usw. Von Ghostscript gibt es aber keine Windows kompatible Version. Was nun ?

Doch, eine Windows-Version von Ghostscript gibt es selbstverständlich
auch:

Wenn Sie dem Link auf unserer Homepage folgen, dann können Sie eine
GPL Version und eine GNU Version von Ghostscript finden. Für Windows
gibt es jedoch nur die GNU-Version. Vielleicht haben Sie versehentlich
GPL angklickt?

Folgen Sie einfach dem GNU-Link, wählen Sie den SourceForge-Mirror,
und dort finden Sie dann die entsprechende EXE-Datei für Windows.

-nh

28.)
++++++++++++++ Sun Nov  7 18:22:19 2004 ++++++++++++++
Das VI-Kompakt lässt sich mit wget nicht herunterladen. Wo liegt das Problem ? 
thx4help

p.s. Ich habe es ganz sicher richtig geschrieben :P

Keine Ahnung, wo Ihr Problem liegt, denn bei mir funktionierte es gerade
(18:45). Ich habe folgenden Befehl verwendet:

wget http://www.mathematik.uni-ulm.de/sai/ws04/prog/uebungen/blatt3/vikompakt.ps

Und Sie...?

-nh

27.)
++++++++++++++ Sun Nov  7 18:16:41 2004 ++++++++++++++
Hallo zusammen
Ich möchte nur Anmerken, dass die Übungen eine ware Tortur für die
Windows-User sind. Alleine das auftreiben eins Programmes zum anschauen
der so hilfreichen und gelobten VI-Kommandos schlug fehl.  Es kann
eben nicht jeder ein Linux System auf seinen Rechner installieren. Dazu
fehlt mir zum Beispiel, der speicher, der internet traffic und die Zeit.
Warum kann man nicht einfach gerade die Goodies als HTML uppen ? Wenn
man das alles anscheinden so einfach hin under her umwandeln kann,
warum machen sies dann nicht ?

Und ich glaube ich spreche für den großteil dieses Kurses wenn ich sage,
dass man die Aufgaben so stellen sollte, dass ein Windows User sie auch
bewerkstelligen kann ohne jedesmal in die Uni rennen zu müssen.

Ich fürchte, daß ich Ihnen da auch nicht helfen kann. Mehr
als in den Übungen immer wieder betonen, wie problemlos man mit
Putty und ähnlichen Programmen die Uni-Rechner von überall
her erreichen kann, vermag ich auch nicht zu tun. Für Putty
reicht Ihnen ganz sicher ein Uralt-Rechner mit wenig Speicher, und für
eine reine SSH-Verbindung (ohne X, also Grafik) tut's auch eine normale
56K-Modem-Verbindung. Wo also ist das Problem? Niemand verlangt, daß
Sie zu Hause Linux installieren (auch wenn's mit Sicherheit hilfreich
wäre). Und was das Fehlschlagen der Installation von Ghostscript
angeht: siehe Posting 29!

-nh

26.)
++++++++++++++ Sun Nov  7 16:13:09 2004 ++++++++++++++
Ich habe ein Problem mit Cygwin. Wie kann ich einen ssh verbindung zur uni
herstellen ? Ein Tool dafür gab es nicht in den auszuwählenden
install-files.

Doch doch, das SSH-Tool gibt es! Es befindet sich in dem Paket
openssh. Das müssen Sie installieren, und schon steht Ihnen
ein SSH-Zugriff im Cygwin zur Verfügung!

-nh

25.)
++++++++++++++ Sun Nov  7 15:45:41 2004 ++++++++++++++
so servus erstmal,
ich hab ein paar fragen zum 3. aufgabenblatt. ist es moeglich die aufgabe
mit dem sortieren der durcheinandergeratenen zeilen mit dem "sort"
befehl zu loesen? ich sitz naemlich schon ne weile dran und habs bisher
nicht geschafft.  maine zweite frage bezieht sch auf die aufgabe in der
man die zwei gedichte in verschiedene dateien trennt. ist es moeglich mit
dem "grep" befehl nur nach zeilen und nicht nach stichworten zu suchen.

ps: ich hab mir die "man" seiten anegeschaut habe aber keine  fuer
mich in frage kommende befehle gefunden oder vielleciht uebersehen?! -
vorlesung und uebung finde ich uebrigens klasse ^^

Ja, das Sortieren der Zeilen ist mit dem Shell-Kommando sort
möglich. Ich hatte dazu ein kleines Beispiel in den Übungen
vorgeführt (mit dem ls-Kommando). Da war irgendwas mit einem
Ausrufungszeichen und einer geschwungenen schliessenden Klammer ("}"). Na,
klingelt es???

Was die Frage zu grep betrifft, so ist mir nicht ganz klar, was genau
Sie meinen. Schreiben Sie mir doch einfach eine E-Mail oder kommen Sie
in den nächsten Übungen zu mir.

Und natürlich freut es uns, wenn Ihnen unsere Veranstaltungen gefallen!

-nh

24.)
++++++++++++++ Sun Nov  7 12:08:39 2004 ++++++++++++++
ich habe eine kleine frage zu der prüfung für allgemeine
informatik. wie läuft diese denn ab? und die zweite frage wäre
ob oder wie die tutorien in die prüfung miteingerechnet wird oder
ob das ein schein gibt.

hoffe die frage stellung ist soweit verständlich.

Den besten Eindruck davon, wie Prüfungen verlaufen, bekommen Sie,
wenn Sie sich in der Fachschaft (Fachschaft für Mathematik in
diesem Fall) die entsprechenden Prüfungsprotokolle ausleihen
und kopieren. Das kann man nicht so ohne weiteres in einem Satz
beschreiben. Die Tutorien gehen jedenfalls indirekt mit ein, denn
dort wird ja der Stoff der Übungen vertieft, und Übungen
sind grundsätzlich prüfungsrelevant (auch in anderen
Fächern). Einen Schein gibt es übrigens in der Regel für
das Bestehen einer Klausur und der Übungen. Eine Prüfung
hingegen resultiert in einer Note, die nachher in Ihrem Zeugnis (Vordiplom
/ Diplom) steht.

-nh

23.)
++++++++++++++ Sat Nov  6 20:37:58 2004 ++++++++++++++
Einen schönen guten Abend wünsche ich erst einmal!
Die Vorlesungen sind ja meist interessant, doch habe ich am Mittwoch bei
"heidi" meist Probleme die Kommandos mitzuschreiben! Denn ich habe keine
"Tab-Taste", bei der dann der restliche Text dasteht ;)  Wäre nett, wenn das
manchmal ein bisschen langsamer ginge, damit ich dann auch meine Aufgaben ohne
größere Zwischenfälle erledigen kann. 

Vielen Dank im Vorraus und keep :)

Ich glaube, ich habe zu Hause noch eine alte Tastatur, die ich nicht mehr
brauche. Wenn Sie wollen, kann ich da die Tab-Taste herausnehmen und
Ihnen für die Übungen zur Verfügung stellen. Dann hätten
Sie auch eine Tab-Taste. Ist das ein Deal?

Aber abgesehen davon ist Ihre Botschaft angekommen ;-) Ich werde
versuchen, mehr Zeit zum Mitschreiben zu lassen!

-nh (a.k.a. "heidi")

22.)
++++++++++++++ Sat Nov  6 17:08:52 2004 ++++++++++++++
Hallo,

erstmal danke für die interessante Vorlesung. Ich hatte eine Frage
zu den Aufgaben. Dort heißt es:

"Der dritte Absatz dieses Gedichts ist doppelt. Bitte entfernen Sie das
Duplikat mit einem einzigen VI-Kommando."

Was heißt in dem Fall "einem einzigen Kommando"? Kann ich mit dem
Cursor schon an die Stelle "heranfahren" und dann das einzige Kommando
ausführen, oder darf ich Marken setzen?  Oder gibt es da ein
mir noch unbekanntes Kommando auf das man eine Datei nach gleichen
Absätzen untersuchen kann, ähnlich dem "cmp" oder "diff"
Kommando in der Shell?

Viele Grüße und danke schon vorweg

Das "einzige Kommando" soll bedeuten, daß Sie das eigentliche
Löschen der vier Zeilen in einem einzigen Kommando erledigen
(und nicht jede Zeile einzeln). Die "Vorbereitungen" dazu, also
z.B. das Heranfahren mit dem Cursor zählen nicht zu diesem Kommando
dazu. Sie können aber gerne auch Marken zu setzen.

Ein Pendant zum diff ist mir innerhalb des VI nicht bekannt
(was aber nicht ausschließt, daß es so etwas gibt...). Aber
verlangt ist das für diese Aufgabe nicht!

-nh

21.)
++++++++++++++ Sat Nov  6 13:13:41 2004 ++++++++++++++
Apropos Tafelanschrieb. 
Es wäre vielleicht ganz hilfreich nicht nur auf die rechte Tafelseite
zu schreiben, sondern auch auf die linke.  Wenn nämlich auf der
Tafel ganz rechts etwas steht, ist es für die Studenten auf der
linken Seite sehr schwer zu erkennnen.

Ansonsten: Großes Lob - sehr interessante Übung.

Das liegt daran, daß mir mein Arzt mehr Bewegung verordnet hat, und
die habe ich, wenn ich ständig vom Laptop zur rechten Tafel und
zurück laufe, denn das ist schließlich der weiteste Weg... ;-)))

Aber im Ernst: Ich versuche, demnächst daran zu denken. Und vielen
Dank für's Lob!

-nh

20.)
++++++++++++++ Sat Nov  6 10:12:52 2004 ++++++++++++++
Ich glaube in der Lösung des zweiten Blattes hat sich ein kleiner Fehler
eingeschlichen: Bei dem Kommando
grep -v ['+-',':'] california.txt >> myEstates.txt
wird eine Zeile nicht herausgefiltert, da einmal '|' und das andere Mal ':' zur
Trennung der Worte verwendet wird. Vollständig müsste es
grep -v ['+-','|:'] california.txt >> myEstates.txt 
heißen =>
cat texas/texas.txt > myEstates.txt | grep -v ['+-','|:'] >> myEstates.txt

Ja, da haben Sie vollkommen recht! Vielen Dank für den Hinweis!
Es reicht sogar schon aus, den Doppelpunkt durch das Pipeline-Symbol "|"
zu ersetzen. Also so:

   cat texas/texas.txt > myEstates.txt | grep -v ['+-','|'] >> myEstates.txt 

Ich habe die Lösung entsprechend geändert. 

-nh

19.)
++++++++++++++ Fri Nov  5 11:25:49 2004 ++++++++++++++
Jetzt gibt es gleich noch ein Frage zu VIkompakt:
Ich habe ja geschafft die Datei zu öffnen, aber beim Drucken
läuft bei mir so einiges schief: was kann ich denn tun, damit mein
Drucker nicht alle Zeichen durcheinanderschmeißt??

Das ist aus der Ferne leider etwas schwer zu sagen. Als ersten
Versuch würde ich mal die Postscript-Datei in eine PDF-Datei
konvertieren (mit dem Befehl ps2pdf). Schauen Sie sich dann mal die
PDF-Datei an bzw. drucken diese aus - vielleicht läuft so dann alles
glatt. Ansonsten können Sie mir Ihre Probleme gerne etwas genauer
schildern, dann aber bitte per E-Mail und nicht via Feedback!

-nh

18.)
++++++++++++++ Thu Nov  4 13:57:05 2004 ++++++++++++++
Ich hab da mal 'ne Frage: mit welchem Programm soll man den VI-Kompakt denn
öffnen?

Oh, da hat wohl gestern in den Übungen jemand nicht aufgepasst ;-)

Postscript-Dateien (und eine solche ist die Datei VI-Kompakt) werden
unter UNIX / Linux mit dem Programm ghostview geöffnet,
das mit dem Kommando gv gestartet wird. Also öffnet man die
Datei wie folgt:

gv dateiname &

wobei dateiname durch den Namen der Postscriptdatei ersetzt werden muß.

Für Windows gibt es einen Link zum Download der entsprechenden
Programme auf unserer Vorlesungshomepage.

-nh

17.)
++++++++++++++ Wed Nov  3 20:18:49 2004 ++++++++++++++
Heut fand ich die Info-Übung zum ersten mal einwenig lehrreich, da
die Befehle an die Tafel geschrieben wurden!  Sonst hatte man nie eine
Chance alle Befehle und ihre Funktion mit zu schreiben!!;-) weiter so!

Ich sag's ja immer wieder: alles wird gut! Und der VI ist auch gar nicht
so schlecht wie sein Ruf ;-) !
Jedenfalls kann ich gerne mehr an die Tafel schreiben, wenn's
gewünscht wird. Kein Problem!

-nh

16.)
++++++++++++++ Mon Nov  1 21:26:17 2004 ++++++++++++++
Was muss ich bei Putty unter Host Name eingeben, wenn ich von zu Hause aus
meine Aufgabe erledigen will? Habs leider vergessen.

Wie der Name schon sagt: den Hostname, also den eindeutigen
Namen des Rechners, auf dem Sie arbeiten möchten. Angenommen,
Sie möchten auf der theseus arbeiten, dann lautete der
vollständige Hostname:

   >>>>   theseus.mathematik.uni-ulm.de    <<<<

Alternativ könnten Sie hier auch die IP-Adresse des entferntern
Rechners eingeben, aber in der Regel dürfte es einfacher sein,
mit den Rechnernamen zu operieren.

-nh

15.)
++++++++++++++ Mon Nov  1 19:55:37 2004 ++++++++++++++
guten abend,
ich habe grade das 2. übungsblatt bearbeitet und bei dem versuch
die *.txt dateien von dem ftp zu kopieren bin ich gleich gescheitert. im
manual steht cp [source] [target]..
ok also gebe ich als source die ftp addresse(auf der übungsseite
unten angegeben) an und target dort wo ichs in meinem verzeichnis
hinhaben will.  jedoch kommt dann immer die fehlermeldung cannot access.
hab ich dazu keine rechte irgendwas auf dem ftp zu kopieren oder liegt das
daran dass ich an der addresse was falsch geschrieben habe? wobei ich ja
die addresse nur vom übungsblatt kopiert habe.  dankeschön fürs
beantworten schon mal ;)

Ne ne, mit dem cp-Befehl kommen Sie hier in der Tat nicht weiter. Damit
können Sie nämlich nur innerhalb des lokalen Dateisystems
kopieren. Wenn es ein entfernter Rechner sein soll, hilft der scp-Befehl,
den ich in den Übungen erklärt habe, aber ein Zugriff auf
einen FTP-Server funktionert damit auch nicht.

Aber nicht verzagen, es gibt da schon eine Lösung! Eine ganz
ähnliche Frage hatte nämlich schonmal einer Ihrer Vorposter,
weshalb Sie mal meinen Kommentar zu Feedback Nummer 8 ganz scharf
anschauen sollten...

-nh

14.)
++++++++++++++ Mon Nov  1 14:29:20 2004 ++++++++++++++
Hi!
Ich finde die Vorlesung kewl! Man lernt wenigstens mal was nützliches.
Wollte ich nur mal anmerken! Ach und die ftp Seite ist offensichtlich down.

Also macht weiter so
Keep on moving

Na, das hören bzw. lesen wir doch mal gerne! Vielen Dank! In
der Tat werden Sie die UNIX-Kommandos, die wir in der ersten Zeit
präsentieren, in der Regel immer wieder brauchen können.

Was den FTP-Server betrifft, so müsste der
mittlerweile wieder zu erreichen sein (bei mir ging
es gerade (16:10 Uhr)). Aber es stimmt: Durch den Ausfall
der Turing waren die Webseiten (und FTP-Dienste) der mathematischen
Fakultät eine Zeit lang nicht erreichbar :-(

-nh

13.)
++++++++++++++ Mon Nov  1 12:36:40 2004 ++++++++++++++
Ich hab ein kleines Problem mit dem Sortieren in der 2. Übung.
Die Sortierreihenfolge konnte ich zwar mittlerweile umkehren, aber die
Reihenfolge stimmt immer noch nicht weil vor den einstelligen Zahlen keine 0
steht...
Ich habe mich mehrmals durch die manual seite von sort gekwählt und nichts
gefunden.
Wie geht denn das bitteschön ?

Das herauszufinden ist ja gerade der Witz dieser Teilaufgabe! Wie kann
ich da jetzt helfen, ohne gleich die Lösung zu verraten? Hmm,
mal überlegen...

Schauen Sie auf jeden Fall nochmal die Manual-Seite kritisch
durch. Vielleicht (nein, besser: ganz sicher) finden Sie da eine Option,
die es Ihnen ermöglicht, numerisch zu sortieren (Dann
brauchen wir auch keine führende Null oder soetwas!). Vielleicht
taucht in diesem Zusammenhang auch etwas von einem arithmetic
value in der Manual-Seite auf...

So, jetzt müssten Sie die Option aber finden...!

-nh

12.)
++++++++++++++ Fri Oct 29 16:12:30 2004 ++++++++++++++
Hallo.
Insgesamt finde ich die Vorlesung wirklich gut, und sie gefällt
mir. Doch ich muss auch sagen: die Unix-Shell Kommandos und allem voran
Vi sind mir ein echter Graus!! Ich hab mich etliche Jahre mit Ms-Dos
6.22 rumgeschlagen und das ist im Vergleich zu Unix/Vi was Shell und
Editor angeht echt weit benutzerfreundlicher.Tastaturkommandos der Art:
"drücke 3 Tasten um einen Buchstaben zu löschen" und die pure
Ignoranz zu Backspace oder Entf kosteten mich beim 2. Übungsblatt
viele viele Jahre meines Lebens.Das hätte man auch um Längen
einfacher lösen können. Dazu hab ich auch noch eine Frage: Gibt
es eine Möglichekeit, diese Tasten zu aktivieren oder einzubinden,
so dass sie funktionieren wie bei Dos (wenn man unbedingt mit der Shell
arbeiten muss)? Das wird vielleicht auch noch viele andere Studenten, die
sich mit Unix/Linux und deren Shell nicht so gut auskennen interessieren.

Es ist vielleicht nur ein kleiner Trost, aber wenn Sie daheim mit
Linux arbeiten funktionieren diese Tasten!

Aber aus eigener Erfahrung kann ich sagen, daß man sich schnell
an den VI und die Shell gewöhnen kann. Wenn man bereit ist,
sich mal auf diese neue Erfahrung einzulassen, merkt man schnell, wie
überaus effizient man damit arbeiten kann. Und das möchten wir
Ihnen in den ersten Wochen des Semesters vorführen. Welchen Editor
Sie in Zukunft dann verwenden, ist Ihnen überlassen. Niemand wird
Sie zwingen, zum Programmieren den VI zu verwenden. Aber jetzt am Anfang
möchten wir Ihnen den VI vorstellen und Sie davon überzeugen,
daß man mit diesem besser arbeiten kann als mit irgendwelchen
grafischen Tools. Lassen Sie sich überraschen...

-nh

11.)
++++++++++++++ Fri Oct 29 16:08:35 2004 ++++++++++++++
kann mir mal einer erklären, wie das system bei dem head | tail
befehl is, um den kopf wegzulassen? also nach welchem system geht
das? muss ich head und dann ab welcher zeile es dann losgehn soll,
sprich 4 und tail 7 oder muss ich 3 zeilen abziehn, sprich head -3 oder
wie is das?

Na klar kann Ihnen das einer erklären: die Manualseite von tail
bzw. head! Aber weil ja bald Weihnachten ist, gibt es noch einen
kleinen Tip von mir oben drauf: Sie können sich ja zum Beispiel
mal anschauen, wieviele Zeilen die Datei so hat und wieviele davon Sie
nicht brauchen (also den Tabellenkopf). Jetzt schnell noch eine kleine
Subtraktion vorgenommen und eine zündende Idee mit der Verwendung
von tail gehabt, und schon ist Ihr Problem gelöst. Wetten dass...?

P.S.: Eine Pipe 'head | tail' wie in Ihrem Posting erwähnt ist
übrigens keine gute Idee!

-nh

10.)
++++++++++++++ Fri Oct 29 15:54:55 2004 ++++++++++++++
so ne Liste mit den 100 wichtigsten Befehlen jetz am Anfang wär
irgendwie kewl...

Keine Bange, die wichtigsten Befehle führen wir in den nächsten
Vorlesungs- und Übungsstunden nach und nach ein / vor. Wenn Sie die alle
brav mitschreiben, haben Sie bis Weihnachten die gewünschte Liste
zusammen. Und wir verlangen natürlich nicht, daß Sie Befehle
(also Tools) verwenden, die wir Ihnen noch nicht vorgestellt haben.
Also: keine Panik! Kommt alles!

-nh

9.)
++++++++++++++ Thu Oct 28 16:03:11 2004 ++++++++++++++
Kurze Frage zum Zusammenfügen der texas.txt und california.txt, ist es so
gemeint den doppelten Tabellenkopf mittels vi auszuschalten oder lohnt
es sich nach einem geeigneten Parameter zu suchen?

Eigentlich sollte diese Aufgabe ohne den VI gelöst werden, aber da es
hier zu Schwierigkeiten kommen kann, die in Vorlesung und Übung noch
nicht besprochen worden sind, ist es Ihnen nun freigestellt, wie Sie den
Tabellenkopf entfernen. Daher ist auch die Verwendung des VI in Ordnung.

-nh

8.)
++++++++++++++ Thu Oct 28 12:16:44 2004 ++++++++++++++
Ich habe eine frage zum scp-Befehl, wie bekomme ich damit die .txt Dateien
vom Übungsblatt in mein homeverzeichnis? Die ftp-verbindung in der
secure shell funktioniert wunderbar, aber kopiert bekomme ich die Dateien
nicht, es wird immer nur eine fehlermeldung ausgeworfen.  den einzigen weg
über den ich die dateien kopieren konnte war ein scp-client für
windows, aber damit dürfte ich im tutorium probleme bekommen...

Und noch ein kleiner hinweis für leute die auch probleme mit putty oder
terraterm haben, das programm SSHSecureShellClient-3.2.9 bietet sowohl eine
secure shell unter windows wie auch einen scp-client in einem und ist gut zu
handhaben...

Abgesehen von der trivialen Methode (einloggen in einem unserer
Mathe-Pools und das Herunterladen der Dateien via Browser) gibt es noch
eine Variante, die auch unter putty oder aehnlichen SSH-Clients von
außerhalb funktioniert:

Sie loggen sich auf einem unserer Matherechner ein und wechseln in das
Verzeichnis, in das Sie die Datei kopieren moechten. Dann verwenden Sie
den Befehl 'wget'. Er ist ganz einfach zu verwenden:

   wget ftp://ftp.mathematik.uni-ulm.de/pub/vorlesungen/ws04/prog/uebungen/blatt2/bsp/dateiname

wobei Sie dateiname durch den Namen der Datei ersetzen muessen, die
Sie herunterladen möchten.

Ansonsten vielen Dank für den Tip mit dem SSHSecureShellClient. Wer
Interesse an diesem Programm hat, findet unter Google mehrere Möglichkeiten zum
Download. Einen exakten Link für den Download möchte ich an
dieser Stelle aber eher nicht angeben.

-nh

7.)
++++++++++++++ Thu Oct 28 11:49:30 2004 ++++++++++++++
Eigentlich alles bestens, doch bei der aktuellen Aufgabe, hat sich
wohl ein Schreibfehler eingeschlichen? Auf dem FTP Server liegt eine
Datei namens "califorina.txt". Damit könnte jeder auf ein Problem
stoßen, der California intuitiv richtig schreibt?

Da haben Sie vollkommen recht! Vielen Dank für den Hinweis! Ich
habe den Tippfehler soeben korrigiert. Sorry!

-nh

6.)
++++++++++++++ Wed Oct 27 21:05:01 2004 ++++++++++++++
Was ist eigentlich der Unterschied zwischen Linux und Unix?
Ich hoffe das ich nicht die einzige bin die auf diese Frage keine Antwort
weiß!:-(
Hat das in der Vorlesung schon mal jemand erklärt?

Nun, vereinfacht kann man sagen, daß Linux ein
"nachprogrammiertes" Unix ist, das man überall im Internet
kostenlos herunterladen oder für wenig Geld kaufen
und dann beliebig oft kopieren und weitergeben kann.

Unix ist ein kommerzielles Produkt und wird mitunter auch eher als ein Sammelbegriff für mittlerweile eine Familie von abgeleiteten Betriebssystemen (sog. Unix-Derivate), zu denen unter anderem auch Solaris gehört, mit dem die Workstations in O27 laufen, verstanden.

-nh

5.)
++++++++++++++ Wed Oct 27 19:32:43 2004 ++++++++++++++
Hallo!
Könnten sie bitte die Übungszettel auch in einem Format
speichern, dass man leicht auf dem PC öffnen kann wie .pdf oder
.doc? Wäre sehr nett.

Wer sagt denn, daß sich HTML-Dateien und Postscript-Dateien
nicht leicht öffnen lassen? Erstere dürften selbst auf Windows
überhaupt kein Problem darstellen, und letztere kann man mittels der
Programme Ghostview / Ghostscript ebenfalls bequem unter Windows
betrachten und drucken. Einen Link zum Download der Programme stelle
ich auch auf die Vorlesungshomepage! Und wer mit Linux arbeitet, braucht
diese Frage erst gar nicht zu stellen... ;-)

-nh

4.)
++++++++++++++ Wed Oct 27 19:16:13 2004 ++++++++++++++
hi
ich bin sehr negativ überrascht wie abgrundtief langsam  linux ist
und wie abrundtief instabil das läuft. da verwöhnt mich mein
winxp ja geradezu.  jedenfalls haben Sie meine ganze betriebsystemwelt
über den haufen geworfen..  ich als windowskind träumte bei
so manchem windowsabsturz von linux. aber das läuft offensichtlich
auch oft "hässlich" (wie prof. borchert zu sagen pflegen würde).
die vorlesung zur übung informatik ist meineserachtens für studenten
die nicht mit dem laptop gerade dasitzen(und alles direkt nachverfolgen
können) und auch keine linuxwizards sind eher verwirrend -
wenn nicht gar unverständlich. ich hätte etwas mehr struktur
erwartet. aber vielleicht kommt das ja noch beim programmieren.  lob gibts
natürlich auch für prof. borchert der bei jedem linux absturz den
perfekten lacher auf lager hat - und für seinen enthusiasmus mit dem er
(hoffentlich erfolgreich) versucht uns der materie näher zu bringen.

Wenn Ihr Linux instabil und langsam läft, so kann das auch an
der Hardware-Ausstattung Ihres Rechners liegen (Zu wenig RAM, nicht
unterstütze Hardware, etc.), oder Sie haben sich eine Linux-Version
besorgt, die noch im Teststadium ist? Jedenfalls ist Linux in der Regel
alles andere als instabil.

Und was das Verständnis des Stoffes der Vorlesung angeht, so sollten
Sie gerade deswegen aktiv die Übungen selber machen, denn hier wird
der Stoff an konkreten Beispielen nocheinmal vorgeführt und sollte
danach dann verständlich(er) sein. Und wenn nicht, so können
Sie jederzeit gerne Fragen stellen.

-nh

3.)
++++++++++++++ Mon Oct 25 18:43:48 2004 ++++++++++++++
wo finde ich das erste Übungsblatt nochmal? Bin ich blind oder hab
ich nur vergessen mir in der vorlesung den link aufzuschreiben?  danke!

Ihr exaktes Sehvermögen kann ich natürlich nicht beurteilen,
aber wenn Sie trotz intensiven Betrachtens der Vorlesungshomepage immer
noch keinen Link auf das Übungsblatt sehen, dann empfehle ich
zumindest mal eine augenärztliche Untersuchung ;-))

Kleiner Tip: Versuchen Sie es mal unter der Rubrik Übungen.
Dort finden Sie ganz bestimmt eine Tabelle mit den Links zu den
Übungsblättern im HTML- und PS-Format sowie zu den
Musterlösungen!

-nh

2.)
++++++++++++++ Thu Oct 21 17:29:52 2004 ++++++++++++++
Hallo, könntet ihr bitte die tutoriumszeiten der tutoren hinter
die logins der tutoren schreiben, damit ich es leichter habe meinen
tutor wieder zu finden. danke

Ich habe auf die Seite mit den Namen der Tutoren einen Link gesetzt
auf eine PDF-Datei. Dieser können Sie entnehmen, welcher Tutor zu
welchen Zeiten Tutorien anbietet.

-nh

1.)
++++++++++++++ Thu Oct 21 16:36:38 2004 ++++++++++++++
Ich kann des Übungsblatt net lösen, da ich nicht weiss wie
meine Tutorin (Simone) ausssieht und ich sie deshlab noch nicht nach
ihrer Email-Addi fragen konnte. Kann man die mal online stellen, von
vielleicht allen Tutoren !? Oder finde ich dir nur nicht.

Mittlerweile sind die E-Mail-Adressen (Logins) unserer Tutor(inn)en
online. Man kann sie entweder über die Vorlesungshomepage erreichen
oder über diese Abkürzung hier! 

-nh

1.) Zur Problematik vim / ssh / X --------------------------------- vim moechte gerne, falls DISPLAY gesetzt ist, zum X-Server Kontakt aufnehmen. Das klappt problemlos lokal auf unseren Suns und auch wenn das X-Protokoll getunnelt wird. Wenn X nicht getunnelt wird und DISPLAY beim Anmeldevorgang deswegen zunaechst nicht gesetzt ist, wird es durch /etc/profile auf den Rechner gesetzt, von dem man kommt. Das ist hauptsaechlich aus historischen Gruenden der Fall. vim probiert dann ebenfalls den in DISPLAY genannten Rechner zu kontaktieren. Wenn dieser Rechner ausserhalb des universitaeren Netzwerkes liegt, scheitert dieser Versuch an der Firewall der Universitaet. Leider gibt es dabei kein ACK-RST-Paket, so dass es zu einem sehr ungluecklichen Haenger kommt. Erst nach einem laengeren Timeout geht es dann weiter. Als Workaround empfehle ich ein ``unset DISPLAY'', bevor vim aufgerufen wird. 2.) Zur "Cursor-Tasten-Problematik" ----------------------------------- Viele Linux-Distributionen uebertreffen sich gegenseitig dabei, zahllose von ihnen als sinnvoll erachtete Zusatzkonfigurationen vorzunehmen. Das mag dann zu Beginn bequemer erscheinen, wirft aber spaetestens dann Raetselspiele auf, wenn festgestellt wird, dass die Voreinstellungen aus der Doku nicht mit denen in der Realitaet uebereinstimmen und der Benutzer raetselt, wie einige dieser Zusatzkonfigurationen wieder abgeschaltet werden koennen. Wir sind sehr konservativ mit solchen Zusatzkonfigurationen. Die angefuehrte Unterstuetzung der Cursortasten ist trivial in vim zu konfigurieren mit Hilfe des ``map!''-Kommandos. Entsprechende Kommandos koennen in ~/.vimrc aufgenommen werden 3.) Zum Standardprompt ---------------------- Auch das ist bequem selbst zu konfigurieren. Es gibt keine Standardeinstellung, die alle gleichzeitig zufrieden stellt. Gluecklicherweise hat bei uns jeder die Freiheit, diese Dinge umzukonfigurieren. Ansonsten gilt auch hier der konservative Ansatz: Wir sind sehr sehr zurueckhaltend mit der Zahl der Aenderungen.
-afb

47.)
++++++++++++++ Mon Nov 15 22:27:46 2004 ++++++++++++++
Möchte an dieser Stelle kurz mein Lob aussprechen für Dr. Borchert,
der eine abwechslungsreiche und vor allem nicht langweilige Vorlesung
macht, und natürlich für unseren Üb-Leiter Norbert "Heidi", der die
Übungen interessant und locker-witzig durchführt. Deswegen kann ich
auch Kommentar 33 nicht verstehen. Dass diese Person die einzige ist,
die sich so negativ äußert, spricht für sich und zeigt, dass Übung und
Vorlesung bei (fast) allen Studenten gut ankommen!

Zu Kommentar 36:
Die Seite, auf der sich Studenten austauschen können, existiert bereits! Das 3.
Semester WiMa hat ein Forum eröffnet und freundlicherweise dem 2. Semester auch
einen Bereich eingerichtet. Da viele aus dem 2.Semester Informatik I hören (im
Sommersemester gibt es kein Informatik I), haben die Erstsemestler das Glück,
diese Seite auch nutzen zu können.
Die Adresse ist:

http://www.foren.de/system/?id=wima

Vielleicht könnte man in der nächsten Übung kurz darauf hinweisen, natürlich
nur unter der Voraussetzung, dass die Seite nicht zum Lösung abschreiben
gedacht ist :-)

Ja, vielen Dank für dieses Feedback. Es würde uns natürlich
freuen, wenn Sie die Mehrheitsmeinung vertreten und nicht
der-/diejenige aus Feedback 33 :-)

Was das Forum angeht, so kann ich gerne am Mittwoch darauf eingehen. Ich
appelliere aber natürlich an Ihrer aller Vernunft, dies nicht
nur zum Posten und Abschreiben von Lösungen zu verwenden. In den
Tutorien und spätestens in der Klausur ist das Forum dann nämlich
unerreichbar fern...!

Schön wäre es, wenn einige der Softwareprobleme (z.B. mit
CygWin, Putty und Co.), die manchmal hier im Feedback geschildert
werden, auch dort diskutiert würden. Denn wenn viele Ideen dort
zusammengekommen und "darüber gesprochen" wird, ist bestimmt schnell
eine Lösung gefunden.

-nh

46.)
++++++++++++++ Mon Nov 15 16:30:00 2004 ++++++++++++++
Hallo,

noch kurz eine Frage...
wie sieht das bei den Aufgaben aus, bei der die Dateien/Verzeichnisse
aufgelistet werden sollen. Darf da der Pfad mit dabeistehen, oder muss man den
auch loswerden?

Dazu ist ja nichts explizit gesagt worden...bzw. das ist nicht ganz klar
formuliert.
Gruß

Letztlich ist das egal, aber wenn Sie das "du"-Kommando mit der Option
"-s" aufrufen (und dabei in Ihrem Heimatverzeichnis sind), dann
können Sie die Nennung der Pfade gleich von vornherein vermeiden.

-nh

45.)
++++++++++++++ Mon Nov 15 15:50:39 2004 ++++++++++++++
Hallo,

Ich wollte nur mal darauf verweisen, dass man die Aufgaben auch mit dem VI
lösen kann; auch mit regulären Ausdrücken, nur funktioniert da die Optionen \d
für Digits und \s für Whitespaces nicht.
Diese Form der regulären Ausdrücke sind soweit ich weiß eine Erfindung des
VI's, da es für Whitespaces und Digits bei "normalen" Regulären Ausdrücken auch
Ersetzungsmöglichkeiten gibt :-)
Also man muss sich nicht unbedingt in Abhängigkeit des VIM's geben.

Herzliche Grüße :-)

Absolut richtig: Auch der "einfache" VI kann reguläre Ausdrücke,
bis eben auf solche Geschichten wie "\d" und "\s". Wenn Sie später
aber mal z.B. mit Perl programmieren oder das Unix-Tools "sed" verwenden,
dann können Sie diese auch benutzen. Und deshalb wollte ich es
einfach mal vorstellen.

Aber Sie haben recht: Man kann die Aufgabe auch ohne "\d"
lösen. Wenn es die Zeit zulässt, werde ich es in den
Übungen zeigen!

-nh

44.)
++++++++++++++ Sun Nov 14 15:56:19 2004 ++++++++++++++
Hm, es müssen mich zwar jetzt recht viele für recht blöd halten, aber ich weiß
trotzdem noch nicht, wie ich dann den Text einfügen soll! Wie bekomme ich das
hin, dass der mir "Ich darf keine nnn ..." ausgibt? Ich mein, ich schreib immer
mit in ihrer Vorlesung und ich weiß auch, dass Sie das irgendwie hinbekommen
haben, aber WIE?
Übringens, ich hab das hinbekommen, dass der mir das in den vim ausgibt; danke

Wenn ich Sie richtig verstehe, dann haben Sie jetzt eine Datei, die
sie mit dem VIM öffnen können, und in der in jeder Zeile
zunächst eine Zahl (die Anzahl der Kilobytes) und dann ein Text
(der Name des Verzeichnisses / der Datei) steht. Ein "nnn" werden Sie
natürlich nirgends finden, das sollte auf dem Übungsblatt nur
ein Platzhalter für die Anzahl der Kilobytes sein.

Und von nun an helfen Ihnen die regulären Ausdrücke
weiter. Schauen Sie sich nochmal die Beispiele aus den Übungen
an. Insbesondere wie man mit Hilfe von regulären Ausdrücken
Zahlen "erwischt" und mit Klammern Ersetzungsbefehle ausführen kann,
sollten Sie sich nochmals scharf ansehen. Denn das ist Ihr Schlüssel
zum Glück... ;-)

-nh

43.)
++++++++++++++ Sun Nov 14 15:32:11 2004 ++++++++++++++
Hiiiiiilfe
Versuche gerade das 4. Aufgabenblatt zu lösen, doch ich krieg das einfach nicht
hin! Wie bekomme ich meine Größen und Namen in den vim, damit ich den Text
schreiben kann? Und wie soll ich das überhaupt ersetzen? Sitze gerade in der
Uni und komme einfach nicht weiter!
Wäre echt nett, wenn man mir wenigstens nen kleinen Tipp geben könnte!
Danke im Vorraus!

Okay, der kleine Tip ist der Begriff Ausgabeumlenkung. Es sagt
ja keiner, daß Sie sich die Ausgabe von "du" sofort in den VIM
schreiben lassen sollen. Das geht zwar auch, ist aber nicht unbedingt
nötig. Lassen Sie doch einfach die Ausgabe von "du" in eine Datei
schreiben und öffnen Sie anschließend diese mit dem VIM.

-nh

42.)
++++++++++++++ Sun Nov 14 15:16:37 2004 ++++++++++++++
Hallo!
Kann es sein, dass die links zu den "Beispielen aus den
Übungen" und den "Lösungsvorschlägen" fehlerhaft sind?

Nö! Ich hab's gerade nochmal kontrolliert, aber die sind alle
korrekt! Und die Server sind auch alle brav "up".

-nh

41.)
++++++++++++++ Sun Nov 14 12:59:57 2004 ++++++++++++++
Hallo zusammen.

Ich hab via Putty meine Oberon-Übungen angefangen und dort gab es ein kleines
Problem.
Nach erstellen des Codes und Makefiles, führte ich das Makefile aus. Allerdings
kam eine Fehlermeldung zurück, dass das symbol-file fehlt. Liegt das an Putty
oder habe ich beim erstellen des makefiles mist gebaut ?

Mit Putty hat das nix zu tun, denn Putty bringt Sie nur auf unsere
Rechner. Alle Fehlermeldungen, die Sie dann innerhalb von Putty
bekommen, sind Fehlermeldungen von dem Rechner, auf dem Sie bei uns
arbeiten. Daher dürften Sie mit Sicherheit bei der Übersetzung
des Oberonprogramms etwas falsch gemacht haben.

Nochmal zur Erinnerung: So übersetzt man ein Oberonprogramm:

   mmo -c makefile
   make

Dabei unterstellen wir aber, daß im aktuellen Verzeichnis genau
eine Oberonquelle (also eine *.om-Datei nebst der entsprechenden
*.od-Datei) vorhanden ist.

-nh

40.)
++++++++++++++ Fri Nov 12 19:23:24 2004 ++++++++++++++
Ich glaube ich habe ein Laienproblem, aber ich hoffe ich bekomme trotzdem eine
hilfreiche Antwort darauf:
Wenn ich von zuhause den vim aufrufen möchte, muss ich ja cygwin benutzen (mit
einem Windows PC).
Leider schaffe ich es nicht mich mit Cygwin auf dem Uni-rechner einzuloggen.
Was muss ich denn da nochmal genau tun????
Nebenbei noch ein Riesenlob dafür, dass die Übungen nun auch im Internet
stehen. Das erleichtert wirklich vieles.

Um sich unter Cygwin grafisch auf unseren Rechnern einzuloggen,
benötigen Sie zunächst einen laufenden X-Server. Diesen starten
Sie mit dem Befehl startx aus Cygwin heraus. Dann sollte sich
ein neues Fenster öffnen, das ein wenig anders ("grafischer")
aussieht. In dieses geben Sie dann 
   ssh -X theseus.mathematik.uni-ulm.de -l IhrLoginAnDieserStelle
ein.

Wenn Sie nun irgendwelche Fehlermeldungen erhalten, dann wird das
eventuell daran liegen, daß Sie nicht alle Pakete installiert
haben. Für das, was ich gerade erkläre, benötigen Sie auf jeden
Fall die Pakete 
  -  openssh
  -  X11
  -  die Startskripte für X
Diese Pakete können Sie bequem nachinstallieren, falls sie
fehlen sollten. Aber wichtig: Sie benötigen hier eine schnelle
Internet-Verbindung, weil das X-Protokoll ein Bandbreitenfresser ist. Mit
einem 56K-Modem werden Sie vermutlich nicht glücklich.

Sollte dies nicht weiterhelfen, so brauche ich noch etwas detaillierte
Angaben zu Ihrem Problem (und dann bitte per E-Mail!).

Viel Erfolg!


-nh

39.)
++++++++++++++ Fri Nov 12 15:09:12 2004 ++++++++++++++
Hallo, auch von mir ein großes Lob an N.H. und A.B.! Sie verstehn es, das
Interesse an Informatik zu wecken, sogar bei absoluten Laien wie mir. ;-)
Daher kommt jetzt auch eine vermutlich laienhafte, für Sie triviale Frage: Die
Postscript-Dateien kann ich ja von zuhause nicht ohne weiteres öffnen, deswegen
haben sie den Link zum Download auf diese Page gemacht. Nun sind da aber so
viele verschiedenen Dinge und da kenn ich mich nimmer aus. Was muss ich denn
nun genau runterladen, um ps zuhause lesen zu können? Danke!!!

Na, bei so viel Lob gibt es auch sofort eine Antwort :-)

Wenn Sie eine Postscript-Datei zu Hause (ich unterstelle jetzt mal ein
Windows-System) anschauen möchten, dann benötigen Sie dafür
zwei Programme: Ghostscript und Ghostview. Ersteres ist
nötig zum "Interpretieren" dieser Postscript-Datei (sonst weiss Ihr
PC gar nicht, was er damit soll), und mit Ghostview können Sie dann
die Bildschirmanzeige erzeugen (und natürlich auch drucken). Einen
Link zu beiden Programmen finden Sie auf unserer Vorlesungshomepage. Beim
Installieren bitte zuerst Ghostscript und dann Ghostview installieren,
denn Ghostview benötigt bereits ein installiertes Ghostscript.

Beachten Sie aber zu Ihrer Frage auch das Feedback Nummer 29 und meine
Antwort darauf!

-nh

38.)
++++++++++++++ Fri Nov 12 00:15:46 2004 ++++++++++++++
hallo!
ich bin sicher nicht der einzige, der mit dem vim folgendes problem hat:

wenn ich z.B.

vim datei.txt

im terminal eingebe, so erscheint nicht das programm, sondern eine leere zeile.
anschließend kann ich nicht mehr mit dem terminal weiterarbeiten. am linuxpool
passiert das nicht, allerdings daheim auf windows und linux.

wie kann ich das problem beheben?

Unter Linux müsste sich das Problem beheben lassen, indem Sie das
ssh-Kommando mit der Option "-X" aufrufen (wichtig: das X muss gross
geschrieben sein!), also so:

   ssh -X theseus.mathematik.uni-ulm.de -l HierIhrLogin
bzw.
   ssh -X HierIhrLogin@theseus.mathematik.uni-ulm.de

Falls Sie unter Windows Cygwin installiert und mit startx den
X-Server gestartet haben, sollte es so ebenfalls funktionieren.

-nh

37.)
++++++++++++++ Thu Nov 11 12:39:46 2004 ++++++++++++++
Ich finds super, dass die "Beispile aus den Übungen" jetzt nochmal mit
Erklährung im Net sind, So kann man sie nochmal in Ruhe am PC durchgehn. Ist
einiges effektiver, als sich alles aus seinen auch so sauberen Mitschrieben zu
saugen....

             Also, Dickes Lob an N.H.!!!

Vielen Dank für das Lob! Ich werde auch zuküftig die Beispiele,
die ich in den Übungen vorführe, auf's Netz stellen. Und diese
in aller Regel auch ausführlich kommentieren / erläutern. Zum
einen soll Ihnen das natürlich dazu dienen, alles nochmal selber
ausprobieren zu können. Andererseits brauchen Sie dann in den
Übungen auch nicht mehr alles mitzuschreiben und können sich
deshalb mehr auf die "Live-Vorführung" konzentrieren.

-nh

36.)
++++++++++++++ Tue Nov  9 20:14:53 2004 ++++++++++++++
Könnte man vielleicht eine Seite machen, auf denen sich die Studenten
gegenseitig Tipps geben können? Das wäre sicherlich auch recht hilfreich. Und
dann müssten sie nicht alle Fragen beantworten.

Zu einigen Vorlesungen, die ich selber als Student gehört habe,
gab es manchmal eigene Newsgroups. Vielleicht können wir soetwas
demnächst auch anbieten. Ich werde mich mal drum kümmern! Die
Idee gefällt mir!

-nh

35.)
++++++++++++++ Tue Nov  9 18:18:29 2004 ++++++++++++++
Hallo,

mal ganz kurz ne Frage. Ist bei der Aufgabe, bei der man von dem Wort
Katze zum nächsten vorkommenden Wort absichtlich der Kniff eingebaut,
dass man nicht auf das Wort "Katzenpfoten" springen soll?  Das würde
die Sache ein wenig komplizierter machen, meine Tutorin hat aber von
dem Kniff nichts gewusst...  Deshalb wollte ich nur darauf verweisen :-)

Eine andere Bitte war, ob Sie die neuen Übungen nicht schon ein paar
Stunden vor der eigentlichen Übung am Mittwoch auf die Seiten stellen
könnten. Dann könnten wir bei uns in der Schule bereits die neuen Aufgaben
im Informatik Unterricht behandeln...  Wäre echt super!

Vielen dank und weiter so :-)

Damit es für den Anfang nicht zu kompliziert wird, haben wir
auf diesen Kniff verzichtet. Aber die Idee ist klasse und weist in
die Richtung des Stoffes, den wir morgen in den Übungen behandeln
werden: Reguläre Ausdrücke. Damit können Sie dann
tatsächlich nach "echten Katzen" suchen und nicht nur nach Worten,
in denen "Katze" vorkommt, wie z.B. "Katzenpfoten"!

Was das neue Übungsblatt angeht, so habe ich es gerade online
verfügbar gemacht. Ich kann aber nicht versprechen, daß
ich es in Zukunft immer schon Dienstag abend fertig haben werde.

-nh

34.)
++++++++++++++ Tue Nov  9 14:45:07 2004 ++++++++++++++
Worin besteht der Sinn und Zweck den Umgang mit dem Editor VI zu
lernen. Kein Mensch verfasst heutzutage mehr Texte mit diesem aus meiner
Sicht benutzerunfreundlichem Programm. Die Schwierigkeit besteht doch
nur darin irgendwelche Tastaturbefehle auswändig zu lernen und nicht
alle Nerven bei der Bedienung zu verlieren. Ich hab fast schon den
Eindruck ,dass es hier verboten ist Programme mit Mausunterstützung und
graph.Interface zu benutzen.

Verboten ist es bei uns natürlich nicht, Programme mit Maus und
grafischem Interface zu verwenden, aber unter bestimmten Umständen geht
das einfach nicht, z.B. wenn Sie via Modem von daheim aus auf unseren
Rechnern arbeiten möchten. Bleiben wir hier doch einfach mal beim
Putty für Windows: Mit VI-Kenntnissen können Sie sich via Putty
bei uns einloggen und in Zukunft alle Ihre Programmieraufgaben bequem
von daheim aus bearbeiten. Dafür benötigen Sie keine schnelle
Internet-Verbindung, sondern ein 56K-Modem reicht. Wenn Sie hingegen
grafisch arbeiten würden, haben Sie zum einen das Problem, sich einen
X-Server unter Windows installieren zu müssen und vor allem wird Ihnen
das allenfalls noch mit einer schnellen DSL-Verbindung Spaß machen! 

Abgesehen davon hat der VI(M) eine Menge von Funktionen, die zwar nur
über Tastaturkommandos erreicht werden können, aber unter
den gängigsten grafischen Editoren schlicht überhaupt nicht
zur Verfügung stehen! Wenn Sie mir die erste Aufgabe des neuen
Übungsblattes (Blatt 4) mit dem Notepad vorführen, gebe ich
Ihnen darauf auch gerne die volle Punktzahl. Aber ich wette, das wird
Ihnen nicht gelingen.

Wenn wir ab jetzt ins Programmieren einsteigen, dann ist es Ihnen
selbstverständlich freigestellt, welchen Editor Sie verwenden
möchten. Der VI sollte Ihnen nur vorgestellt werden, um Sie
vielleicht ein wenig davon zu überzeugen.

Übrigens: Daß "kein Mensch" mit dem VI arbeitet, halte ich
für etwas voreilig behauptet. In der SAI werden Sie jedenfalls
niemanden finden, der nicht mit dem VI arbeitet. Ihr Skript
zur Vorlesung entsteht übrigens auch mit dem VI, ebenso alle
Übungsaufgaben, Beispiellösungen, und und und...

-nh

33.)
++++++++++++++ Mon Nov  8 22:22:04 2004 ++++++++++++++
Hallo Zusammen
Was mir so nach und nach auffällt ist, dass viele Leute die hier etwas posten
leicht abfällig beahandelt werden. Jedesmal wenn jemand ein Problem hat und es
vermutlich ein reiner Anfängerfehler ist, wird ihm keine richtige Lösung
angeboten, wei z.b. Server war down, sonder "Also bei mir hat´s funktioniert
:)"
Da mich das auch schon einmal betroffen hat und ich es hier schon mehrmals
gesehen habe, denke ich, es ist Zeit dies zur Sprache zu bringen.
Sicherlich sind fast alle der hier aufgefürhrten Probleme vor allem für Herr
Borchert ein Witz, aber jeder muss doch mal irgendwo anfangen und nicht gleich
mit myriaden von Sticheleien in der Antwort auf seinen Post auskommen.
Hoffe mit dieser Meinnung liege ich nicht ganz alleine.

Ansonsten viel Spaß noch allen mit der Vorlesung und gutes Gelingen.

Ich glaube nicht, daß hier jemand durch die Antwort auf ein
Feedback abfällig behandelt wird. Teilweise wird aber direkt nach
den Lösungen der Übungen gefragt, und die möchte ich
natürlich nicht gleich hier posten. Deshalb gibt es kleine Hinweise,
die vielleicht auch mal ein wenig ironisch klingen (sollen). In der
Regel sollte aber jeder soviel Humor besitzen, um dies zu verstehen.

Und wenn Aussagen in dem Stil von "Bei mir funktioniert das
nicht!" getroffen werden, ohne das Problem oder die erhaltenen
Fehlermeldungen näher zu spezifizieren, dann kann ich einfach
nicht helfen. Dann probier ich's halt, ob's bei mir funktioniert (oder
ob eben ein Server "down" ist, wie dies leider in den letzten Tagen mal
gewesen ist), schreibe die Uhrzeit dazu und wie ich's gemacht habe. Dann
kann jeder selber überprüfen, ob er nicht vielleicht doch
einen Tippfehler eingebaut hat.

Also, bitte keine meiner Antworten falsch verstehen - wir sind für alle
Fragen offen!

-nh

32.)
++++++++++++++ Mon Nov  8 20:11:07 2004 ++++++++++++++
Hallo.
Wäre es irgendwie möglich das Skript schon ein bis zwei Tage vor der Vorlesung
ins Netz zu stellen, damit man es vorher ausdrucken kann. Ich würde gerne
während der Vorlesung mitlesen und mir an geeigneter Stelle meine Notizen
machen, so dass ich hinterher einen einfachen Überblick über meine Notizen
habe, und nicht erst zwei Stunden suchen muss bis ich weiß was wozu gehört.

Ursprünglich war es angedacht, das Skript bereits am Montag
online zu stellen. Da es in den letzten Wochen aber zu verschiedenen Rechnerstörungen
gekommen ist, musste Herr Borchert viel Zeit investieren, um diese
Störungen zu beheben - und daher ist das Skript nicht rechtzeitig
(bzw. am Montag) fertiggestellt worden. Wir hoffen, daß wir in
Zukunft wieder ohne Störungen leben, und dann wird das Skript auch
schon vor der Vorlesung verfügbar sein.

-nh

31.)
++++++++++++++ Mon Nov  8 10:36:35 2004 ++++++++++++++
Hallo,

also das Übungsblatt ist ja nicht allzu schwer, sind schon nen paar Kniffs
dabei - aber dann machts ja auch Spass :-) 

Aber jetzt mal ehrlich, wenn ich am Ende das diff mache, dann könnt
ihr doch nicht erwarten, dass die unsrige Datei komplett gleich ist mit
der Musterlösung. Ich meine wenn man da bloß ein Leerzeichen zuwenig
oder zuviel hat, oder das Versmaß nicht so ganz übereinstimmt oder beim
Speichern der beiden Dateien eine Leerzeile zuviel reingerutscht ist,
zeigt das diff das ja auch an -- aber da muss ich mir doch nicht die
Mühe machen das auch zu korrigieren.  Ich mein der Sinn und Zweck ist
es doch mit dem Handwerkszeug zurechtzukommen und ich hoffe, dass man
nicht so pingelich wegen nem Leerzeichen sein wird...

Grüße und dank

Keine Sorge, der Aufruf von diff am Ende des Blattes soll nur
für Sie zur Kontrolle dienen, ob Sie - bis auf die von Ihnen
beschriebenen Kleinigkeiten - alles gut korrigiert haben. Und ich gebe
Ihnen 100% Recht: ein paar Leerzeichen mehr oder weniger wird Ihnen Ihr
Tutor nicht krumm nehmen. Genau wie Sie schreiben ist der Sinn dieser
(Teil-)aufgabe, die Verwendung des Handwerkszeugs zu zeigen (hier also
diff und VI). Und wenn das diff am Ende Unterschiede zeigt, so ist dieser
Zweck ja irgendwie auch erfüt - sofern jeder versteht, was das diff
da eigentlich ausgibt. Also: Keine Panik!

-nh

30.)
++++++++++++++ Sun Nov  7 19:42:28 2004 ++++++++++++++
also das in nr.25 zu der "}" . das kann SO nicht stimmen. immer wenn ich ":!}"
und zum beispiel ls schreibe, dann kommt eine fehlermeldung, ohne die klammer
":!" geht es aber.

Moment! Sie schreiben also ":!}ls" ? Dann bekommen Sie in der
Tat eine Fehlermeldung. Aber lassen Sie doch einfach mal den Doppelpunkt
weg...!

-nh

29.)
++++++++++++++ Sun Nov  7 18:29:12 2004 ++++++++++++++
Um die VIKompakt anzuzeigen habe ich das Ghostview heruntergeladen (für
windows). Allerdings benötigt das Programm Ghostscript aufgrund einiger dlls
usw. Von Ghostscript gibt es aber keine Windows kompatible Version. Was nun ?

Doch, eine Windows-Version von Ghostscript gibt es selbstverständlich
auch:

Wenn Sie dem Link auf unserer Homepage folgen, dann können Sie eine
GPL Version und eine GNU Version von Ghostscript finden. Für Windows
gibt es jedoch nur die GNU-Version. Vielleicht haben Sie versehentlich
GPL angklickt?

Folgen Sie einfach dem GNU-Link, wählen Sie den SourceForge-Mirror,
und dort finden Sie dann die entsprechende EXE-Datei für Windows.

-nh

28.)
++++++++++++++ Sun Nov  7 18:22:19 2004 ++++++++++++++
Das VI-Kompakt lässt sich mit wget nicht herunterladen. Wo liegt das Problem ? 
thx4help

p.s. Ich habe es ganz sicher richtig geschrieben :P

Keine Ahnung, wo Ihr Problem liegt, denn bei mir funktionierte es gerade
(18:45). Ich habe folgenden Befehl verwendet:

wget http://www.mathematik.uni-ulm.de/sai/ws04/prog/uebungen/blatt3/vikompakt.ps

Und Sie...?

-nh

27.)
++++++++++++++ Sun Nov  7 18:16:41 2004 ++++++++++++++
Hallo zusammen
Ich möchte nur Anmerken, dass die Übungen eine ware Tortur für die
Windows-User sind. Alleine das auftreiben eins Programmes zum anschauen
der so hilfreichen und gelobten VI-Kommandos schlug fehl.  Es kann
eben nicht jeder ein Linux System auf seinen Rechner installieren. Dazu
fehlt mir zum Beispiel, der speicher, der internet traffic und die Zeit.
Warum kann man nicht einfach gerade die Goodies als HTML uppen ? Wenn
man das alles anscheinden so einfach hin under her umwandeln kann,
warum machen sies dann nicht ?

Und ich glaube ich spreche für den großteil dieses Kurses wenn ich sage,
dass man die Aufgaben so stellen sollte, dass ein Windows User sie auch
bewerkstelligen kann ohne jedesmal in die Uni rennen zu müssen.

Ich fürchte, daß ich Ihnen da auch nicht helfen kann. Mehr
als in den Übungen immer wieder betonen, wie problemlos man mit
Putty und ähnlichen Programmen die Uni-Rechner von überall
her erreichen kann, vermag ich auch nicht zu tun. Für Putty
reicht Ihnen ganz sicher ein Uralt-Rechner mit wenig Speicher, und für
eine reine SSH-Verbindung (ohne X, also Grafik) tut's auch eine normale
56K-Modem-Verbindung. Wo also ist das Problem? Niemand verlangt, daß
Sie zu Hause Linux installieren (auch wenn's mit Sicherheit hilfreich
wäre). Und was das Fehlschlagen der Installation von Ghostscript
angeht: siehe Posting 29!

-nh

26.)
++++++++++++++ Sun Nov  7 16:13:09 2004 ++++++++++++++
Ich habe ein Problem mit Cygwin. Wie kann ich einen ssh verbindung zur uni
herstellen ? Ein Tool dafür gab es nicht in den auszuwählenden
install-files.

Doch doch, das SSH-Tool gibt es! Es befindet sich in dem Paket
openssh. Das müssen Sie installieren, und schon steht Ihnen
ein SSH-Zugriff im Cygwin zur Verfügung!

-nh

25.)
++++++++++++++ Sun Nov  7 15:45:41 2004 ++++++++++++++
so servus erstmal,
ich hab ein paar fragen zum 3. aufgabenblatt. ist es moeglich die aufgabe
mit dem sortieren der durcheinandergeratenen zeilen mit dem "sort"
befehl zu loesen? ich sitz naemlich schon ne weile dran und habs bisher
nicht geschafft.  maine zweite frage bezieht sch auf die aufgabe in der
man die zwei gedichte in verschiedene dateien trennt. ist es moeglich mit
dem "grep" befehl nur nach zeilen und nicht nach stichworten zu suchen.

ps: ich hab mir die "man" seiten anegeschaut habe aber keine  fuer
mich in frage kommende befehle gefunden oder vielleciht uebersehen?! -
vorlesung und uebung finde ich uebrigens klasse ^^

Ja, das Sortieren der Zeilen ist mit dem Shell-Kommando sort
möglich. Ich hatte dazu ein kleines Beispiel in den Übungen
vorgeführt (mit dem ls-Kommando). Da war irgendwas mit einem
Ausrufungszeichen und einer geschwungenen schliessenden Klammer ("}"). Na,
klingelt es???

Was die Frage zu grep betrifft, so ist mir nicht ganz klar, was genau
Sie meinen. Schreiben Sie mir doch einfach eine E-Mail oder kommen Sie
in den nächsten Übungen zu mir.

Und natürlich freut es uns, wenn Ihnen unsere Veranstaltungen gefallen!

-nh

24.)
++++++++++++++ Sun Nov  7 12:08:39 2004 ++++++++++++++
ich habe eine kleine frage zu der prüfung für allgemeine
informatik. wie läuft diese denn ab? und die zweite frage wäre
ob oder wie die tutorien in die prüfung miteingerechnet wird oder
ob das ein schein gibt.

hoffe die frage stellung ist soweit verständlich.

Den besten Eindruck davon, wie Prüfungen verlaufen, bekommen Sie,
wenn Sie sich in der Fachschaft (Fachschaft für Mathematik in
diesem Fall) die entsprechenden Prüfungsprotokolle ausleihen
und kopieren. Das kann man nicht so ohne weiteres in einem Satz
beschreiben. Die Tutorien gehen jedenfalls indirekt mit ein, denn
dort wird ja der Stoff der Übungen vertieft, und Übungen
sind grundsätzlich prüfungsrelevant (auch in anderen
Fächern). Einen Schein gibt es übrigens in der Regel für
das Bestehen einer Klausur und der Übungen. Eine Prüfung
hingegen resultiert in einer Note, die nachher in Ihrem Zeugnis (Vordiplom
/ Diplom) steht.

-nh

23.)
++++++++++++++ Sat Nov  6 20:37:58 2004 ++++++++++++++
Einen schönen guten Abend wünsche ich erst einmal!
Die Vorlesungen sind ja meist interessant, doch habe ich am Mittwoch bei
"heidi" meist Probleme die Kommandos mitzuschreiben! Denn ich habe keine
"Tab-Taste", bei der dann der restliche Text dasteht ;)  Wäre nett, wenn das
manchmal ein bisschen langsamer ginge, damit ich dann auch meine Aufgaben ohne
größere Zwischenfälle erledigen kann. 

Vielen Dank im Vorraus und keep :)

Ich glaube, ich habe zu Hause noch eine alte Tastatur, die ich nicht mehr
brauche. Wenn Sie wollen, kann ich da die Tab-Taste herausnehmen und
Ihnen für die Übungen zur Verfügung stellen. Dann hätten
Sie auch eine Tab-Taste. Ist das ein Deal?

Aber abgesehen davon ist Ihre Botschaft angekommen ;-) Ich werde
versuchen, mehr Zeit zum Mitschreiben zu lassen!

-nh (a.k.a. "heidi")

22.)
++++++++++++++ Sat Nov  6 17:08:52 2004 ++++++++++++++
Hallo,

erstmal danke für die interessante Vorlesung. Ich hatte eine Frage
zu den Aufgaben. Dort heißt es:

"Der dritte Absatz dieses Gedichts ist doppelt. Bitte entfernen Sie das
Duplikat mit einem einzigen VI-Kommando."

Was heißt in dem Fall "einem einzigen Kommando"? Kann ich mit dem
Cursor schon an die Stelle "heranfahren" und dann das einzige Kommando
ausführen, oder darf ich Marken setzen?  Oder gibt es da ein
mir noch unbekanntes Kommando auf das man eine Datei nach gleichen
Absätzen untersuchen kann, ähnlich dem "cmp" oder "diff"
Kommando in der Shell?

Viele Grüße und danke schon vorweg

Das "einzige Kommando" soll bedeuten, daß Sie das eigentliche
Löschen der vier Zeilen in einem einzigen Kommando erledigen
(und nicht jede Zeile einzeln). Die "Vorbereitungen" dazu, also
z.B. das Heranfahren mit dem Cursor zählen nicht zu diesem Kommando
dazu. Sie können aber gerne auch Marken zu setzen.

Ein Pendant zum diff ist mir innerhalb des VI nicht bekannt
(was aber nicht ausschließt, daß es so etwas gibt...). Aber
verlangt ist das für diese Aufgabe nicht!

-nh

21.)
++++++++++++++ Sat Nov  6 13:13:41 2004 ++++++++++++++
Apropos Tafelanschrieb. 
Es wäre vielleicht ganz hilfreich nicht nur auf die rechte Tafelseite
zu schreiben, sondern auch auf die linke.  Wenn nämlich auf der
Tafel ganz rechts etwas steht, ist es für die Studenten auf der
linken Seite sehr schwer zu erkennnen.

Ansonsten: Großes Lob - sehr interessante Übung.

Das liegt daran, daß mir mein Arzt mehr Bewegung verordnet hat, und
die habe ich, wenn ich ständig vom Laptop zur rechten Tafel und
zurück laufe, denn das ist schließlich der weiteste Weg... ;-)))

Aber im Ernst: Ich versuche, demnächst daran zu denken. Und vielen
Dank für's Lob!

-nh

20.)
++++++++++++++ Sat Nov  6 10:12:52 2004 ++++++++++++++
Ich glaube in der Lösung des zweiten Blattes hat sich ein kleiner Fehler
eingeschlichen: Bei dem Kommando
grep -v ['+-',':'] california.txt >> myEstates.txt
wird eine Zeile nicht herausgefiltert, da einmal '|' und das andere Mal ':' zur
Trennung der Worte verwendet wird. Vollständig müsste es
grep -v ['+-','|:'] california.txt >> myEstates.txt 
heißen =>
cat texas/texas.txt > myEstates.txt | grep -v ['+-','|:'] >> myEstates.txt

Ja, da haben Sie vollkommen recht! Vielen Dank für den Hinweis!
Es reicht sogar schon aus, den Doppelpunkt durch das Pipeline-Symbol "|"
zu ersetzen. Also so:

   cat texas/texas.txt > myEstates.txt | grep -v ['+-','|'] >> myEstates.txt 

Ich habe die Lösung entsprechend geändert. 

-nh

19.)
++++++++++++++ Fri Nov  5 11:25:49 2004 ++++++++++++++
Jetzt gibt es gleich noch ein Frage zu VIkompakt:
Ich habe ja geschafft die Datei zu öffnen, aber beim Drucken
läuft bei mir so einiges schief: was kann ich denn tun, damit mein
Drucker nicht alle Zeichen durcheinanderschmeißt??

Das ist aus der Ferne leider etwas schwer zu sagen. Als ersten
Versuch würde ich mal die Postscript-Datei in eine PDF-Datei
konvertieren (mit dem Befehl ps2pdf). Schauen Sie sich dann mal die
PDF-Datei an bzw. drucken diese aus - vielleicht läuft so dann alles
glatt. Ansonsten können Sie mir Ihre Probleme gerne etwas genauer
schildern, dann aber bitte per E-Mail und nicht via Feedback!

-nh

18.)
++++++++++++++ Thu Nov  4 13:57:05 2004 ++++++++++++++
Ich hab da mal 'ne Frage: mit welchem Programm soll man den VI-Kompakt denn
öffnen?

Oh, da hat wohl gestern in den Übungen jemand nicht aufgepasst ;-)

Postscript-Dateien (und eine solche ist die Datei VI-Kompakt) werden
unter UNIX / Linux mit dem Programm ghostview geöffnet,
das mit dem Kommando gv gestartet wird. Also öffnet man die
Datei wie folgt:

gv dateiname &

wobei dateiname durch den Namen der Postscriptdatei ersetzt werden muß.

Für Windows gibt es einen Link zum Download der entsprechenden
Programme auf unserer Vorlesungshomepage.

-nh

17.)
++++++++++++++ Wed Nov  3 20:18:49 2004 ++++++++++++++
Heut fand ich die Info-Übung zum ersten mal einwenig lehrreich, da
die Befehle an die Tafel geschrieben wurden!  Sonst hatte man nie eine
Chance alle Befehle und ihre Funktion mit zu schreiben!!;-) weiter so!

Ich sag's ja immer wieder: alles wird gut! Und der VI ist auch gar nicht
so schlecht wie sein Ruf ;-) !
Jedenfalls kann ich gerne mehr an die Tafel schreiben, wenn's
gewünscht wird. Kein Problem!

-nh

16.)
++++++++++++++ Mon Nov  1 21:26:17 2004 ++++++++++++++
Was muss ich bei Putty unter Host Name eingeben, wenn ich von zu Hause aus
meine Aufgabe erledigen will? Habs leider vergessen.

Wie der Name schon sagt: den Hostname, also den eindeutigen
Namen des Rechners, auf dem Sie arbeiten möchten. Angenommen,
Sie möchten auf der theseus arbeiten, dann lautete der
vollständige Hostname:

   >>>>   theseus.mathematik.uni-ulm.de    <<<<

Alternativ könnten Sie hier auch die IP-Adresse des entferntern
Rechners eingeben, aber in der Regel dürfte es einfacher sein,
mit den Rechnernamen zu operieren.

-nh

15.)
++++++++++++++ Mon Nov  1 19:55:37 2004 ++++++++++++++
guten abend,
ich habe grade das 2. übungsblatt bearbeitet und bei dem versuch
die *.txt dateien von dem ftp zu kopieren bin ich gleich gescheitert. im
manual steht cp [source] [target]..
ok also gebe ich als source die ftp addresse(auf der übungsseite
unten angegeben) an und target dort wo ichs in meinem verzeichnis
hinhaben will.  jedoch kommt dann immer die fehlermeldung cannot access.
hab ich dazu keine rechte irgendwas auf dem ftp zu kopieren oder liegt das
daran dass ich an der addresse was falsch geschrieben habe? wobei ich ja
die addresse nur vom übungsblatt kopiert habe.  dankeschön fürs
beantworten schon mal ;)

Ne ne, mit dem cp-Befehl kommen Sie hier in der Tat nicht weiter. Damit
können Sie nämlich nur innerhalb des lokalen Dateisystems
kopieren. Wenn es ein entfernter Rechner sein soll, hilft der scp-Befehl,
den ich in den Übungen erklärt habe, aber ein Zugriff auf
einen FTP-Server funktionert damit auch nicht.

Aber nicht verzagen, es gibt da schon eine Lösung! Eine ganz
ähnliche Frage hatte nämlich schonmal einer Ihrer Vorposter,
weshalb Sie mal meinen Kommentar zu Feedback Nummer 8 ganz scharf
anschauen sollten...

-nh

14.)
++++++++++++++ Mon Nov  1 14:29:20 2004 ++++++++++++++
Hi!
Ich finde die Vorlesung kewl! Man lernt wenigstens mal was nützliches.
Wollte ich nur mal anmerken! Ach und die ftp Seite ist offensichtlich down.

Also macht weiter so
Keep on moving

Na, das hören bzw. lesen wir doch mal gerne! Vielen Dank! In
der Tat werden Sie die UNIX-Kommandos, die wir in der ersten Zeit
präsentieren, in der Regel immer wieder brauchen können.

Was den FTP-Server betrifft, so müsste der
mittlerweile wieder zu erreichen sein (bei mir ging
es gerade (16:10 Uhr)). Aber es stimmt: Durch den Ausfall
der Turing waren die Webseiten (und FTP-Dienste) der mathematischen
Fakultät eine Zeit lang nicht erreichbar :-(

-nh

13.)
++++++++++++++ Mon Nov  1 12:36:40 2004 ++++++++++++++
Ich hab ein kleines Problem mit dem Sortieren in der 2. Übung.
Die Sortierreihenfolge konnte ich zwar mittlerweile umkehren, aber die
Reihenfolge stimmt immer noch nicht weil vor den einstelligen Zahlen keine 0
steht...
Ich habe mich mehrmals durch die manual seite von sort gekwählt und nichts
gefunden.
Wie geht denn das bitteschön ?

Das herauszufinden ist ja gerade der Witz dieser Teilaufgabe! Wie kann
ich da jetzt helfen, ohne gleich die Lösung zu verraten? Hmm,
mal überlegen...

Schauen Sie auf jeden Fall nochmal die Manual-Seite kritisch
durch. Vielleicht (nein, besser: ganz sicher) finden Sie da eine Option,
die es Ihnen ermöglicht, numerisch zu sortieren (Dann
brauchen wir auch keine führende Null oder soetwas!). Vielleicht
taucht in diesem Zusammenhang auch etwas von einem arithmetic
value in der Manual-Seite auf...

So, jetzt müssten Sie die Option aber finden...!

-nh

12.)
++++++++++++++ Fri Oct 29 16:12:30 2004 ++++++++++++++
Hallo.
Insgesamt finde ich die Vorlesung wirklich gut, und sie gefällt
mir. Doch ich muss auch sagen: die Unix-Shell Kommandos und allem voran
Vi sind mir ein echter Graus!! Ich hab mich etliche Jahre mit Ms-Dos
6.22 rumgeschlagen und das ist im Vergleich zu Unix/Vi was Shell und
Editor angeht echt weit benutzerfreundlicher.Tastaturkommandos der Art:
"drücke 3 Tasten um einen Buchstaben zu löschen" und die pure
Ignoranz zu Backspace oder Entf kosteten mich beim 2. Übungsblatt
viele viele Jahre meines Lebens.Das hätte man auch um Längen
einfacher lösen können. Dazu hab ich auch noch eine Frage: Gibt
es eine Möglichekeit, diese Tasten zu aktivieren oder einzubinden,
so dass sie funktionieren wie bei Dos (wenn man unbedingt mit der Shell
arbeiten muss)? Das wird vielleicht auch noch viele andere Studenten, die
sich mit Unix/Linux und deren Shell nicht so gut auskennen interessieren.

Es ist vielleicht nur ein kleiner Trost, aber wenn Sie daheim mit
Linux arbeiten funktionieren diese Tasten!

Aber aus eigener Erfahrung kann ich sagen, daß man sich schnell
an den VI und die Shell gewöhnen kann. Wenn man bereit ist,
sich mal auf diese neue Erfahrung einzulassen, merkt man schnell, wie
überaus effizient man damit arbeiten kann. Und das möchten wir
Ihnen in den ersten Wochen des Semesters vorführen. Welchen Editor
Sie in Zukunft dann verwenden, ist Ihnen überlassen. Niemand wird
Sie zwingen, zum Programmieren den VI zu verwenden. Aber jetzt am Anfang
möchten wir Ihnen den VI vorstellen und Sie davon überzeugen,
daß man mit diesem besser arbeiten kann als mit irgendwelchen
grafischen Tools. Lassen Sie sich überraschen...

-nh

11.)
++++++++++++++ Fri Oct 29 16:08:35 2004 ++++++++++++++
kann mir mal einer erklären, wie das system bei dem head | tail
befehl is, um den kopf wegzulassen? also nach welchem system geht
das? muss ich head und dann ab welcher zeile es dann losgehn soll,
sprich 4 und tail 7 oder muss ich 3 zeilen abziehn, sprich head -3 oder
wie is das?

Na klar kann Ihnen das einer erklären: die Manualseite von tail
bzw. head! Aber weil ja bald Weihnachten ist, gibt es noch einen
kleinen Tip von mir oben drauf: Sie können sich ja zum Beispiel
mal anschauen, wieviele Zeilen die Datei so hat und wieviele davon Sie
nicht brauchen (also den Tabellenkopf). Jetzt schnell noch eine kleine
Subtraktion vorgenommen und eine zündende Idee mit der Verwendung
von tail gehabt, und schon ist Ihr Problem gelöst. Wetten dass...?

P.S.: Eine Pipe 'head | tail' wie in Ihrem Posting erwähnt ist
übrigens keine gute Idee!

-nh

10.)
++++++++++++++ Fri Oct 29 15:54:55 2004 ++++++++++++++
so ne Liste mit den 100 wichtigsten Befehlen jetz am Anfang wär
irgendwie kewl...

Keine Bange, die wichtigsten Befehle führen wir in den nächsten
Vorlesungs- und Übungsstunden nach und nach ein / vor. Wenn Sie die alle
brav mitschreiben, haben Sie bis Weihnachten die gewünschte Liste
zusammen. Und wir verlangen natürlich nicht, daß Sie Befehle
(also Tools) verwenden, die wir Ihnen noch nicht vorgestellt haben.
Also: keine Panik! Kommt alles!

-nh

9.)
++++++++++++++ Thu Oct 28 16:03:11 2004 ++++++++++++++
Kurze Frage zum Zusammenfügen der texas.txt und california.txt, ist es so
gemeint den doppelten Tabellenkopf mittels vi auszuschalten oder lohnt
es sich nach einem geeigneten Parameter zu suchen?

Eigentlich sollte diese Aufgabe ohne den VI gelöst werden, aber da es
hier zu Schwierigkeiten kommen kann, die in Vorlesung und Übung noch
nicht besprochen worden sind, ist es Ihnen nun freigestellt, wie Sie den
Tabellenkopf entfernen. Daher ist auch die Verwendung des VI in Ordnung.

-nh

8.)
++++++++++++++ Thu Oct 28 12:16:44 2004 ++++++++++++++
Ich habe eine frage zum scp-Befehl, wie bekomme ich damit die .txt Dateien
vom Übungsblatt in mein homeverzeichnis? Die ftp-verbindung in der
secure shell funktioniert wunderbar, aber kopiert bekomme ich die Dateien
nicht, es wird immer nur eine fehlermeldung ausgeworfen.  den einzigen weg
über den ich die dateien kopieren konnte war ein scp-client für
windows, aber damit dürfte ich im tutorium probleme bekommen...

Und noch ein kleiner hinweis für leute die auch probleme mit putty oder
terraterm haben, das programm SSHSecureShellClient-3.2.9 bietet sowohl eine
secure shell unter windows wie auch einen scp-client in einem und ist gut zu
handhaben...

Abgesehen von der trivialen Methode (einloggen in einem unserer
Mathe-Pools und das Herunterladen der Dateien via Browser) gibt es noch
eine Variante, die auch unter putty oder aehnlichen SSH-Clients von
außerhalb funktioniert:

Sie loggen sich auf einem unserer Matherechner ein und wechseln in das
Verzeichnis, in das Sie die Datei kopieren moechten. Dann verwenden Sie
den Befehl 'wget'. Er ist ganz einfach zu verwenden:

   wget ftp://ftp.mathematik.uni-ulm.de/pub/vorlesungen/ws04/prog/uebungen/blatt2/bsp/dateiname

wobei Sie dateiname durch den Namen der Datei ersetzen muessen, die
Sie herunterladen möchten.

Ansonsten vielen Dank für den Tip mit dem SSHSecureShellClient. Wer
Interesse an diesem Programm hat, findet unter Google mehrere Möglichkeiten zum
Download. Einen exakten Link für den Download möchte ich an
dieser Stelle aber eher nicht angeben.

-nh

7.)
++++++++++++++ Thu Oct 28 11:49:30 2004 ++++++++++++++
Eigentlich alles bestens, doch bei der aktuellen Aufgabe, hat sich
wohl ein Schreibfehler eingeschlichen? Auf dem FTP Server liegt eine
Datei namens "califorina.txt". Damit könnte jeder auf ein Problem
stoßen, der California intuitiv richtig schreibt?

Da haben Sie vollkommen recht! Vielen Dank für den Hinweis! Ich
habe den Tippfehler soeben korrigiert. Sorry!

-nh

6.)
++++++++++++++ Wed Oct 27 21:05:01 2004 ++++++++++++++
Was ist eigentlich der Unterschied zwischen Linux und Unix?
Ich hoffe das ich nicht die einzige bin die auf diese Frage keine Antwort
weiß!:-(
Hat das in der Vorlesung schon mal jemand erklärt?

Nun, vereinfacht kann man sagen, daß Linux ein
"nachprogrammiertes" Unix ist, das man überall im Internet
kostenlos herunterladen oder für wenig Geld kaufen
und dann beliebig oft kopieren und weitergeben kann.

Unix ist ein kommerzielles Produkt und wird mitunter auch eher als ein Sammelbegriff für mittlerweile eine Familie von abgeleiteten Betriebssystemen (sog. Unix-Derivate), zu denen unter anderem auch Solaris gehört, mit dem die Workstations in O27 laufen, verstanden.

-nh

5.)
++++++++++++++ Wed Oct 27 19:32:43 2004 ++++++++++++++
Hallo!
Könnten sie bitte die Übungszettel auch in einem Format
speichern, dass man leicht auf dem PC öffnen kann wie .pdf oder
.doc? Wäre sehr nett.

Wer sagt denn, daß sich HTML-Dateien und Postscript-Dateien
nicht leicht öffnen lassen? Erstere dürften selbst auf Windows
überhaupt kein Problem darstellen, und letztere kann man mittels der
Programme Ghostview / Ghostscript ebenfalls bequem unter Windows
betrachten und drucken. Einen Link zum Download der Programme stelle
ich auch auf die Vorlesungshomepage! Und wer mit Linux arbeitet, braucht
diese Frage erst gar nicht zu stellen... ;-)

-nh

4.)
++++++++++++++ Wed Oct 27 19:16:13 2004 ++++++++++++++
hi
ich bin sehr negativ überrascht wie abgrundtief langsam  linux ist
und wie abrundtief instabil das läuft. da verwöhnt mich mein
winxp ja geradezu.  jedenfalls haben Sie meine ganze betriebsystemwelt
über den haufen geworfen..  ich als windowskind träumte bei
so manchem windowsabsturz von linux. aber das läuft offensichtlich
auch oft "hässlich" (wie prof. borchert zu sagen pflegen würde).
die vorlesung zur übung informatik ist meineserachtens für studenten
die nicht mit dem laptop gerade dasitzen(und alles direkt nachverfolgen
können) und auch keine linuxwizards sind eher verwirrend -
wenn nicht gar unverständlich. ich hätte etwas mehr struktur
erwartet. aber vielleicht kommt das ja noch beim programmieren.  lob gibts
natürlich auch für prof. borchert der bei jedem linux absturz den
perfekten lacher auf lager hat - und für seinen enthusiasmus mit dem er
(hoffentlich erfolgreich) versucht uns der materie näher zu bringen.

Wenn Ihr Linux instabil und langsam läft, so kann das auch an
der Hardware-Ausstattung Ihres Rechners liegen (Zu wenig RAM, nicht
unterstütze Hardware, etc.), oder Sie haben sich eine Linux-Version
besorgt, die noch im Teststadium ist? Jedenfalls ist Linux in der Regel
alles andere als instabil.

Und was das Verständnis des Stoffes der Vorlesung angeht, so sollten
Sie gerade deswegen aktiv die Übungen selber machen, denn hier wird
der Stoff an konkreten Beispielen nocheinmal vorgeführt und sollte
danach dann verständlich(er) sein. Und wenn nicht, so können
Sie jederzeit gerne Fragen stellen.

-nh

3.)
++++++++++++++ Mon Oct 25 18:43:48 2004 ++++++++++++++
wo finde ich das erste Übungsblatt nochmal? Bin ich blind oder hab
ich nur vergessen mir in der vorlesung den link aufzuschreiben?  danke!

Ihr exaktes Sehvermögen kann ich natürlich nicht beurteilen,
aber wenn Sie trotz intensiven Betrachtens der Vorlesungshomepage immer
noch keinen Link auf das Übungsblatt sehen, dann empfehle ich
zumindest mal eine augenärztliche Untersuchung ;-))

Kleiner Tip: Versuchen Sie es mal unter der Rubrik Übungen.
Dort finden Sie ganz bestimmt eine Tabelle mit den Links zu den
Übungsblättern im HTML- und PS-Format sowie zu den
Musterlösungen!

-nh

2.)
++++++++++++++ Thu Oct 21 17:29:52 2004 ++++++++++++++
Hallo, könntet ihr bitte die tutoriumszeiten der tutoren hinter
die logins der tutoren schreiben, damit ich es leichter habe meinen
tutor wieder zu finden. danke

Ich habe auf die Seite mit den Namen der Tutoren einen Link gesetzt
auf eine PDF-Datei. Dieser können Sie entnehmen, welcher Tutor zu
welchen Zeiten Tutorien anbietet.

-nh

1.)
++++++++++++++ Thu Oct 21 16:36:38 2004 ++++++++++++++
Ich kann des Übungsblatt net lösen, da ich nicht weiss wie
meine Tutorin (Simone) ausssieht und ich sie deshlab noch nicht nach
ihrer Email-Addi fragen konnte. Kann man die mal online stellen, von
vielleicht allen Tutoren !? Oder finde ich dir nur nicht.

Mittlerweile sind die E-Mail-Adressen (Logins) unserer Tutor(inn)en
online. Man kann sie entweder über die Vorlesungshomepage erreichen
oder über diese Abkürzung hier! 

-nh