VU Software Paradigmen / SS 2008

Größe: px
Ab Seite anzeigen:

Download "VU Software Paradigmen / SS 2008"

Transkript

1 VU Software Paradigmen / SS 2008 Stephan Gspandl Institut für Softwaretechnologie sgspandl@ist.tugraz.at Institute for Software Technology

2 Lehrziele Vermittlung von einführenden Kenntnissen des Compilerbaus (Analyse der Programmsyntax) und der Ausführungskonzepte von Programmiersprachen (Semantik). Schreiben und Verstehen von einfachen Compiler Verstehen von Sprachsemantiken und deren Unterschiede Institute for Software Technology 2

3 Inhalt Organisatorisches Aufbau der LVA Benotung Ziele und Inhalt Institute for Software Technology 3

4 Organisatorisches VU (3 Wochenstunden) Vorlesungsteil (2 Wochenstunden) Jeweils Dienstag, 9:30-11:00, HS I12 Prüfungstermin: Nachklausur: Ende September 2009 Übungsteil (1 Wochenstunde) LV mit immanenten Prüfungscharakter Institute for Software Technology 4

5 Termine DI, :00-13:30 HS I12 / s.t. DI, :30-11:00 HS I12 / s.t. DI, :30-11:00 HS I12 / s.t. DI, :30-11:00 HS I12 / s.t. DI, :30-11:00 HS I12 / s.t. DI, :30-11:00 HS I12 / s.t. DI, :30-11:00 HS I12 / s.t. DI, :30-11:00 HS I12 / s.t. DI :30-11:00 HS I12 / s.t. DI, :30-11:00 HS I12 / s.t. DI, :30-11:00 HS I12 / s.t. DI, :30-11:00 HS I12 / s.t. DI, :00-11:00 Prüfung Institute for Software Technology 5

6 Übung Übungsgruppen (siehe TUGonline) Übungsaufgaben (5 Abgabewochen): Abgabe verschoben auf: Benotet werden: Anzahl der gelösten Beispiele Präsentation der Lösungen Programmierbeispiel 2 Abgabetermine (27.4. und 8.6., 12 Uhr, per ) Institute for Software Technology 6

7 Tutoriumstermine Voraussichtlich: Montag, Uhr und Uhr Dienstag, Uhr und Uhr Mittwoch, 8-9 Uhr, 9-10 Uhr Mittwoch, Uhr und Uhr Freitag, 9-10 Uhr und Uhr Wo? IST-Seminarraum und CityTower Institute for Software Technology 7

8 Programmierbeispiel Es sind Parser und Interpreter für arithmetische Ausdrücke über den Datentyp der Kommazahlen zu schreiben. Syntax: S ::= begin E ; E end ε E ::= id := A begin E ; E end if P then E else E fi A ::= ( R op R ) R P ::= ( R rop R ) R ::= id num := ist der Assignmentoperator. In- und Output des Programms sind aus diesem Grund Variablenenvironments. Nehmen Sie weiters an, dass es die Built-in Funktionen +, - (op) sowie die Prädikate <, = (rop) geben soll. Identifier (id) enthalten nur Kleinbuchstaben, während Zahlen (num) als Folge von Ziffern dargestellt werden. Führende Nullen sind nicht gestattet. Zahlen dürfen einen Dezimalpunkt enthalten. Gültige Zahlen wären: 1, 2, 0.3, 1.5, ,. Institute for Software Technology 8

9 Programmierbeispiel Die Aufgabe soll in 2 Teilen gelöst werden: 1. Schreiben Sie einen LL(1)-Parser in Java, der die gegebene Sprache parsen kann. Sie können für diesen Teil der Aufgabe einen Parser-Generator verwenden. Der Parser soll eine Fehlermeldung ausgeben, wenn ein Programm syntaktisch nicht richtig ist. (Abgabetermin: 27. April) 2. Schreiben Sie einen Interpreter für die gegebene Sprache, die Programme entsprechend verarbeiten kann. Dieser Interpreter soll Programme der Sprache einlesen und ein Ergebnis des Ausdrucks berechnen. Definieren Sie zuerst für diesen Zweck eine formale Semantik und prüfen Sie ob Ihr Interpreter diese einhält. (Abgabetermin: 8. Juni) Die Abgabe der Lösung erfolgt spätestens am letzten Tag der Abgabe per an Ihre Tutorin bzw. Ihren Tutor. Institute for Software Technology 9

10 Benotung Noten setzt sich zusammen aus: Anzahl der gelösten Aufgaben und deren Bewertung (20 %) Programmierbeispiel (20 %) Schriftliche Prüfung am 23.6., x Uhr, HS x (60 %) Positive Note bei >50 % Institute for Software Technology 10

11 START Anmeldung UE-Teilnahme Endklausur Positiv JA Positives Zeugnis NEIN JA Nachtermin Endklausur Positiv Abmeldung NEIN JA Kein Zeugnis Negatives Zeugnis Institute for Software Technology 11

12 Bei Fragen.. Vor der VU Sprechstunde Mo Uhr nach Vereinbarung [ sgspandl@ist.tugraz.at ] [ Telephon: DW 5475 ] Institute for Software Technology 12

13 Unterlagen Lehrveranstaltungsverlauf unter Folien Skriptum Übungsangaben SWP TUG tu-graz.lv.swp Buchempfehlungen Institute for Software Technology 13

14 Ziele der LVA Sprachdefinition Syntax Semantik von Programmiersprachen Konzepte von Programmiersprachen Auswertung von Programmen Struktur von Programmen Entscheidungsprobleme Institute for Software Technology 14

15 Grober Ablauf (I) Syntax BNF Sprachhierarchie Prinzipien Institute for Software Technology 15

16 Grober Ablauf (II) Semantik Funktionale Sprachen Imperative Sprachen Logikorientierte Sprachen OO Sprachen Institute for Software Technology 16

17 Grober Ablauf (III) Entscheidungsprobleme Halteproblem Äquivalenzproblem Institute for Software Technology 17

18 Grober Ablauf (IV) Prog.sprachenkonzepte Modules Libraries Components Aspects,... Institute for Software Technology 18

19 Institute for Software Technology Überblick

20 Klassifikation von Sprachen Syntaktische Kriterien / Grammatik Wie wird ein Programm strukturiert? Ist die Sprache einfach zu lernen? Unterstützt eine Sprache, die Programmierung großer SW-Systeme?... Semantische Kriterien Auswertung von Programmen Institute for Software Technology 20

