Institut für Mathematik Universität Augsburg Logo des Instituts für Mathematik
Klaus Bernt
Klaus BERNT
Lehrstuhl für Rechnerorientierte Statistik und Datenanalyse
 

 

Hinweise zu den Programmieraufgaben zur Numerischen Mathematik

Bei der Bearbeitung der Programmieraufgaben sind einige Regeln zu beachten. Diese sollen nicht nur dem Korrektor die Arbeit erleichtern, sondern auch Ihnen selbst helfen, sich an einen brauchbaren Programmier-Stil zu gewöhnen, damit Sie auch einige Zeit später in der Lage sind, Ihre eigenen Programme zu lesen und zu verstehen.

Administratives

  • Programmiersprache
    Im Wintersemester 2006/07 werden Programme in folgenden Sprachen akzeptiert: C, C++, Java, scilab.
  • Dateityp
    Es werden Source-Dateien erwartet, also solche mit den Endungen .c, .CC, .java, .sci oder .sce. Projekt-Dateien oder ausführbare Programme (.exe) sind maschinen- und compilerabhängig und daher für den Korrektor unbrauchbar; außerdem können sie infiziert sein.
  • Dateiname
    Der Dateiname des Programms soll sich zusammensetzen aus dem Namen des/der Autoren und der Aufgaben-Nummer; Beispiel: Stender_Bernt_3.c .
  • Abgabe
    Senden Sie Ihr korrekt funktionierendes Programm per E-Mail an Ihren zuständigen Korrektor; wer das ist, erfahren Sie in der Vorlesung, Übung oder auf der Vorlesungs-Webseite. Außerdem soll die E-Mail die Eingabe- und die Ausgabe-Datei enthalten (siehe unten: "Daten").
    Senden Sie gleichzeitig sich selbst eine Kopie zu (Bcc:); auf diese Weise sehen Sie, was beim Korrektor ankommen wird. Es ist Ihre Aufgabe, auf eine vollständige Abgabe zu achten, nicht seine.

Programmierung

  • Layout
    Obwohl dem Compiler das Layout des Programms vollkommen egal ist, ist das beim Korrektor nicht der Fall. Ein gutes Layout hilft sehr bei der Interpretation des Programms und bei der Fehlersuche - also besonders Ihnen selbst! Deshalb soll das Programm auch optisch strukturiert sein. Dies kann durch eine sinnvolle Einrück-Strategie (z.B. bei Verzweigungen, Schleifen, Unterprogrammen) erreicht werden.
  • Kommentare
    Kommentieren Sie Ihr Programm sinnvoll. Das bedeutet, daß einerseits Kommentare im Quellcode enthalten sein sollen. Andererseits soll aber nicht jede einzelne Zeile kommentiert werden, sondern nur Abschnitte oder wichtige Schritte (z.B. "Rückwärtssubstitution:", "Assemblierung der Matrix und der rechten Seite").
    Am Anfang des Programms sollten wichtige Informationen als Kommentar vorhanden sein: Aufruf des Programms, Ein- und Ausgabe-Formate, welche Algorithmen werden verwendet, Autor(en), Datum, Literatur- und Quellenangaben. Vor einem Unterprogramm sollten ähnliche Informationen stehen: Aufruf, Ein- und Ausgabe-Parameter, was tut sie und wie, Autoren- und Quellenangaben. Es kommt öfters vor, daß ein Unterprogramm an eine andere Stelle kopiert wird; dann sind diese Infos nützlich.
  • Variablennamen
    Um das Programmieren und Korrigieren der Programme zu erleichtern, sollten die Namen, die im Programm an die Variablen vergeben werden, etwas mit der Funktion der Variablen im Programm zu tun haben. Z.B. könnte eine Variable, die die Norm eines Vektors enthält, norm_vec genannt werden.
  • Autor
    Das Programm soll bei Aufruf als erstes die Autoren und seine Version nennen (Name, Vorname; Datum der Programmierung).
  • Daten
    Beinahe jedes Programm benötigt Eingabe-Daten. Diese sollen nicht etwa fest programmiert, sondern von einer Datei eingelesen werden.
  • Dimensionen
    Die Größe von Vektoren und Matrizen soll eingelesen werden, wenn sie von der Größe des Problems oder den Eingabe-Daten abhängt. Die feste Vorgabe einer Maximal-Größe beschränkt das Programm in unnötiger Weise. Das Programm soll ein anderes Problem des gleichen Typs, aber anderer Größe, ohne erneute Compilation bearbeiten können.
  • Test
    Testen Sie Ihr Programm zuerst mit einfachen Daten, so daß Sie die Korrektheit der Ergebnisse nachprüfen können. Wenn Ihnen Testdaten mit den zugehörigen Ergebnissen gegeben wurden, sind diese (ebenfalls) zu verwenden. Erst nach erfolgreichen Tests sollten Sie Ihr Programm einreichen. Es macht einen schlechten Eindruck, wenn der Korrektor falsche Ergebnisse bekommt und die Ursache im Programm findet!

Bei der Umsetzung dieser Regeln könnten Ihnen die Tipps und Tricks für Programmierer helfen. Wenn Sie dafür Ergänzungen haben, sind diese hoch willkommen.

 

Klaus Bernt, 22.07.2015

[Uni Augsburg]  [Math.-Nat. Tech. Fakultät]  [Institut für Mathematik]  [Lehrstuhl]  [Print-Version]  [E-Mail]  aktualisiert am: 22.07.2015;  © Uni Augsburg