Fehlerliste und Hinweise zur 4. Uebung
Beispiel 1
- keine Pointernotation für w[i], also *(w+i) nicht verwendet
- falsche Berechnungen unterschiedlichster Art, meist bei z-Vektor. Der z-Vektor hat Länge 2*n.
- fehlende/falsche Ausgaben
- Felder nicht dynamisch
- Speicher nicht freigegeben, oder falsch (delete x; statt delete [] x;)
- zu kleine Felder/ nicht alle Daten eingelesen
- überflüssige Zählzyklen
- Winkel in Radiant umgerechnet
- fmod(i,2) statt einfach i % 2; (Rundungsfehler)
- a && b || c ist nicht dasselbe wie a && (b || c)
Beispiel 2
- keine/ungeeignete Daten-Struktur verwendet
- statische Felder
- Fehler beim berechnen der Winkel
- pow verwendet
- nicht alle Daten eingelesen/verarbeitet
- Vektoren gespeichert und nicht deren Indizes
- Pointernotation ist unleserlich und muss im allgemeinen nicht verwendet werden.
- Speicher nicht freigegeben
- Es gab einen Bonuspunkt, falls man ein Vektorenpaar nur einmal überprüft hat.
Beispiel 3
- Keine Ueberprüfung ob überhaupt eine Zahlungsverpflichtung existiert.
- Werte uninitialisiert
- Es war nur nach USI zu suchen
- nach grösster Zahlungsverpflichtung gesucht
- falsche logische Verknüpfung (&& statt ||)
- Zweck nicht dynamisch!!!
- setw wurde nur von 3 Studentinnen zur (teilweisen) Eingabeabsicherung verwendet.
- Speicher nicht/falsch freigegeben
- strlen(z+1) statt strlen(z) + 1
- Zweck = new double(strlen(z)) statt Zweck = new double(strlen(z) + 1)
- Speicher von pKonto freigegeben, bevor die einzelnen Zwecke freigegeben worden sind.