21 Semantik? Bedeutung (der Konstrukte) einer Sprache Die Bank von Peter. Sitzbank Geldinstitut Institute for Software Technology 21

22 Bedeutung von Programmen fun test (x,y) = if x=0 then 0 else y + test(x-1,y); Was berechnet das obige SML- Programm? Institute for Software Technology 22

23 Vergleich mit math. Definition x * y = y + (( x 0 if 1)* ( x y) = 0) otherwise (Induktive) Definition der Multiplikation test implementiert die Multiplikation! Institute for Software Technology 23

24 Logik-orientierte Programme Prädikate vater(x,y)... X ist der Vater von Y Regeln can_fly(x) :- bird(x). Anfragen can_fly(papagei). Institute for Software Technology 24

25 Prolog-Programmbeispiel Formalisieren Sie mit Hilfe von vater das Prädikat grossvater(x,y), das wahr ist, wenn X der Großvater von Y ist. Institute for Software Technology 25

26 Prolog-Programmbeispiel Formalisieren Sie mit Hilfe von vater das Prädikat grossvater(x,y), das wahr ist, wenn X der Großvater von Y ist. X ist der Großvater von Y wenn X der Vater von Z ist und Z der Vater von Y. Institute for Software Technology 26

27 Prolog-Programmbeispiel grossvater(x,y) :- vater(x,z), vater(z,y). X ist der Großvater von Y wenn X der Vater von Z ist und Z der Vater von Y. Institute for Software Technology 27

28 Anfragen vater(franz,karl). vater(karl,otto). grossvater(franz,otto)? Anfrage grossvater(franz,otto) muß Ja (True/Yes) liefern. Institute for Software Technology 28

29 Semantik von Imperativen Sprachen? void change(int x,y) { } int z = x; x = y; y = z; Definition über die Interpretation der einzelnen Statements. Die Statements führen dabei zu Zustandsänderung des Programms. Institute for Software Technology 29

30 Semantik von Imperativen Sprachen? void change(int x,y) { } int z = x; x = y; y = z; Was passiert hier bei Auswertung der einzelnen Statements? Institute for Software Technology 30

31 Semantikfunktion Interpretation eines Statements s [[s]]: env env Environment: env: VAR D env(x) D wobei x eine Variable ist und D der Wertebereich (Domain) von x ist. Institute for Software Technology 31

32 Beispiel [[x = e]] (Θ) = Θ mit Θ (y) = Θ(y) für alle y x Θ (x) = [[e]] (Θ) [[x]] (Θ) = Θ(x) für x VAR {Θ(x)=1, Θ(y)=2} z = x; {Θ(x)=1, Θ(y)=2, Θ(z)=1} x = y; {Θ(x)=2, Θ(y)=2, Θ(z)=1} y = z; {Θ(x)=2, Θ(y)=1, Θ(z)=1} Institute for Software Technology 32

33 Entscheidungsprobleme Gegeben: Frage Antwort: Ja oder Nein Halteproblem: Gibt es ein Programm, daß für beliebige Programme entscheiden kann, ob diese für alle Eingaben halten? Äquivalenzproblem: Gibt es ein Programm, daß die Äquivalenz zweier beliebiger Programme feststellen kann? Institute for Software Technology 33

34 Programmiersprachen / Wieso? Problemstellung Verteilung Teilprobleme Teillösungen Institute for Software Technology 34

35 Erstellung großer Software Problemstellung für Einzelne zu groß Teamarbeit Aufteilung in Teile, die getrennt gelöst werden können Zusammenführen der Einzellösungen zur Lösung des Gesamtproblems Unterstützung in der Programmiersprache? Institute for Software Technology 35

36 Funktionale Sichtweise Beispiel: Interpreter für eine Sprache Programm = Sequenz von Befehlen Maschine hat Speicher und führt ein Programm aus. Befehle verändern den Inhalt des Speichers. Institute for Software Technology 36

37 Beispiel - Blocksichtweise Programm LD 1 2 LD 2 3 ADD 1 2 LD x y.. Lädt y in Speicher x ADD x y.. Addiert den Wert von x und y. Das Resultat steht in x. Speicher 1: 0 Maschine 2: 0 3: 0 Adresse 4: 0 Wert Institute for Software Technology 37

38 Beispiel Funktionale Sicht ExecuteProg IN: Programm, Speicher OUT: Speicher ExecuteStmnt IN: Statement, Speicher OUT: Speicher GetMem IN: Adresse,Speicher OUT: Value SetMem IN: Value,Adresse,Speicher OUT: Speicher Institute for Software Technology 38

39 Beispiel SML Programm fun executeprog (p,m) = if empty(p) then m else executeprog(rest(p), executestmnt(first(p),m)); fun executestmnt (s,m) = if loadstmnt(s) then executeload(s,m) else if addstmnt(s) then executeadd(s,m) else errorhandling();... Institute for Software Technology 39

40 Beispiel SML (cont.) Statement... 3-tupel (Name,Arg1,Arg2) Memory.. Liste von 2 Tupel (Addr,Val) fun loadstmnt (s,a,v) = (s== LD ); fun executeload ((s,a,v),m) = setmem (v,a,m); fun setmem (v,a,m) = if empty(m) then m else if #1(first(m))=a then (a,v)::rest(m) else first(m)::(setmem(v,a,rest(m))); Institute for Software Technology 40

41 Beispiel - Zusammenfassung Funktion kann in Teilfunktionen aufgeteilt werden Getrennte Korrektheitsüberprüfung Verständliche Programme Problemlösung wird vereinfacht Einfachere Fehlersuche Re-Use Institute for Software Technology 41

SWP Funktionale Programme

SWP Funktionale Programme SWP Funktionale Programme Berhard Aichernig und Alexander Felfernig Institut für Softwaretechnologie {bernhard.aichernig,alexander.felfernig}@ist.tugraz.at Institute for Software Technology Inhalt Einfache

Mehr

Berechenbarkeit und Komplexität Vorlesung 11

Berechenbarkeit und Komplexität Vorlesung 11 Berechenbarkeit und Komplexität Vorlesung 11 Prof. Dr. Wolfgang Thomas Lehrstuhl Informatik 7 RWTH Aachen 7. Dezember 2014 Wolfgang Thomas, Informatik 7 () Vorlesung Berechenbarkeit und Komplexität 7.

Mehr

Einfache Ausdrücke Datentypen Rekursive funktionale Sprache Franz Wotawa Institut für Softwaretechnologie wotawa@ist.tugraz.at

