Fehlerquellen - Programmieren und Problemlösen

Werbung
Willkommen . . .
. . . Studentinnen und Studenten der Studiengänge
•
•
•
Umweltnaturwissenschaften
Erdwissenschaften
Agrarwissenschaften
zur Vorlesung
http://www.pup.ethz.ch/
Agenda für heute, 25. Februar, 2010
• Begrüssung
• Ziele und Struktur der Lehrveranstaltung, Leistungskontrolle
• Grundlagen der Programmierung
• Die Arbeitsumgebungen
• Der Aufbau eines Pascal-Programms
• Fehlerquellen
Lesen Sie den Begleittext Kapitel 1 & 2.
Programmieren und Problemlösen
2/16
© Departement Informatik, ETH Zürich
Das Team
Dozent
Prof. Dr. H. Hinterberger
Departement Informatik
Assistierende
Hilfsassistent
Karl Presser
Kajetan Abt
Barbara Scheuner
Tanja Werthmüller
Programmieren und Problemlösen
3/16
© Departement Informatik, ETH Zürich
• Begrüssung
• Ziele und Struktur der Lehrveranstaltung,
Leistungskontrolle
• Grundlagen der Programmierung
• Die Arbeitsumgebungen
• Der Aufbau eines Pascal-Programms
• Fehlerquellen
Ziele und Struktur der Vorlesung, Leistungskontrolle
In dieser Lehrveranstaltung lernen Sie:
• Die Grundlagen der Programmierung verstehen und anwenden
• Einen PC mit Pascal und Delphi zu programmieren
So arbeiten Sie:
• Vorlesung: 1h
• Begleitetes Selbststudium + Übungen 2h
• Selbständiges Arbeiten
Programmieren und Problemlösen
4/16
© Departement Informatik, ETH Zürich
Themen der 7 Übungen, Leistungskontrolle
Abgabetermine
Übung 1:
Übung 2:
Übung 3:
Übung 4:
Übung 5:
Übung 6:
Übung 7:
Grundlagen, erste Programme (TP)
Wiederholte Programmausführung
Arrays, Prozeduren
Grafische Objekte (Delphi)
Parametr. Prozeduren, Funktionen
Externe Daten verarbeiten
Bilddaten verarbeiten
Zwischenprüfung
Semesterende-Prüfung
11. März
11. März
25. März
15. April
29. April
13. Mai
3. Juni
15. April (45 Min.)
27. Mai, 15 – 16 Uhr
Leistungskontrolle:
• Alle 7 Übungen bearbeiten und abgegeben
• Semesterende-Prüfung bestehen (Note 4 oder besser)
Programmieren und Problemlösen
5/16
© Departement Informatik, ETH Zürich
Ihre Computerarbeitsplätze
Raum
Anzahl
CAB H 56
CAB H 57
20
20
Programmieren und Problemlösen
Typ
PC/Windows 7
PC/Windows 7
6/16
© Departement Informatik, ETH Zürich
Themen der Vorlesungen
1
2
3
4
5
6
7
8
9
10
Datum
Einführung
Bedingte Programmausführung
Wiederholte Programmausführung
Strukturierte Variablen: Array
Prozeduren
Delphi, imp. vs. oo Programmieren
Vorlesungsfrei (Osterferien)
Zwischenprüfung
Param. Prozeduren, Bespr. Zwischenprüfung
Permanente Datenspeicherung: Files
Strukturierte Variablen: Record
Vorlesungsfrei (Auffahrt)
Strukturierte Programmierung: Units
Semesterende-Prüfung
Vorlesungsfrei (Synthesewoche UWIS)
Programmieren und Problemlösen
7/16
25. Feb.
4. März
11. März
18. März
25. März
1. April
8. April
15. April
22. April
29. April
6. Mai
13. Mai
20. Mai
27. Mai
3. Juni
© Departement Informatik, ETH Zürich
• Begrüssung
• Ziele und Struktur der Lehrveranstaltung,
Leistungskontrolle
• Grundlagen der Programmierung
• Die Arbeitsumgebungen
• Der Aufbau eines Pascal-Programms
• Fehlerquellen
Grundlagen der Programmierung
Kapitel 1 lesen
xyz.pas
Quellprogramm
tpc.exe
fpc.exe
Computer
Pascalcompiler
xyz.exe
Objektprogramm
Computer
Eingabedaten
Ausgabedaten
Programmieren und Problemlösen
8/16
© Departement Informatik, ETH Zürich
• Begrüssung
• Ziele und Struktur der Lehrveranstaltung,
Leistungskontrolle
• Grundlagen der Programmierung
• Die Arbeitsumgebungen
• Der Aufbau eines Pascal-Programms
• Fehlerquellen
Die Arbeitsumgebungen
Konsole –Text
Konsole – Grafik
Befehlszeilen-Ebene (DOS)
Befehlszeilen-Ebene (DOS)
Werkzeuge:
Werkzeuge:
• Texteditor
Notepad
• Pascal-compiler
tpc.exe
• Programmeditor
turbo.exe
Programmieren und Problemlösen
9/16
Desktop
Windows
Werkzeuge:
• "Visuelle" Programmierumgebung
delphi.exe
© Departement Informatik, ETH Zürich
• Begrüssung
• Ziele und Struktur der Lehrveranstaltung,
Leistungskontrolle
• Grundlagen der Programmierung
• Die Arbeitsumgebungen
• Der Aufbau eines Pascal-Programms
• Fehlerquellen
Eine informelle Einführung
Individueller Programmname
Eingabe-/Ausgabeparameter
program
; Programmkopf
Deklarationen
begin
Programmblock
Anweisungen
Prozedur-/
Funktionsaufrufe
end.
Programmieren und Problemlösen
10/16
© Departement Informatik, ETH Zürich
Eine informelle Einführung
program quadratwurzel (input, output);
var
x: real;
Prozedur für die Dateneingabe
begin
read (x);
write (sqrt (x))
end.
Standardfunktion von Pascal
Prozedur für die Datenausgabe
Programmieren und Problemlösen
11/16
© Departement Informatik, ETH Zürich
Deklarationsabschnitt: Definition von Variablen und Konstanten
const
c = 22;
meldung = 'sind Sie sicher?';
Konstantenbezeichner
Wert (Literal)
var
x: real;
temp: integer;
Variablenbezeichner
Programmieren und Problemlösen
Datentyp
12/16
© Departement Informatik, ETH Zürich
Eine informelle Einführung
Pascal setzt standardmässig (input, output)
program fahrenheit;
{Autor: Peter Hacker, Juni, 2008}
Kommentar
var
x, y: real;
begin
read (x);
y:= (x - 32) * 5 / 9;
Zuweisungsanweisung
write (y:5:2)
end.
Programmieren und Problemlösen
13/16
© Departement Informatik, ETH Zürich
Zuweisungsanweisung
Variablenbezeichner
Arithmetischer Ausdruck
y :=
(x - 32) * 5 / 9;
Zuweisungssymbol
Ein arithmetischer Ausdruck erzeugt einen einzigen Wert.
Dieser Wert ist von einem bestimmten Datentyp.
Die Resultate der arithmetischen Operationen bestimmen den Datentyp.
Programmieren und Problemlösen
14/16
© Departement Informatik, ETH Zürich
• Begrüssung
• Ziele und Struktur der Lehrveranstaltung,
Leistungskontrolle
• Grundlagen der Programmierung
• Die Arbeitsumgebungen
• Der Aufbau eines Pascal-Programms
• Fehlerquellen
Fehlerquellen
Syntaxfehler
xyz.pas
Laufzeitfehler
Quellprogramm
Computer
Pascalcompiler
xyz.exe
Objektprogramm
Computer
Eingabedaten
Syntax-Fehler werden während der
Übersetzung des Programms entdeckt.
Laufzeitfehler entstehen während der
Programmausführung
Programmieren und Problemlösen
15/16
Ausgabedaten
© Departement Informatik, ETH Zürich
Fehlerquellen
Illegale Instruktion (z.B. Division durch 0)
Laufzeit-Fehler
Fehlerhafte Eingabe (z.B. Zeichen statt Zahl)
Falsche Programmlogik (z.B. falsche Arithmetik)
(semantische Fehler)
Programmieren und Problemlösen
16/16
© Departement Informatik, ETH Zürich
Herunterladen