Prüfungsbesprechung Barbara Scheuner

Slides:



Advertisements
Ähnliche Präsentationen
Algorithmentheorie 08 – Dynamische Programmierung (1)
Advertisements

Forschungszentrum caesar
Strukturierter Text.
Ausdrücke bezeichnen Elemente eines Datentyps induktive Definition:
Pascal-Datentypen Skalare Typen Zeiger- Typen Strukturierte Typen
10. Grundlagen imperativer Programmiersprachen
12. Iteration und Rekursion
DINAMISCHE STRUKTUREN FACHBEGRIFFE 1. DER POINTERDER POINTER 2. DER BUFFERDER BUFFER 3. DER KNOTENDER KNOTEN DIE EINFACHVERKETTETE LISTE DEFINITION DEFINITION.
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
PKJ 2005/1 Stefan Dissmann Zusammenfassung Bisher bekannt: Einfache Variable Feld Vereinbarung Zuweisung Block while-Schleife Bedingte Anweisung (if) Typ.
Java programmieren mit JavaKara
Einführung in die Programmiersprache C 3.Tag Institut für Mathematische Optimierung - Technische Universität Braunschweig.
PHP und MYSQL am Organisatorisches Der komplette Kurs im Schnelldurchgang Bewertung von wichtig und unwichtig Historisch Kulturwissenschaftliche.
Debugging in Lua Universität zu Köln Re-usable Content in 3D und Simulationssystemen Prof. Dr. Manfred Thaller Referent: Artur Wilke.
BIT – Schaßan – WS 02/03 Basisinformationstechnologie HK-Medien Teil 1, 11.Sitzung WS 02/03.
Wiederholte Programmausführung
Willkommen... Studentinnen und Studenten der Studiengänge Umweltnaturwissenschaften Erdwissenschaften Agrarwissenschaften zur.
Abteilung für Telekooperation Übung Softwareentwicklung 1 für Wirtschaftsinformatik Dr. Wieland Schwinger
Programiersprache Mustafa SÖYLEMEZ e
Grundlagen Wissenschaftlichen Arbeitens Hilal Tekoglu
Automaten, formale Sprachen und Berechenbarkeit II SoSe 2004 Prof. W. Brauer Teil 1: Wiederholung (Vor allem Folien von Priv.-Doz. Dr. Kindler vom WS 2001/02.
Mala Bachmann, Beispiel Velorennen Velorennen mit 5 TeilnehmerInnen Wie kann die durchschnittliche Rennzeit berechnet werden?
Mala Bachmann, Beispiel Velorennen (1) Velorennen mit 5 TeilnehmerInnen Wie kann die durchschnittliche Rennzeit berechnet werden?
MODULA-2.
Agenda für heute, 22. Juni, 2006 Direkte FilezugriffeDirekte Filezugriffe Datentypen: Mengen Individualisierbare Datentypen.
Willkommen... Studentinnen und Studenten der Studiengänge Umweltnaturwissenschaften Erdwissenschaften Agrarwissenschaften zur.
Agenda für heute, 18. Mai, 2006 Strukturierung von Programmen: ProzedurenStrukturierung von Programmen: Prozeduren Strukturierung von Programmen: Units.
Datentypen: integer, char, string, boolean
Agenda für heute, 20. April, 2006 Wiederholte ProgrammausführungWiederholte Programmausführung Algorithmische Grundlagen Bedingungen zum Abbruch von Programmschleifen.
Agenda für heute, 28. April, 2005 Strukturierte VariablenStrukturierte Variablen Arrays.
Agenda für heute, 7. April, 2005 Bedingte ProgrammausführungBedingte Programmausführung Algorithmische Grundlagen Vergleichsoperatoren, Wahrheitswerte.
Agenda für heute, 14. April, 2005 Wiederholte ProgrammausführungWiederholte Programmausführung Algorithmische Grundlagen Bedingungen zum Abbruch von Programmschleifen.
Agenda für heute, 26. Mai, 2005 Strukturierte Variablen: RecordsStrukturierte Variablen: Records Kombiniertes Strukturieren Individualisierbare Datentypen.
PHP: Operatoren und Kontrollstrukturen
1 Tagesüberblick 2 Lösung Hausaufgabe/Fragen Datei- ein- und ausgabe Schleifen Vergleiche Wahrheit.
Codebaumanalyse Was geschieht in der Methode Codebaum.decodiere, wenn als Parameter der Code 001 übergeben wird? Gib die Zeilennummern der durchlaufenen.
Vorkurs Programmierungstechnik Einführung in Pascal Michael Gellner Lehrstuhl für Softwaretechnik am Institut für praktische Informatik der Universität.
Der Datentyp Verbund (record)
Agenda für heute, 21. April, 2005 Interaktion mit Pascal-ProgrammenInteraktion mit Pascal-Programmen Dateneingabe Programmsteuerung Debugging Datentypen:
Java-Kurs - 4. Übung Hausaufgabe Weitere Kontrollstrukturen
Lernlandkarte OOP (ObjektOrientiertes Programmieren)
Java-Kurs - 4. Übung Hausaufgabe Weitere Kontrollstrukturen
Delphi Chars und Strings
Extended Pascal ( Erweitreung von Pascal) Name: Mehmet CELIK Matr :
The Programming Language Pascal
Wann ist eine Funktion (über den natürlichen Zahlen) berechenbar?
Prüfungsbesprechung Barbara Scheuner Vorlesung: Programmieren und Problemlösen Prof. Hans Hinterberger.
Java-Kurs - 4. Übung Hausaufgabe Weitere Kontrollstrukturen
Programmiersprache PASCAL
Programmieren mit Lazarus. Die Programmoberfläche das Hauptfenster der Objektinspektor das Formular der Quelltexteditor Komponenten hier einfügen...
Wiederholte Programmausführung
Programmieren und Problemlösen
Strukturierte Variablen: Records
Datentypen: integer, char, string, boolean
Programmieren und Problemlösen
Java-Kurs - 4. Übung weitere Kontrollstrukturen
Heap Operationen Folien bitte als Vollbild-Bildschirmpräsentation (Taste F5) betrachten! Vorlesung Algorithmen und Datenstrukturen, WS10/11, C. Eckert.
Strukturierte Variablen: Records
Datentypen: integer, char, string, boolean
Parametrisierte Prozeduren und Funktionen
Java-Kurs - 2. Übung primitive Datentypen, Konstanten
Syntax: while ( BEDINGUNG ) { // Anweisungen die so lange immer wieder ausgeführt // werden, wie die Bedingung zutrifft } for (INITIALISIERUNG; BEDINGUNG;
SS 04 Christiane Rauh Christian Hellinger
Arten von Kontrollstrukturen
Unterschiedliche Arten von Kontrollstrukturen
GRUNDLAGEN WISSENSCHAFTLICHEN ARBEITENS MODULA-2 SONAY SUBAYAZ
Allgemeine Iteration und Rekursion
Schleifen Datenfelder (Arrays) Verzweigungen
The Programming Language Pascal
 Präsentation transkript:

Prüfungsbesprechung Barbara Scheuner Vorlesung: Programmieren und Problemlösen Prof. Hans Hinterberger

Departement Informatik Prüfungseinsicht Karl Presser (karl.presser@inf.ethz.ch) CAB E 15.2 Universitätstrasse 6 8092 Zürich Sonntag, 10. Juni 2018 Departement Informatik

Departement Informatik Einzelne Fehler Texteditor Wann braucht es ein BEGIN… END? Wenn es mehr als eine Anweisung hat Als einzelne Anweisung gelten: Zuweisung Methodenaufruf Schleifenblock IF.. THEN.. ELSE- Block Sonntag, 10. Juni 2018 Departement Informatik

Departement Informatik Die meisten Fehler Bedingungen if-then-else In Schleifen Schleifen Laufvariablen Verschiedene Schleifentypen Äquivalenzen Matrizen / Arrays Sonntag, 10. Juni 2018 Departement Informatik

Departement Informatik Bedingungen Äquivalente Bedingungen: (i < 9) -> (i <= 8) (i > 5) -> (i >= 4) Bedingungen mit Variablen in schleifen Wird die Schleife überhaupt betreten? Werden die Variablen in der Schleife verändert? Wenn ja, wie ändert sich der Wert? Sonntag, 10. Juni 2018 Departement Informatik

Departement Informatik Schleifen-Beispiel Füllen Sie die Tabelle kurz aus Sonntag, 10. Juni 2018 Departement Informatik

Departement Informatik Schleifen-Typen FOR anfangswert TO endwert DO anweisungsfolge FOR anfangswert DOWNTO endwert DO anweisungsfolge WHILE bedingung DO anweisungsfolge REPEAT anweisungsfolge UNTIL bedingung Sonntag, 10. Juni 2018 Departement Informatik

Umwandlung von FOR-Schleifen FOR i:= 0 TO 20 DO … FOR i:= 20 DOWNTO 0 DO … FOR i:= 4 TO 24 DO … ACHTUNG: wird i innerhalb der Schleife verändert, kann das zu mehr oder weniger Iterationen führen. FOR i:= 0 TO 20 DO BEGIN writeln(i); i:=i+2; END; Achtung: Bezüge zu i müssen überprüft werden! Sonntag, 10. Juni 2018 Departement Informatik

Departement Informatik For -> While FOR i:= 3 TO 7 DO BEGIN FOR j:= 7 DOWNTO 0 DO writeln(i+j); END; i:= 3; WHILE (i<8) DO BEGIN j:= 7; WHILE (j>=0) DO writeln(i+j); j:= j-1; END; i:= i+1; Sonntag, 10. Juni 2018 Departement Informatik

Departement Informatik While -> Repeat (1) i:= 3; WHILE (i<8) DO BEGIN j:= 7; WHILE (j>=0) DO writeln(i+j); j:= j-1; END; i:= i+1; i:= 3; REPEAT j:= 7; writeln(i+j); j:= j-1; UNTIL (j<0); i:= i+1; UNTIL (i>7); (i=7); Sonntag, 10. Juni 2018 Departement Informatik

Departement Informatik While -> Repeat (2) i:= 3; WHILE (i<a) DO BEGIN i:= i+1; END; i:= 3; REPEAT i:= i+1; UNTIL (i>a); i:= 3; IF (i<a) THEN REPEAT i:= i+1; UNTIL (i>a); Problem: diese Bedingung könnte nie erfüllt sein. Sonntag, 10. Juni 2018 Departement Informatik

Departement Informatik Arrays (1) a: Array[2..10] of Integer; FOR i:= 1 to 9 DO A[i+1]:= (i+1) DIV 2; 1 1 2 2 3 3 4 4 5 2 3 4 5 6 7 8 9 10 b: Array[0..8] of Integer; FOR i:= 1 to 9 DO B[i-1]:= A[i+1]+(i+1); 3 1 2 3 4 5 6 7 8 4 6 7 9 10 12 13 15 Sonntag, 10. Juni 2018 Departement Informatik

Departement Informatik Arrays (2) Das Array text sein mit dem folgenden Inhalt versehen: Abc: Array[`a`..`z`] of Integer; ... For i:= 0 to 8 do abc[text[i]]:= abc[text[i]] +1; 1 2 3 4 5 6 7 8 d a s i t r o 1 a b c d i o r s t z 1 1 1 1 2 1 2 1 Sonntag, 10. Juni 2018 Departement Informatik

Departement Informatik Matrizen PROGRAM Buchstaben; VAR i,j:Integer; alpha: Array [1..3,0..3] of Char; BEGIN for j:= 0 to 3 DO BEGIN for i:= 1 to 3 DO BEGIN alpha[i,j]:= chr(96+i+(3*j)); END; for j:= 0 to 3 DO for i:= 1 to 3 DO writeln(alpha[i,j]); readln; END. i 1 1 2 2 3 3 j a b c 1 1 d e f 2 g h i 3 j k l Sonntag, 10. Juni 2018 Departement Informatik

Fehler beim Programmieren Fehlersuche: Semantik -> der Programmierer/ die Programmiererin Doppelte Verwendung von Variablennamen Syntaxfehler -> Compiler (http://www.delphibasics.co.uk/index.html) Typenkompatibilität Sonntag, 10. Juni 2018 Departement Informatik

Departement Informatik Beispiel Sonntag, 10. Juni 2018 Departement Informatik

Departement Informatik DEBUGGER http://www.pup.ethz.ch/docs/Debugger.pdf Sonntag, 10. Juni 2018 Departement Informatik