Einfache Ausdrücke Datentypen Rekursive funktionale Sprache Franz Wotawa Institut für Softwaretechnologie wotawa@ist.tugraz.at Inhalt SWP Funktionale Programme (2. Teil) Einfache Ausdrücke Datentypen Rekursive funktionale Sprache Franz Wotawa Institut für Softwaretechnologie wotawa@ist.tugraz.at Interpreter für funktionale Sprache

Mehr

Interpreter - Gliederung

Interpreter - Gliederung Institut für Informatik Ludwig-Maximilian Universität Interpreter - Gliederung Programmiersprache Syntax Konkrete Syntax Abstrakter Syntax Baum (Abstrakte Syntax) Parser Syntaktische Struktur einer Sprache

Mehr

Übungs- und Praktikumsaufgaben zur Systemprogrammierung Dipl.-Ing. H. Büchter (Lehrbeauftragter) FH-Dortmund WS 2001/2002 / SS 2002

Übungs- und Praktikumsaufgaben zur Systemprogrammierung Dipl.-Ing. H. Büchter (Lehrbeauftragter) FH-Dortmund WS 2001/2002 / SS 2002 1. Stellen Sie die schrittweise Verbesserung eines Compilers durch das Bootstrap- Verfahren mit Hilfe von T-Diagrammen dar. Gegeben ist ein auf der Maschine M lauffähiger Compiler C 1, der in S geschrieben

Mehr

CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik)

CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik) CS1005 Objektorientierte Programmierung Bachelor of Science (Informatik) Einfache Programme: Programm-Argument, Bedingte Anweisungen, Switch, Enum Boolesche Werte und Ausdrücke Seite 1 Beispiel: Umrechnen

Mehr

Vorlesung Programmierung

Vorlesung Programmierung - 1 - Vorlesung Programmierung Inhalt der Vorlesung Was ist ein Programm? Was sind grundlegende Programmierkonzepte? Wie konstruiert (entwickelt) man ein Programm? Welche Programmier-Paradigmen gibt es?

Mehr

Semantik von Programmiersprachen SS 2017

Semantik von Programmiersprachen SS 2017 Lehrstuhl für Programmierparadigmen Denis Lohner Sebastian Ullrich denis.lohner@kit.edu sebastian.ullrich@kit.edu Semantik von Programmiersprachen SS 2017 http://pp.ipd.kit.edu/lehre/ss2017/semantik Lösungen

Mehr

Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 1. Teil

Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 1. Teil MÜNSTER Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++ 1. Teil 11. April 2012 Organisatorisches MÜNSTER Übung zur Vorlesung Wissenschaftliches

Mehr

Algorithmen und Berechnungskomplexität I

Algorithmen und Berechnungskomplexität I Algorithmen und Berechnungskomplexität I Prof. Dr. Institut für Informatik Wintersemester 2013/14 Organisatorisches Vorlesung Dienstag und Donnerstag, 12:30 14:00 Uhr (HS 1) Übungen 16 Übungsgruppen Anmeldung

Mehr

Die Programmiersprache C Eine Einführung

Die Programmiersprache C Eine Einführung Die Programmiersprache C Eine Einführung Christian Gentsch Fakutltät IV Technische Universität Berlin Projektlabor 2. Mai 2014 Inhaltsverzeichnis 1 Einführung Entstehungsgeschichte Verwendung 2 Objektorientiert

Mehr

Programmierung WS12/13 Lösung - Übung 1 M. Brockschmidt, F. Emmes, C. Otto, T. Ströder

Programmierung WS12/13 Lösung - Übung 1 M. Brockschmidt, F. Emmes, C. Otto, T. Ströder Prof. aa Dr. J. Giesl Programmierung WS12/13 M. Brockschmidt, F. Emmes, C. Otto, T. Ströder Tutoraufgabe 1 (Syntax und Semantik): 1. Was ist Syntax? Was ist Semantik? Erläutern Sie den Unterschied. 2.

Mehr

Definition von LR(k)-Grammatiken

Definition von LR(k)-Grammatiken Definition von LR(k)-Grammatiken Ziel: Ein Lookahead von k soll ausreichen um entscheiden zu können, welche Regel angewendet werden muss. Definition: FIRST k (w 1 w n ):= w 1 w k, falls n k, w 1 w n, sonst.

Mehr

Funktionale Programmierung

Funktionale Programmierung Schleifen 1 Funktionale Programmierung Jörg Kreiker Uni Kassel und SMA Solar Technology AG Wintersemester 2011/2012 3 Teil I Jedem Anfang wohnt ein Zauber inne 4 Über mich Diplom in Informatik in Saarbrücken

Mehr

Mathematik: Ausbildung im ersten Semester

Mathematik: Ausbildung im ersten Semester Mathematik: Ausbildung im ersten Semester Mathematik 0 (Empfohlene Lehrveranstaltung) Mathematik I Vorlesung (Pflichtlehrveranstaltung) Mathematik I Übungen (Pflichtlehrveranstaltung) Mathematik I Tutorium

Mehr

Klassen in Java. Grundlagen der Programmierung. Stephan Kleuker 68

Klassen in Java. Grundlagen der Programmierung. Stephan Kleuker 68 Klassen in Java Stephan Kleuker 68 Klassen in Java (Syntax) (1/3) class Datum { int tag; int monat; int jahr; } Java hat Schlüsselworte (z. B. class), diese dürfen z. B. nicht als Variablennamen genutzt

Mehr

Funktionale Programmierung ALP I. λ Kalkül WS 2012/2013. Prof. Dr. Margarita Esponda. Prof. Dr. Margarita Esponda

Funktionale Programmierung ALP I. λ Kalkül WS 2012/2013. Prof. Dr. Margarita Esponda. Prof. Dr. Margarita Esponda ALP I λ Kalkül WS 2012/2013 Berechenbarkeit - inspiriert durch Hilbert's Frage - im Jahr 1900, Paris - Internationaler Mathematikerkongress Gibt es ein System von Axiomen, aus denen alle Gesetze der Mathematik

Mehr

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK 0. ORGANISATORISCHES UND ÜBERBLICK

EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK 0. ORGANISATORISCHES UND ÜBERBLICK EINFÜHRUNG IN DIE THEORETISCHE INFORMATIK Prof. Dr. Klaus Ambos-Spies Sommersemester 2014 0. ORGANISATORISCHES UND ÜBERBLICK Theoretische Informatik (SoSe 2014) 0. Organisatorisches und Überblick 1 / 16

Mehr

VU Software Paradigmen / SS 2015

VU Software Paradigmen / SS 2015 VU Software Paradigmen 716.060 / SS 2015 Stephan Frühwirt Institute for Software Technology i S T Institute for Software Technology Stephan Frühwirt 1 Inhalt Beweise in EXP 1. Beweise in EXP 2. 3. Abgabe

Mehr

Grundlagen der Programmiersprachen

Grundlagen der Programmiersprachen GPS-0-1 Grundlagen der Programmiersprachen Prof. Dr. Uwe Kastens Sommersemester 2016 Vorlesung Grundlagen der Programmiersprachen SS 2016 / Folie 001 Anfang Begrüßung Ziele GPS-0-2 Die Vorlesung soll Studierende

Mehr

Kapitel 2: Python: Ausdrücke und Typen. Grundlagen der Programmierung 1. Holger Karl. Wintersemester 2016/2017. Inhaltsverzeichnis 1

Kapitel 2: Python: Ausdrücke und Typen. Grundlagen der Programmierung 1. Holger Karl. Wintersemester 2016/2017. Inhaltsverzeichnis 1 Kapitel 2: Python: Ausdrücke und Typen Grundlagen der Programmierung 1 Holger Karl Wintersemester 2016/2017 Inhaltsverzeichnis Inhaltsverzeichnis 1 Abbildungsverzeichnis 2 Liste von Definitionen u.ä. 2

Mehr

Zusammenfassung. Stephan Gspandl Institut für Softwaretechnologie Institute for Software Technology

Zusammenfassung. Stephan Gspandl Institut für Softwaretechnologie Institute for Software Technology Zusammenfassung Stephan Gspandl Institut für Softwaretechnologie sgspandl@ist.tugraz.at SYNTAX 2 Syntax Struktur einer Sprache Werkzeug zur Beschreibung aller möglichen Sätze: Grammatik Tupel (V N,V T,S,Φ)

Mehr

SWP Logische Programme

SWP Logische Programme SWP Logische Programme Alexander Felfernig, Stephan Gspandl Institut für Softwaretechnologie {alexander.felfernig,sgspandl}@ist.tugraz.at Institute for Software Technology Inhalt Motivation Logische Programme

Mehr

Vorlesung Programmierung

Vorlesung Programmierung - 1 - Vorlesung Programmierung Inhalt der Vorlesung Was ist ein Programm? Was sind grundlegende Programmierkonzepte? Wie konstruiert (entwickelt) man ein Programm? Welche Programmier-Paradigmen gibt es?

Mehr

Beuth Hochschule Einführende Gentle-Programme WS12/13, S. 1

Beuth Hochschule Einführende Gentle-Programme WS12/13, S. 1 Beuth Hochschule Einführende Gentle-Programme WS12/13, S. 1 Einführende Gentle-Programme Dieses Papier soll die Syntax und Semantik (die Schreibweise und Bedeutung) von einfachen Gentle Programmen anhand

Mehr

Funktionen nur wenn dann

Funktionen nur wenn dann Funktionen nur wenn dann Funktionen können auch nur in bestimmten Fällen angewendet werden. Code wird nur in einem bestimmten Fall ausgeführt Code Ja Code Block wahr if wahr? Nein else Code Block Alternative

Mehr

Optimierungen in einer formalen Semantik Konstantenfaltung und Konstantenpropagation

Optimierungen in einer formalen Semantik Konstantenfaltung und Konstantenpropagation Optimierungen in einer formalen Semantik Konstantenfaltung und Konstantenpropagation http://pp.info.uni-karlsruhe.de/lehre/ss2011/tba/ LEHRSTUHL PROGRAMMIERPARADIGMEN 0 KIT SS Universität 2011 desdenis

Mehr

Java I Vorlesung Imperatives Programmieren

Java I Vorlesung Imperatives Programmieren Java I Vorlesung 2 Imperatives Programmieren 3.5.2004 Variablen -- Datentypen -- Werte Operatoren und Ausdrücke Kontrollstrukturen: if Imperatives Programmieren Im Kern ist Java eine imperative Programmiersprache.

Mehr

Sprachen und Programmiersprachen

Sprachen und Programmiersprachen Sprachen und Programmiersprachen Natürliche Sprachen versus Programmiersprachen / Spezifikationssprachen Syntax legt die grammatikalische Korrektheit fest. Semantik legt die Bedeutung von syntaktisch korrekten

Mehr

GTI. Hannes Diener. 18. Juni. ENC B-0123,

GTI. Hannes Diener. 18. Juni. ENC B-0123, GTI Hannes Diener ENC B-0123, diener@math.uni-siegen.de 18. Juni 1 / 32 Als Literatur zu diesem Thema empfiehlt sich das Buch Theoretische Informatik kurzgefasst von Uwe Schöning (mittlerweile in der 5.

Mehr

Multiparadigmen- Programmiersprachen

Multiparadigmen- Programmiersprachen Multiparadigmen- Programmiersprachen Martin Grabmüller magr@cs.tu-berlin.de Fachgebiet Übersetzerbau und Programmiersprachen Fakultät IV Elektrotechnik und Informatik Technische Universität Berlin Multiparadigmen-Programmiersprachen

Mehr

Programmieren in Java

Programmieren in Java Programmieren in Java Vorlesung 10: Ein Interpreter für While Prof. Dr. Peter Thiemann Albert-Ludwigs-Universität Freiburg, Germany SS 2015 Peter Thiemann (Univ. Freiburg) Programmieren in Java JAVA 1

Mehr

Kapitel 5: Syntaxdiagramme und Grammatikregeln

Kapitel 5: Syntaxdiagramme und Grammatikregeln 5. Syntaxdiagramme und Grammatikregeln 5-1 Objektorientierte Programmierung (Winter 2010/2011) Kapitel 5: Syntaxdiagramme und Grammatikregeln Syntaxdiagramme Grammatikregeln (kontextfrei) Beispiele: Lexikalische

Mehr

Methoden zur Interpretation LISPähnlicher. Programmiersprachen. Seminarvortrag / 53 FH AACHEN FACHBEREICH 9 TOBIAS STUMM MATR.-NR.

Methoden zur Interpretation LISPähnlicher. Programmiersprachen. Seminarvortrag / 53 FH AACHEN FACHBEREICH 9 TOBIAS STUMM MATR.-NR. Methoden zur Interpretation LISPähnlicher Programmiersprachen Seminarvortrag 20.01.2017 FACHBEREICH 9 TOBIAS STUMM MATR.-NR. 4012917 1 Inhalt Motivation Lisp > Definition > Scheme Interpreter > Definition

Mehr

Vorsemesterkurs Informatik

Vorsemesterkurs Informatik Vorsemesterkurs Informatik Vorsemesterkurs Informatik Mario Holldack WS2015/16 30. September 2015 Vorsemesterkurs Informatik 1 Einleitung 2 Aussagenlogik 3 Mengen Vorsemesterkurs Informatik > Einleitung

Mehr

Kapitel 3: Variablen

Kapitel 3: Variablen Kapitel 3: Variablen Thema: Programmieren Seite: 1 Kapitel 3: Variablen Im letzten Kapitel haben wir gelernt, bestimmte Ereignisse zu wiederholen solange eine Bedingung erfüllt ist. Nun möchten wir aber

Mehr

Vorlesung Programmierung

Vorlesung Programmierung - 1 - Vorlesung Programmierung n Inhalt der Vorlesung l Was ist ein Programm? l Was sind grundlegende Programmierkonzepte? l Wie konstruiert (entwickelt) man ein Programm? l Welche Programmier-Paradigmen

Mehr

Softwareparadigmen EXP-Compiler Dokumentation v1.1 ( )

Softwareparadigmen EXP-Compiler Dokumentation v1.1 ( ) Softwareparadigmen EXP-Compiler Dokumentation v1.1 (8.5.2016) Stephan Frühwirt Inhaltsverzeichnis 1 Aufbau, Tools und Ausführung 2 1.1 Ausführung....................................... 2 2 Sprachdefinition

Mehr

Ausarbeitung des Interpreter Referats

Ausarbeitung des Interpreter Referats Ausarbeitung des Interpreter Referats Gliederung 1. Programmiersprache 1.2. Syntax 1.2.1. Konkrete Syntax 1.2.2. Abstrakter Syntax Baum (Abstrakte Syntax) 2. Parser 2.1. Syntaktische Struktur einer Sprache

Mehr

Modellierung und Programmierung 1

Modellierung und Programmierung 1 Modellierung und Programmierung 1 Prof. Dr. Sonja Prohaska Computational EvoDevo Group Institut für Informatik Universität Leipzig 4. November 2015 Administratives Zur Abgabe von Übungsaufgaben Nein, wir

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE3-Syntaxdiagramme (Stand 05.11.2010) Aufgabe 1: Entwickeln Sie Regeln zur Übersetzung von EBNF in Syntaxdiagramme. Aufgabe 2: Eine Zahl ist entweder

Mehr

Lexikalische Programmanalyse der Scanner

Lexikalische Programmanalyse der Scanner Der Scanner führt die lexikalische Analyse des Programms durch Er sammelt (scanned) Zeichen für Zeichen und baut logisch zusammengehörige Zeichenketten (Tokens) aus diesen Zeichen Zur formalen Beschreibung

Mehr

Implementierung eines LR-Parser-Generators mit syntaktischen Prädikaten

Implementierung eines LR-Parser-Generators mit syntaktischen Prädikaten Implementierung eines LR-Parser-Generators mit syntaktischen Prädikaten Aufgabenbeschreibung 29. Juli 2011 1 Einleitung und Motivation Der Parser-Generator Antlr [Par07] bietet die Möglichkeit, die Auswahl

Mehr

Objektorientierte Programmierung. Kapitel 3: Syntaxdiagramme

Objektorientierte Programmierung. Kapitel 3: Syntaxdiagramme Stefan Brass: OOP (Java), 3. 1/31 Objektorientierte Programmierung Kapitel 3: Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester 2014/15 http://www.informatik.uni-halle.de/ brass/oop14/

Mehr

Welche Informatik-Kenntnisse bringen Sie mit?

Welche Informatik-Kenntnisse bringen Sie mit? Welche Informatik-Kenntnisse bringen Sie mit? So gehen Sie vor! Lösen Sie die Aufgaben der Reihe nach von 1 bis 20, ohne das Lösungsblatt zur Hilfe zu nehmen. Der Schwierigkeitsgrad der Aufgaben nimmt

Mehr

Java 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8

Java 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8 Java 8 Elmar Fuchs Grundlagen Programmierung 1. Ausgabe, Oktober 2014 JAV8 5 Java 8 - Grundlagen Programmierung 5 Kontrollstrukturen In diesem Kapitel erfahren Sie wie Sie die Ausführung von von Bedingungen

Mehr

Allgemeine Informatik 1

Allgemeine Informatik 1 Allgemeine Informatik 1 Veranstalter: Prof. Dr. Johannes Fürnkranz: Raum S202/E304, Sprechstunde: Mittwochs 11.00 12.00, Email: fuernkranz@informatik.tu-darmstadt.de Sekretariat: Mo-Fr 9.00-12.00 Übungsleitung,

Mehr

Einführung in die Informatik. Programming Languages

Einführung in die Informatik. Programming Languages Einführung in die Informatik Programming Languages Beschreibung von Programmiersprachen Wolfram Burgard Cyrill Stachniss 1/15 Motivation und Einleitung Wir haben in den vorangehenden Kapiteln meistens

Mehr

Adressen. Praktikum Funktionale Programmierung Organisation und Überblick. Termine WWW

Adressen. Praktikum Funktionale Programmierung Organisation und Überblick. Termine WWW Adressen Adressen, Termine Studienleistung Praktikum Funktionale Programmierung Organisation und Überblick Dr. David Sabel Büro und Email Raum 216, Robert-Mayer-Str. 11-15 sabel@ki.informatik.uni-frankfurt.de

Mehr

Compilerbau (1 KU) SS 2011

Compilerbau (1 KU) SS 2011 Compilerbau (1 KU) 716.077 SS 2011 Univ.-Prof. Dr. Franz Wotawa, Birgit Hofer Institut für Softwaretechnologie 1 Übungsmodus Aufgabenblätter Inhalt dieser LV-Einheit it Programmieraufgabe Vorstellung Programmieraufgabe

Mehr

Dank. Theoretische Informatik II. Teil II. Registermaschinen. Vorlesung

Dank. Theoretische Informatik II. Teil II. Registermaschinen. Vorlesung Dank Vorlesung Theoretische Informatik II Bernhard Beckert Institut für Informatik Diese Vorlesungsmaterialien basieren zum Teil auf den Folien zu den Vorlesungen von Katrin Erk (gehalten an der Universität

Mehr

Vorlesung Programmieren

Vorlesung Programmieren Vorlesung Programmieren Programmierparadigmen Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Programmiersprachen-Paradigmen Eine Programmiersprache

Mehr

2 Syntax versus Semantik

2 Syntax versus Semantik 2 Syntax versus Semantik There are 10 types of people: those that understand binary, and those that don t. Bisher haben wir lediglich die Syntax von Sprachen sowie verschiedene Methoden zu ihrer Spezifikation

Mehr

3. Grundanweisungen in Java

3. Grundanweisungen in Java 3. Grundanweisungen in Java Die Grundanweisungen entsprechen den Prinzipien der strukturierten Programmierung 1. Zuweisung 2. Verzweigungen 3. Wiederholungen 4. Anweisungsfolge (Sequenz) Die Anweisungen

Mehr

Mathematik: Ausbildung im zweiten Semester

Mathematik: Ausbildung im zweiten Semester Mathematik: Ausbildung im zweiten Semester Mathematik II Vorlesung (Pflichtlehrveranstaltung) Mathematik II Übungen (Pflichtlehrveranstaltung) Mathematik II Tutorium (Empfohlene Lehrveranstaltung) Mathematik

Mehr

Intensivübung zu Algorithmen und Datenstrukturen

Intensivübung zu Algorithmen und Datenstrukturen Intensivübung zu Algorithmen und Datenstrukturen Silvia Schreier Informatik 2 Programmiersysteme Martensstraße 3 91058 Erlangen Übersicht Programmierung Fallunterscheidung Flussdiagramm Bedingungen Boolesche

Mehr

Einführung in die Informatik. Programming Languages

Einführung in die Informatik. Programming Languages Einführung in die Informatik Programming Languages Beschreibung von Programmiersprachen Wolfram Burgard Motivation und Einleitung Wir haben in den vorangehenden Kapiteln meistens vollständige Java- Programme

Mehr

Funktionen nur wenn dann

Funktionen nur wenn dann Funktionen nur wenn dann Funktionen können auch nur in bestimmten Fällen angewendet werden. Code wird nur in einem bestimmten Fall ausgeführt Code Ja Code Block wahr if wahr? Nein else Code Block Alternative

Mehr

Vorkurs Informatik WiSe 17/18

Vorkurs Informatik WiSe 17/18 Java Einführung Dr. Werner Struckmann / Stephan Mielke, Nicole Naczk, 04.10.2017 Technische Universität Braunschweig, IPS Überblick Organisatorisches Arbeitsablauf Hello World 04.10.2017 Dr. Werner Struckmann

Mehr

SS2010 BAI2-LBP Gruppe 1 Team 07 Entwurf zu Aufgabe 4. R. C. Ladiges, D. Fast 10. Juni 2010

SS2010 BAI2-LBP Gruppe 1 Team 07 Entwurf zu Aufgabe 4. R. C. Ladiges, D. Fast 10. Juni 2010 SS2010 BAI2-LBP Gruppe 1 Team 07 Entwurf zu Aufgabe 4 R. C. Ladiges, D. Fast 10. Juni 2010 Inhaltsverzeichnis 4 Aufgabe 4 3 4.1 Sich mit dem Programmpaket vertraut machen.................... 3 4.1.1 Aufgabenstellung.................................

Mehr

1 Funktionale vs. Imperative Programmierung

1 Funktionale vs. Imperative Programmierung 1 Funktionale vs. Imperative Programmierung 1.1 Einführung Programme einer funktionalen Programmiersprache (functional programming language, FPL) bestehen ausschließlich aus Funktionsdefinitionen und Funktionsaufrufen.

Mehr

Programmier-Projekt (cs108)

Programmier-Projekt (cs108) Frühjahrsemester 2013 Programmier-Projekt (cs108) Prof. Dr. Heiko Schuldt Termine Vorlesung: Beginn: Donnerstag 28.02.2013 Termine: Donnerstag 10 12 Uhr Kollegienhaus, Hörsaal 114 Freitag 10 12 Uhr Kollegienhaus,

Mehr

TU Kaiserslautern. Übungsblatt 2: Software-Entwicklung 1 (WS 2017/18) Hinweise zu Einreichaufgaben. Hinweise zu den Übungen

TU Kaiserslautern. Übungsblatt 2: Software-Entwicklung 1 (WS 2017/18) Hinweise zu Einreichaufgaben. Hinweise zu den Übungen Dr. Annette Bieniusa Mathias Weber, M. Sc. Peter Zeller, M. Sc. TU Kaiserslautern Fachbereich Informatik AG Softwaretechnik Übungsblatt 2: Software-Entwicklung 1 (WS 2017/18) Hinweise zu Einreichaufgaben

Mehr

SWP Prüfungsvorbereitung

SWP Prüfungsvorbereitung 20. Juni 2011 1 Grammatiken 2 LL(1) 3 EXP 4 Datentypen 5 LP Grammatiken Angabe Erstellen Sie First- und Follow-Mengen aller Non-Terminale der folgenden Grammatik. S a S S B y B A C A A b b A x A ɛ C c

Mehr

Funktionale Programmiersprachen

Funktionale Programmiersprachen Funktionale Programmiersprachen An den Beispielen Haskell und Erlang Übersicht Programmiersprachen λ-kalkül Syntax, Definitionen Besonderheiten von funktionalen Programmiersprache, bzw. Haskell Objektorientierte

Mehr

Mächtigkeit von WHILE-Programmen

Mächtigkeit von WHILE-Programmen Mächtigkeit von WHILE-Programmen Prof. Dr. Berthold Vöcking Lehrstuhl Informatik 1 Algorithmen und Komplexität RWTH Aachen 1 / 23 Turingmaschine (TM) M = (Q, Σ, Γ, B, q 0, q, δ) Unendliches Band... 0 c

Mehr

3. Klausur Einführung in die Theoretische Informatik Seite 1 von Welches der folgenden klassischen Probleme der Informatik ist entscheidbar?

3. Klausur Einführung in die Theoretische Informatik Seite 1 von Welches der folgenden klassischen Probleme der Informatik ist entscheidbar? 3. Klausur Einführung in die Theoretische Informatik Seite 1 von 14 1. Welches der folgenden klassischen Probleme der Informatik ist entscheidbar? A. Gegeben eine kontextfreie Grammatik G. Gibt es ein

Mehr

Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen

Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen 16OH21005 gefördert. Die Verantwortung für den Inhalt dieser

Mehr

Themen der Übung. Methoden und Wrapperklassen. Vorteile von Methoden. Methoden. Grundlagen

Themen der Übung. Methoden und Wrapperklassen. Vorteile von Methoden. Methoden. Grundlagen Themen der Übung 1 Organisatorisches Methoden und Wrapperklassen 2 Methoden 3 Wrapper-Klassen CoMa-Übung IV TU Berlin 07.11.2012 Organisatorisches: Im Pool nur auf die Abgabeliste setzen, wenn ihr wirklich

Mehr

Theorembeweiserpraktikum SS 2016

Theorembeweiserpraktikum SS 2016 Institut für Programmstrukturen und Datenorganisation Lehrstuhl Programmierparadigmen Am Fasanengarten 5 76131 Karlsruhe http://pp.ipd.kit.edu/ Theorembeweiserpraktikum SS 2016 http://pp.ipd.kit.edu/lehre/ss2016/tba

Mehr

JAVA-Datentypen und deren Wertebereich

JAVA-Datentypen und deren Wertebereich Folge 8 Variablen & Operatoren JAVA 8.1 Variablen JAVA nutzt zum Ablegen (Zwischenspeichern) von Daten Variablen. (Dies funktioniert wie beim Taschenrechner. Dort können Sie mit der Taste eine Zahl zwischenspeichern).

Mehr

Die Formeln von A sind Ausdrücke, die aus ganzen Zahlen, Variablen, Addition und Multiplikation gebildet werden. Hier ist ein Beispiel:

Die Formeln von A sind Ausdrücke, die aus ganzen Zahlen, Variablen, Addition und Multiplikation gebildet werden. Hier ist ein Beispiel: Kapitel 3 Syntax und Semantik In diesem Kapitel führen wir grundlegende Konzepte für logische Sprachen ein. Wir tun dies am Beispiel einer Sprache A, die arithmetische Ausdrücke als Formeln hat (zum Beispiel

Mehr

C- Kurs 04 Anweisungen

C- Kurs 04 Anweisungen C- Kurs 04 Anweisungen Dipl.- Inf. Jörn Hoffmann jhoffmann@informa@k.uni- leipzig.de Universität Leipzig Ins@tut für Informa@k Technische Informa@k Ausdrücke Institut für Informatik Anweisungen C-Programm

Mehr

Grundlagen der theoretischen Informatik

Grundlagen der theoretischen Informatik Grundlagen der theoretischen Informatik Kurt Sieber Fakultät IV, Department ETI Universität Siegen SS 2013 Vorlesung vom 09.04.2013 Inhalt der Vorlesung Teil I: Automaten und formale Sprachen (Kurt Sieber)

Mehr

Inhalt Kapitel 5: Syntax

Inhalt Kapitel 5: Syntax Inhalt Kapitel 5: Syntax 1 Syntax und Semantik 2 Formale Sprachen 3 Backus-Naur Form 4 Chomsky Grammatik 5 Reguläre Ausdrücke 6 Endliche Automaten 180 Syntax und Semantik Syntax Syntax: Festlegung des

Mehr

Programmieren in Java

Programmieren in Java Programmieren in Java Vorlesung 07: Parsen Prof. Dr. Peter Thiemann Albert-Ludwigs-Universität Freiburg, Germany SS 2015 Peter Thiemann (Univ. Freiburg) Programmieren in Java JAVA 1 / 32 Inhalt Vorlesungsüberblick

Mehr

3. Methodik der Programmerstellung

3. Methodik der Programmerstellung 3. Methodik der Programmerstellung 3.1 Vorgehen 3.2 Programmerstellung 3.2.1 Konventionen 3.2.2 Schlüsselwörter und Bezeichner 3.2.3 Fehlertypen 3.2.4 Programmierstil 3.3 Formaler Aufbau eines Pascal-Programms

Mehr

Einführung in die Informatik

Einführung in die Informatik Einführung in die Informatik Einleitung Organisatorisches, Motivation, Herangehensweise Wolfram Burgard 1.1 Vorlesung Zeit und Ort: Mittwochs 14.00 16.00 Uhr Gebäude 101 HS 00-026 Informationen zur Vorlesung,

Mehr

Ergebnisse der Untersuchung zur Eignung einer Programmiersprache für die schnelle Softwareentwicklung kann der Informatikunterricht davon profitieren?

Ergebnisse der Untersuchung zur Eignung einer Programmiersprache für die schnelle Softwareentwicklung kann der Informatikunterricht davon profitieren? Ergebnisse der Untersuchung zur Eignung einer Programmiersprache für die schnelle Softwareentwicklung kann der Informatikunterricht davon profitieren? Zur Diplomarbeit: Eignet sich die Skriptsprache Python

Mehr

Schnelle Multiplikation

Schnelle Multiplikation Informationsblatt für die Lehrkraft Schnelle Multiplikation $&*&*& 999 3 x 3 =? 10001110 π/3 7 X 6 14 666 x 987 Informationsblatt für die Lehrkraft Thema: Schultyp: Vorkenntnisse: Bearbeitungsdauer: Schnelle

Mehr

Konzepte der Programmiersprachen

Konzepte der Programmiersprachen Konzepte der Programmiersprachen Sommersemester 2010 4. Übungsblatt Besprechung am 9. Juli 2010 http://www.iste.uni-stuttgart.de/ps/lehre/ss2010/v_konzepte/ Aufgabe 4.1: Klassen in C ++ Das folgende C

Mehr

Javakurs für Anfänger

Javakurs für Anfänger Javakurs für Anfänger Einheit 04: Einführung in Kontrollstrukturen Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Einführung in Kontrollstrukturen 3 Grundstrukturen von

Mehr

2. Imperative Programmierung und Berechenbarkeit - Registermaschinen -

2. Imperative Programmierung und Berechenbarkeit - Registermaschinen - 2. Imperative Programmierung und Berechenbarkeit - Registermaschinen - 2.1 Definition 2.2 Loop-Programme 2.3 While Programme 2.4 While Programme und rekursive Funktionen Im Wesentlichen: Tafel! Maschinenmodell

Mehr

Grundlagen der Informatik I (Studiengang Medieninformatik)

Grundlagen der Informatik I (Studiengang Medieninformatik) Grundlagen der Informatik I (Studiengang Medieninformatik) Thema: 3. Datentypen, Datenstrukturen und imperative Programme Prof. Dr. S. Kühn Fachbereich Informatik/Mathematik Email: skuehn@informatik.htw-dresden.de

Mehr

Kapitel 1: Informationsverarbeitung durch Programme

Kapitel 1: Informationsverarbeitung durch Programme LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2009 Kapitel 1: Informationsverarbeitung

Mehr

Programmierung 1 (Wintersemester 2015/16) Lösungsblatt: Aufgaben für die Übungsgruppen: 12 (Kapitel 13)

Programmierung 1 (Wintersemester 2015/16) Lösungsblatt: Aufgaben für die Übungsgruppen: 12 (Kapitel 13) Fachrichtung 6.2 Informatik Universität des Saarlandes Tutorenteam der Vorlesung Programmierung 1 Programmierung 1 (Wintersemester 2015/16) Lösungsblatt: Aufgaben für die Übungsgruppen: 12 (Kapitel 13)

Mehr

Haskell, Typen, und Typberechnung. Grundlagen der Programmierung 3 A. Einige andere Programmiersprachen. Typisierung in Haskell

Haskell, Typen, und Typberechnung. Grundlagen der Programmierung 3 A. Einige andere Programmiersprachen. Typisierung in Haskell Haskell, Typen, und Typberechnung Grundlagen der Programmierung 3 A Typen, Typberechnung und Typcheck Prof. Dr. Manfred Schmidt-Schauß Ziele: Haskells Typisierung Typisierungs-Regeln Typ-Berechnung Milners

Mehr

7. Syntax: Grammatiken, EBNF

7. Syntax: Grammatiken, EBNF 7. Syntax: Grammatiken, EBNF Teil 1 Sehr schönes Beispiel für Notwendigkeit der Theoretischen Informatik für Belange der Praktischen Informatik Vertiefung in: Einführung in die Theoretische Informatik

Mehr

Abschnitt 4: Daten und Algorithmen

Abschnitt 4: Daten und Algorithmen Abschnitt 4: Daten und Algorithmen 4. Daten und Algorithmen 4.1 4.2 Syntaxdefinitionen 4.3 Eigenschaften von Algorithmen 4.4 Paradigmen der Algorithmenentwicklung Peer Kröger (LMU München) Einführung in

Mehr

Einführung in die Programmierung I. 2.0 Einfache Java Programme. Thomas R. Gross. Department Informatik ETH Zürich

Einführung in die Programmierung I. 2.0 Einfache Java Programme. Thomas R. Gross. Department Informatik ETH Zürich 252-0027 Einführung in die Programmierung I 2.0 Einfache Java Programme Thomas R. Gross Department Informatik ETH Zürich Uebersicht 2.0 Einfache Java Programme Struktur Namen Output 2 Graphische Darstellung

Mehr

VU Software Paradigmen / SS 2014

VU Software Paradigmen / SS 2014 VU Software Paradigmen 716.060 / SS 2014 Thorsten Ruprechter ruprechter@tugraz.at Institute for Software Technology 1 Organisatorisches Ausgabe: 25.03. (heute) Fragestunde: 22.04. Abgabe: 29.04 (ausgedruckt)

Mehr

Einführung in die Informatik

Einführung in die Informatik Einführung in die Informatik Einleitung Organisatorisches, Motivation, Herangehensweise Wolfram Burgard 1.1 Vorlesung Zeit und Ort: Mittwochs 16.00 18.00 Uhr Gebäude 101 HS 00-036 Informationen zur Vorlesung,

Mehr

Grundlagen der Modellierung und Programmierung, Übung

Grundlagen der Modellierung und Programmierung, Übung Grundlagen der Modellierung und Programmierung Übung Prof. Wolfram Amme LS Softwaretechnik Prof. Klaus Küspert LS Datenbanksysteme Prof. Birgitta König-Ries LS Verteilte Systeme Prof. Dr. Wilhelm Rossak

Mehr

Inhalt. SWP Logische Programme. Motivation. Formalisierung. Wissensbasis. Bsp (Bibel)Verwandtschaften. Motivation Sprache LP

Inhalt. SWP Logische Programme. Motivation. Formalisierung. Wissensbasis. Bsp (Bibel)Verwandtschaften. Motivation Sprache LP Inhalt SWP Logische Programme Franz Wotawa Institut für Softwaretechnologie wotawa@ist.tugraz.at Motivation Sprache LP Resolution Unifikation Datenbanken und logische Programme Semantik 2 Motivation Bsp

Mehr

Entwicklungsumgebung für die Laborübung

Entwicklungsumgebung für die Laborübung Entwicklungsumgebung für die Laborübung VL Datenbanksysteme Ingo Feinerer Arbeitsbereich Datenbanken und Artificial Intelligence Institut für Informationssysteme Technische Universität Wien Gliederung

Mehr

Berichte aus der Informatik. Dieter Pawelczak. Start in die C-Programmierung

Berichte aus der Informatik. Dieter Pawelczak. Start in die C-Programmierung Berichte aus der Informatik Dieter Pawelczak Start in die C-Programmierung Shaker Verlag Aachen 2012 Inhaltsverzeichnis Inhaltsverzeichnis i 1 Einleitung 1 1.1 Umfeld und Aufbau des Buches 1 Die Programmiersprache

Mehr

Informatik IV SS 2006 Institut für Informatik, Abt. I

Informatik IV SS 2006 Institut für Informatik, Abt. I Informatik IV SS 2006 Institut für Informatik, Abt. I Christel Baier, Sascha Klüppelholz, Jörn Ossowski, Christiane Beyer, Stefan Dombrowski, Li Le, Andreas Lenerz, Dennis Mitzel, Rebecca Reiffenhäuser,

Mehr

EIDI 1 Einführung in die Informatik 1. PGdP Praktikum Grundlagen der Programmierung. Harald Räcke 2/217

EIDI 1 Einführung in die Informatik 1. PGdP Praktikum Grundlagen der Programmierung. Harald Räcke 2/217 EIDI 1 Einführung in die Informatik 1 PGdP Praktikum Grundlagen der Programmierung Harald Räcke 2/217 Wie löst man Probleme mithilfe von Computern? 0 Harald Räcke 3/217 Inhalte: EIDI 1 1. Was ist das Problem?

Mehr

Programmierpraktikum

Programmierpraktikum TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK Praktikum: Grundlagen der Programmierung Programmierpraktikum Woche 04 (17.11.2016) Stefan Berktold s.berktold@tum.de PRÄSENZAUFGABEN Heutige Übersicht

Mehr