Programmierung 1 Probeklausur zur Vorklausur
|
|
- Berndt Koenig
- vor 7 Jahren
- Abrufe
Transkript
1 Fachrichtung 6.2 Informatik Universität des Saarlandes Tutorenteam der Vorlesung Programmierung Programmierung 1 Probeklausur zur Vorklausur Matrikelnummer: Bitte öffnen Sie das Klausurheft erst dann, wenn Sie dazu aufgefordert werden. Prüfen Sie dann zuerst, ob Sie alle 12 Seiten dieser Klausur erhalten haben. Hilfsmittel sind nicht zugelassen. Am Arbeitsplatz dürfen nur Schreibgeräte, Getränke, Speisen und Ausweise mitgeführt werden. Taschen und Jacken müssen an den Wänden des Klausursaals zurückgelassen werden. Mobiltelefone sind ebenfalls dort ausgeschaltet aufzubewahren. Das Verlassen des Saals ohne Abgabe des Klausurhefts gilt als Täuschungsversuch. Wenn Sie während der Bearbeitung zur Toilette müssen, geben Sie bitte Ihr Klausurheft bei der Aufsicht ab. Zu jedem Zeitpunkt kann immer nur eine Person zur Toilette. Alle Lösungen müssen auf den bedruckten rechten Seiten des Klausurhefts notiert werden. Die leeren linken Seiten dienen als Platz für Skizzen und werden nicht korrigiert. Notizpapier ist nicht zugelassen. Sie können mit Bleistift schreiben. Vorhergehende Teilaufgaben dürfen verwendet werden, auch wenn sie nicht gelöst wurden. Für die Bearbeitung der Klausur stehen 90 Minuten zur Verfügung. Insgesamt können 90 Punkte und 10 Bonuspunkte erreicht werden. Zum Bestehen der Klausur genügen 36 Punkte. Bitte legen Sie zur Identifikation Ihren Personalausweis oder Reisepass sowie Ihren Studierendenausweis neben sich. Viel Erfolg! Punkte A1 A2 A3 A4 A5 A6 A7 Gesamt (10)
2 Matrikelnummer: Seite 2 von 12 Sie dürfen die folgenden Prozeduren verwenden: foldl : (α * β β) β α list β foldr : (α * β β) β α list β iter : int α (α α) α iterup : int int α (int * α α) α iterdn : int int α (int * α α) α first : int (int bool) int map : (α β) α list β list rev : α list α list List.length : α list int List.concat : α list list α list List.tabulate : int * (int α) α list List.filter : (α bool) α list α list List.exists : (α bool) α list bool List.all : (α bool) α list bool List.nth : (α list * int) α hd : α list α tl : α list α list null : α list bool fold : (α list α) tree α explode : string char list implode : char list string chr : int char ord : char int
3 Matrikelnummer: Seite 3 von 12 Aufgabe 1: ( ) Punkte Teilaufgabe 1.1 Geben Sie die Baumdarstellung der folgenden in Zeichendarstellung gegebenen Prozedurdeklaration an und bereinigen Sie die Prozedurdeklaration. fun f (x: int) = (let val x = x in x end) + x Teilaufgabe 1.2 Betrachten Sie die folgende Deklaration: fun f (x: int) = fn (y: int) => x + y Geben Sie den Wert an, zu dem der Aufruf f 3 auswertet.
4 Matrikelnummer: Seite 4 von 12 Teilaufgabe 1.3 Bestimmen Sie das Typschema folgender Prozedur: fun f a b c = a (b c) Teilaufgabe 1.4 Deklarieren Sie eine Prozedur, die das angegebene Typschema besitzt. Verzichten Sie dabei auf explizite Typangaben. α * β (β * α γ) γ
5 Matrikelnummer: Seite 5 von 12 Aufgabe 2: ((3 + 3) + (5 + 5)) Punkte Teilaufgabe 2.1 (a) Schreiben Sie mithilfe von iter eine Prozedur add: int int int, die eine Addition zweier natürlicher Zahlen durch Inkrementieren berechnet. (b) Schreiben Sie mithilfe von first eine Prozedur meaning, sodass meaning n die kleinste Zahl k > n liefert, die durch 42 teilbar ist.
6 Matrikelnummer: Seite 6 von 12 Teilaufgabe 2.2 In dieser Aufgabe sollen Sie Binomialkoeffizienten mithilfe des Pascal schen Dreiecks bestimmen. Das Pascal sche Dreieck besteht aus unendlich vielen Zeilen, die von 0 ab nummeriert sind. In der 0-ten Zeile steht eine einzelne Eins. In jeder weiteren Zeile stehen links und rechts Einsen; jeder weitere Eintrag wird als Summe der beiden Einträge schräg über ihm berechnet. In der folgenden Abbildung sehen Sie die ersten Zeilen des Dreiecks: Zeile 0: 1 Zeile 1: 1 1 Zeile 2: Zeile 3: Zeile 4: Zeile 5: Wir stellen die einzelnen Zeilen als Listen natürlicher Zahlen dar. (a) Schreiben Sie eine Prozedur nextline: int list int list, die aus einer gültigen Zeile des Dreiecks die folgende berechnet. Beispielsweise soll gelten nextline [1] = [1,1] nextline [1,3,3,1] = [1,4,6,4,1] Hinweis: Hier kann es sinnvoll sein, sich eine Hilfsprozedur zu schreiben. (b) Der Binomialkoeffizient ( n k) mit n, k N kann als der (k + 1)-te Eintrag der n-ten Zeile bestimmt werden. Schreiben Sie mithilfe von iter eine nicht-rekursive Prozedur binomialcoefficient: int int int, sodass binomialcoefficient n k den Wert ( n k) berechnet.
7 Matrikelnummer: Seite 7 von 12 Aufgabe 3: ((2 + 3) + (5 + 7)) Punkte Teilaufgabe 3.1 (a) Schreiben Sie eine Prozedur interval: int int int bool die für eine Zahl x prüft, ob sie im Intervall [n, m] liegt. (b) Verwenden Sie Faltung und interval, um eine Prozedur insum: int list int int int zu schreiben, die für eine Liste und zwei ganze Zahlen n und m alle Zahlen aufsummiert, die im Intervall [n, m] liegen. Teilaufgabe 3.2 (a) Sie besitzen die Dezimaldarstellung einer natürlichen Zahl als String. Schreiben Sie eine Prozedur quersumme: string int, welche die Quersumme dieser Zahl berechnet. Ist der String leer, soll die Ausnahme Empty geworfen werden. Andere ungültige Eingabe wie zum Beispiel "324,3" müssen nicht beachtet werden. Beispiel: Die Quersumme von 358 ist = 16. (b) Schreiben Sie map mithilfe von iter.
8 Matrikelnummer: Seite 8 von 12 Aufgabe 4: ( ) Punkte In der folgenden Aufgabe soll Bubblesort implementiert werden. Der Algorithmus funktioniert wie folgt: Die Elemente steigen wie Blasen gemäß ihrer Größe nach oben. Jede Blase steigt dabei so lange auf, bis sie auf eine größere stößt. Dann macht diese weiter, bis sie am Ende ankommt oder ihrerseits eine größere anstößt. Das wiederholt man solange, bis die Liste sortiert ist. Vorhergehende Teilaufgaben dürfen verwendet werden, auch wenn sie nicht gelöst wurden. Beispiel: [5,7,2,1,3] Zunächst werden die 5 und die 7 miteinander verglichen. Da die 5 kleiner als die 7 ist, werden die beiden Elemente nicht vertauscht. Dann werden die 7 und die 2 miteinander verglichen. Da 7 > 2, vertauscht man die Elemente und vergleicht anschließend die 7 mit der 1 usw. Nach dem ersten Schritt (dem ersten bubble-aufruf) steht also die 7 als das größte Element an der richtigen Stelle. Im Folgenden sehen Sie den Zustand der Liste [5,7,2,1,3] nach einem bubble-aufruf: Nach dem zweiten Aufruf: Nach dem dritten Aufruf: [5,2,1,3,7] [2,1,3,5,7] [1,2,3,5,7] Teilaufgabe 4.1 Geben Sie den Zustand der Liste [4,2,7,1,9,3,8] nach jedem bubble-aufruf an, bis die Liste sortiert ist. Teilaufgabe 4.2 Schreiben Sie eine Prozedur bubble: (α * α order) α list α list, die beim ersten Element der Liste beginnt und dieses, solange es größer als das darauf folgende Element ist, nach oben verschiebt. Sobald man auf ein größeres Element stößt, fährt man mit dem größeren genauso fort, sodass das größte Element der Liste am Ende ganz nach hinten gewandert ist.
9 Matrikelnummer: Seite 9 von 12 Teilaufgabe 4.3 Schreiben Sie eine Prozedur issorted: (α * α order) α list bool, die prüft, ob eine Liste gemäß einer übergebenen Ordnung sortiert ist. Teilaufgabe 4.4 Schreiben Sie jetzt eine Prozedur bubblesort: (α * α order) α list α list, die den anfangs beschriebenen Algorithmus umsetzt.
10 Matrikelnummer: Seite 10 von 12 Aufgabe 5: (4 + (4 + 7)) Punkte In dieser Aufgabe sollen Sie einen Konstruktortyp scheme deklarieren. Dieser stellt Typschemata dar, die ausschließlich Typvariablen enthalten. Ihr Typ soll zum einen atomare Typvariablen wie α, β,..., zum anderen Prozedurtypen wie zum Beispiel α β oder (α β) γ δ und Paare wie α * β oder (α * α) * β darstellen können. Beispiel: int * int α und α * β * γ müssen nicht darstellbar sein, dafür jedoch α * β α und α β * (β γ) γ. Nutzen Sie int zum Darstellen der Typvariablen. Teilaufgabe 5.1 Deklarieren Sie scheme. datatype scheme Teilaufgabe 5.2 (a) Schreiben Sie eine Prozedur listvariables: scheme int list, die alle in einem Typ vorkommenden Variablen auflistet. (b) Schreiben Sie nun eine Prozedur checkvariables: scheme scheme bool, die für zwei Prozeduren prüft, ob sie die gleichen Typvariablen verwenden.
11 Matrikelnummer: Seite 11 von 12 Aufgabe 6: ((2 + 2) + 6) Punkte Reine Bäume seien wie folgt deklariert: datatype tree = T of tree list Teilaufgabe 6.1 (a) Geben Sie die Zeichendarstellung von folgendem Baum an: (b) Geben Sie die grafische Darstellung des folgenden Baumes an: T[T[T[]], T[], T[T[], T[]]] Teilaufgabe 6.2 Schreiben Sie eine Prozedur mirror: tree tree, die einen Baum spiegelt. Hinweis: Spiegeln reversiert die Reihenfolge der Unterbäume der Teilbäume eines Baums. =
12 Matrikelnummer: Seite 12 von 12 Aufgabe 7: Bonusaufgabe (5 + 5) Punkte Teilaufgabe 7.1 Seien Mengen als Listen ohne Mehrfachauftreten definiert. Schreiben Sie eine Prozedur kteil: α list int α list list, die die Menge aller k-elementigen Teilmengen einer Menge M liefert. Ist k < 0 oder k > M, soll zurückgegeben werden. Für kteil [1,2,3,4] 3 soll die Ausgabe folgende Mengen enthalten: [1,2,3], [1,2,4], [1,3,4], [2,3,4] Teilaufgabe 7.2 Schreiben Sie iter mithilfe von polyfirst: (α α) α (α bool) α. fun polyfirst step s f = if (f s) then s else polyfirst step (step s) f Machen Sie sich zunächst klar, dass gilt: first s f = polyfirst (λx.x + 1) s f
1. Probeklausur zur Programmierung I
DEPENDABLE SYSTEMS AND SOFTWARE Fachrichtung 6.2 Informatik Tutoren der Vorlesung 1. Probeklausur zur Programmierung I Name: Matrikelnummer: Bitte öffnen Sie das Klausurheft erst dann, wenn Sie dazu aufgefordert
Mehr1. Probeklausur (Lösung) zu Programmierung 1 (WS 07/08)
Fachschaft Informatikstudiengänge Fachrichtung 6.2 Informatik Das Team der Bremser 1. Probeklausur (Lösung) zu Programmierung 1 (WS 07/08) http://fsinfo.cs.uni-sb.de Name Matrikelnummer Bitte öffnen Sie
Mehr1. Probeklausur zur Vorlesung Programmierung 1 im Wintersemester 2011/2012
1. Probeklausur zur Vorlesung Programmierung 1 im Wintersemester 2011/2012 Das Team der Tutoren 03. Dezember 2011 Name Matrikelnummer Bitte öffnen Sie das Klausurheft erst dann, wenn Sie dazu aufgefordert
MehrKlausur Programmierung WS 2002/03
Klausur Programmierung WS 2002/03 Prof. Dr. Gert Smolka, Dipl. Inf. Thorsten Brunklaus 14. Dezember 2002 Leo Schlau 45 Vor- und Nachname Sitz-Nr. 4711 007 Matrikelnummer Code Bitte öffnen Sie das Klausurheft
Mehr1. Probeklausur Programmierung 1 (WS 2010/2011)
1. Probeklausur Programmierung 1 (WS 2010/2011) Team der Tutoren 11. Dezember 2010 Name Sitzplatz Matrikelnummer Bitte öffnen Sie das Klausurheft erst dann, wenn Sie dazu aufgefordert werden. Sie können
Mehr1. Probeklausur zu Programmierung 1 (WS 07/08)
Fachschaft Informatikstudiengänge Fachrichtung 6.2 Informatik Das Team der Bremser 1. Probeklausur zu Programmierung 1 (WS 07/08) http://fsinfo.cs.uni-sb.de Name Matrikelnummer Bitte öffnen Sie das Klausurheft
MehrProgrammierung 1 (Wintersemester 2015/16) Wiederholungstutorium Lösungsblatt 15 (Linearer Speicher, Listen, Bäume)
Fachrichtung 6.2 Informatik Universität des Saarlandes Tutorenteam der Vorlesung Programmierung 1 Programmierung 1 (Wintersemester 2015/16) Wiederholungstutorium Lösungsblatt 15 (Linearer Speicher, Listen,
MehrMusterlösung zur 1. Probeklausur Programmierung 1 Wintersemester 2012/13
Musterlösung zur 1. Probeklausur Programmierung 1 Wintersemester 2012/13 Das Team der Tutoren 08. Dezember 2012 Dieter Schlau Name 2442424 Matrikelnummer Musterlösung Bitte öffnen Sie das Klausurheft erst
MehrProgrammierung 1 (Wintersemester 2012/13) Lösungsblatt 4 (Kapitel 4)
Fachrichtung 6.2 Informatik Universität des Saarlandes Tutorenteam der Vorlesung Programmierung 1 Programmierung 1 (Wintersemester 2012/13) Lösungsblatt 4 (Kapitel 4) Hinweis: Dieses Übungsblatt enthält
Mehr2. Probeklausur zur Vorlesung Programmierung 1 im Wintersemester 2011/2012
2. Probeklausur zur Vorlesung Programmierung 1 im Wintersemester 2011/2012 Das eam der utoren 04. Februar 2012 Name Matrikelnummer Bitte öffnen Sie das Klausurheft erst dann, wenn Sie dazu aufgefordert
MehrProgrammierung 1 (Wintersemester 2012/13) Lösungsblatt 7 (Kapitel 7)
Fachrichtung 6.2 Informatik Universität des Saarlandes Tutorenteam der Vorlesung Programmierung 1 Programmierung 1 (Wintersemester 2012/13) Lösungsblatt 7 (Kapitel 7) Hinweis: Dieses Übungsblatt enthält
MehrProgrammierung 1 (Wintersemester 2012/13) Lösungsblatt 5 (Kapitel 6)
Fachrichtung 6.2 Informatik Universität des Saarlandes Tutorenteam der Vorlesung Programmierung 1 Programmierung 1 (Wintersemester 2012/13) Lösungsblatt 5 (Kapitel 6) Hinweis: Dieses Zusatzübungsblatt
MehrProgrammierung 1 (Wintersemester 2015/16) Wiederholungstutorium Lösungsblatt 13 (Queues, Binary Search)
Fachrichtung 6.2 Informatik Universität des Saarlandes Tutorenteam der Vorlesung Programmierung 1 Programmierung 1 (Wintersemester 2015/16) Wiederholungstutorium Lösungsblatt 13 (Queues, Binary Search)
MehrProgrammierung 1 (Wintersemester 2012/13) Erklärung 5 (Prä- und Postordnung)
Fachrichtung 6. Informatik Universität des Saarlandes Tutorenteam der Vorlesung Programmierung 1 Programmierung 1 (Wintersemester 01/13) Erklärung (Prä- und Postordnung) Hinweis: Dieses Blatt enthält eine
MehrAllgemeine Hinweise:
TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK WS 11/12 Einführung in die Informatik 2 Klausur Prof. Dr. Andrey Rybalchenko, M.Sc. Ruslán Ledesma Garza 11.02.2011 Name Vorname Studiengang Matrikelnummer
MehrProgrammierung 1 (Wintersemester 2015/16) Wiederholungstutorium Lösungsblatt 11 (Parser II)
Fachrichtung 6.2 Informatik Universität des Saarlandes Tutorenteam der Vorlesung Programmierung 1 Programmierung 1 (Wintersemester 2015/16) Wiederholungstutorium Lösungsblatt 11 (Parser II) Hinweis: Dieses
MehrProgrammierung 1 (Wintersemester 2015/16) Wiederholungstutorium Lösungsblatt 4 (Sortieren und Konstruktoren)
Fachrichtung 6.2 Informatik Universität des Saarlandes Tutorenteam der Vorlesung Programmierung 1 Programmierung 1 (Wintersemester 2015/16) Wiederholungstutorium Lösungsblatt 4 (Sortieren und Konstruktoren)
MehrProbeklausur Grundlagen der Programmierung
Prof. Ralf Hinze S. Schweizer, M.Sc. P. Zeller, M.Sc. Technische Universität Kaiserslautern Fachbereich Informatik AG Programmiersprachen Probeklausur Grundlagen der Programmierung Dienstag, 08.01.2019
MehrTECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK
TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK WS 11/12 Einführung in die Informatik II Übungsblatt 4 Univ.-Prof. Dr. Andrey Rybalchenko, M.Sc. Ruslán Ledesma Garza 21.11.2011 Dieses Blatt behandelt
MehrProbeklausur Software-Entwicklung I
Prof. Dr. A. Poetzsch-Heter Dipl.-Inform. J. O. Blech Dipl.-Inform. M. J. Gawkowski Dipl.-Inform. N. Rauch Technische Universität Kaiserslautern Fachbereich Informatik AG Softwaretechnik Probeklausur Software-Entwicklung
MehrProgrammierung Eine Einführung in die Informatik mit Standard ML Musterlösungen für ausgewählte Aufgaben. 1 Schnellkurs. Gert Smolka.
Programmierung Eine Einführung in die Informatik mit Standard ML Musterlösungen für ausgewählte Aufgaben Gert Smolka Vorbemerkungen a) Ich danke den Assistenten der Vorlesungen in Saarbrücken für ihre
MehrProgrammierung 1 (Wintersemester 2012/13) Lösungsblatt 1 (Kapitel 1)
Fachrichtung 6.2 Informatik Universität des Saarlandes Tutorenteam der Vorlesung Programmierung 1 Programmierung 1 (Wintersemester 2012/13) Lösungsblatt 1 (Kapitel 1) Hinweis: Dieses Übungsblatt enthält
MehrAufgabe 1 Basiswissen zur Vorlesung (8 Punkte)
Matrikelnummer: 1 Aufgabe 1 Basiswissen zur Vorlesung (8 Punkte) Kreuzen Sie an, ob die folgenden Aussagen richtig oder falsch sind. Bewertung: keine Antwort: 0 Punkte richtige Antwort: +0.5 Punkte falsche
MehrProgrammierung 1 (Wintersemester 2015/16) Wiederholungstutorium Lösungsblatt 17 (Best of)
Fachrichtung 6.2 Informatik Universität des Saarlandes Tutorenteam der Vorlesung Programmierung 1 Programmierung 1 (Wintersemester 2015/16) Wiederholungstutorium Lösungsblatt 17 (Best of) Hinweis: Dieses
MehrProgrammierung 1 (Wintersemester 2015/16) Lösungsblatt: Aufgaben für die Übungsgruppen: 8 (Kapitel 9)
Fachrichtung 6. Informatik Universität des Saarlandes Tutorenteam der Vorlesung Programmierung Programmierung (Wintersemester 5/6) Lösungsblatt: Aufgaben für die Übungsgruppen: 8 (Kapitel 9) Hinweis: Dieses
MehrAllgemeine Hinweise: TECHNISCHE UNIVERSITÄT MÜNCHEN. Name Vorname Studiengang Matrikelnummer. Hörsaal Reihe Sitzplatz Unterschrift
TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK Lehrstuhl für Sprachen und Beschreibungsstrukturen WS 2008/09 Einführung in die Informatik 2 Klausur Prof. Dr. Helmut Seidl, T. M. Gawlitza, S. Pott,
MehrProgrammierung 1 (Wintersemester 2012/13) Zusatzübungsblatt 7 (Kapitel 7)
Fachrichtung 6.2 Informatik Universität des Saarlandes Tutorenteam der Vorlesung Programmierung 1 Programmierung 1 (Wintersemester 2012/13) Zusatzübungsblatt 7 (Kapitel 7) Hinweis: Dieses Übungsblatt enthält
MehrProgrammierung 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)
MehrKlausur Kompaktkurs Einführung in die Programmierung Dr. T. Weinzierl & M. Sedlacek 18. April 2012
Kompaktkurs Einführung in die Programmierung Klausur Seite 1/10 Name, Vorname, Unterschrift: Matrikelnummer: Wichtig: Klausur Kompaktkurs Einführung in die Programmierung Dr. T. Weinzierl & M. Sedlacek
MehrGrundlagen der Informatik
Grundlagen der Informatik Klausur 1. August 2008 1. Dynamische Datenstrukturen und objektorientierte Programmierung (45 Punkte) Gegeben sei eine Datenstruktur mit folgendem Aufbau struct lelem { int w;
MehrKapitel 6. Konstruktortypen und Ausnahmen. 6.1 Varianten und Konstruktoren
Kapitel 6 Konstruktortypen und Ausnahmen Wir lernen jetzt, wie man mithilfe von Konstruktoren neue Typen deklariert. Mit Konstruktortypen lassen sich Mengen von geordneten Bäumen beschreiben. Außerdem
MehrProbeklausur Name: (c)
Einführung in die Praktische Informatik 30.1.2013 Probeklausur Name: Teil I: Datentypen (20 Punkte) Lösen sie die Probleme, indem sie die korrekten Lösungen ankreuzen bzw. in die vorgesehenen Freiräume
MehrHinweise zur Bearbeitung der Klausur zum Kurs Einführung in die imperative Programmierung
Name: Matrikelnr.: Hinweise zur Bearbeitung der Klausur zum Kurs 01613 Einführung in die imperative Programmierung 1. Prüfen Sie die Vollständigkeit Ihrer Unterlagen. Die Klausur umfasst: 2 Deckblätter
MehrProgrammierung und Modellierung
Programmierung und Modellierung Funktionen höherer Ordnung Martin Wirsing in Zusammenarbeit mit Moritz Hammer SS 2009 2 Inhalt Kap. 6 Funktionen höherer Ordnung 1. Funktionen als Parameter und Wert von
MehrProgrammierung 1 (Wintersemester 2012/13) Lösungsblatt 7 (Kapitel 7)
Fachrichtung 6.2 Informatik Universität des Saarlandes Tutorenteam der Vorlesung Programmierung 1 Programmierung 1 (Wintersemester 2012/13) Lösungsblatt 7 (Kapitel 7) Hinweis: Dieses Übungsblatt enthält
MehrDEPENDABLE SYSTEMS AND SOFTWARE Fachrichtung 6.2 Informatik Prof. Dr.-Ing. Holger Hermanns
DEPENDABLE SYSTEMS AND SOFTWARE Fachrichtung 6.2 Informatik Prof. Dr.-Ing. Holger Hermanns Frage 1: Betrachten sie das Programm: val x = 3 + 4 val y = 3 * (x + 5) Wie viele Schlüsselwörter (ohne Operatoren)
MehrInhalt Kapitel 5: Funktionen höherer Ordnung
Inhalt Kapitel 5: 1 Funktionen als Argumente 2 Funktionen als Werte einer Funktion 3 Currying 4 Grundlegende 88 Funktionen als Argumente Funktionen als Argumente: map Anwenden einer Funktion auf alle Einträge
MehrProbeklausur zur Vorlesung
Dr. Jochen Hoenicke Alexander Nutz Probeklausur zur Vorlesung Einführung in die Informatik Sommersemester 2014 Die Klausur besteht aus diesem Deckblatt und elf Blättern mit den Aufgaben, sowie einem Blatt
MehrKlausur "ADP" WS 2013/2014
PD Dr. J. Reischer 4.2.2014 Klausur "ADP" WS 2013/2014 Nachname, Vorname Abschluss (BA, MA, FKN etc.) Matrikelnummer, Semester Versuch (1/2/3) Bitte füllen Sie zuerst den Kopf des Angabenblattes aus! Die
MehrÜbungsblatt 10. Thema: Abstrakte Datentypen, Datenstrukturen in Java
Informatik I WS 05/06 Prof. Dr. W. May Dipl.-Inform. Oliver Fritzen Dipl.-Inform. Christian Kubczak Übungsblatt 10 Ausgegeben am: Abgabe bis: 13.01.2006 24.1.2006 (Theorie) 27.1.2006 (Praktisch) Thema:
MehrGrundlagen der Programmierung 3 A
Grundlagen der Programmierung 3 A Typen, Typberechnung und Typcheck Prof. Dr. Manfred Schmidt-Schauß Sommersemester 2017 Haskell, Typen, und Typberechnung Ziele: Haskells Typisierung Typisierungs-Regeln
MehrKlausur Informatik B April Teil I: Informatik 3
Informatik 3 Seite 1 von 8 Klausur Informatik B April 1998 Teil I: Informatik 3 Informatik 3 Seite 2 von 8 Aufgabe 1: Fragekatalog (gesamt 5 ) Beantworten Sie folgende Fragen kurz in ein oder zwei Sätzen.
MehrDatenstrukturen und Algorithmen 2. Klausur SS 2001
UNIVERSITÄT PADERBORN FACHBEREICH 7 (MATHEMATIK INFORMATIK) Datenstrukturen und Algorithmen 2. Klausur SS 200 Lösungsansätze Dienstag, 8. September 200 Name, Vorname:...................................................
MehrHaskell, Typen, und Typberechnung. Grundlagen der Programmierung 3 A. Überladung und Konversion in Haskell. 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 Sommersemester
MehrGrundlagen der Programmierung 3 A
Grundlagen der Programmierung 3 A Typen, Typberechnung und Typcheck Prof. Dr. Manfred Schmidt-Schauß Sommersemester 2016 Haskell, Typen, und Typberechnung Ziele: Haskells Typisierung Typisierungs-Regeln
MehrPraktische Informatik 3: Funktionale Programmierung Vorlesung 6 vom : Funktionen Höherer Ordnung II und Effizienzaspekte
16:02:08 2017-01-17 1 [34] Praktische Informatik 3: Funktionale Programmierung Vorlesung 6 vom 22.11.2016: Funktionen Höherer Ordnung II und Effizienzaspekte Christoph Lüth Universität Bremen Wintersemester
MehrProgrammierung 1 (Wintersemester 2015/16) Lösungsblatt: Aufgaben für die Übungsgruppen: 5 (Kapitel 5)
Fachrichtung 6.2 Informatik Universität des Saarlandes Tutorenteam der Vorlesung Programmierung 1 Programmierung 1 (Wtersemester 2015/16) Lösungsblatt: Aufgaben für die Übungsgruppen: 5 (Kapitel 5) Hweis:
MehrInhaltsverzeichnis. 1 Polynomordungen [9 Punkte] 2. 2 System F [9 Punkte] 3. 3 Strukturelle Induktion und Folds [9 Punkte] 4
Inhaltsverzeichnis Polynomordungen [9 Punkte] 2 2 System F [9 Punkte] 3 3 Strukturelle Induktion und Folds [9 Punkte] 4 4 Korekursion und Koinduktion [9 Punkte] 5 5 Automatenminimierung [5 Punkte] 6 Seite:
MehrKlausur "ADP" SS 2015
PD Dr. J. Reischer 20.7.2015 Klausur "ADP" SS 2015 Nachname, Vorname Abschluss (BA, MA, FKN etc.) Matrikelnummer, Semester Versuch (1/2/3) Bitte füllen Sie zuerst den Kopf des Angabenblattes aus! Die Klausur
MehrProgrammierung 1 (Wintersemester 2012/13) Lösungsblatt 6 (Kapitel 06)
Fachrichtung 6.2 Informatik Universität des Saarlandes Tutorenteam der Vorlesung Programmierung 1 Programmierung 1 (Wintersemester 2012/13) Lösungsblatt 6 (Kapitel 06) Hinweis: Dieses Übungsblatt enthält
MehrLösung Probeklausur Informatik I
Lösung Probeklausur Informatik I 1 Lösung Aufgabe 1 (5 Punkte) Algorithmen und Programme Was ist der Unterschied zwischen einem Algorithmus und einem Programm? Ein Algorithmus ist eine Vorschrift zur Durchführung
MehrProbeklausur Programmieren in C Sommersemester 2007 Dipl. Biol. Franz Schenk 12. April 2007, Uhr Bearbeitungszeit: 105 Minuten
Probeklausur Programmieren in C Sommersemester 2007 Dipl. Biol. Franz Schenk 12. April 2007, 13.00-14.45 Uhr Bearbeitungszeit: 105 Minuten Schalten Sie ihr Mobiltelefon aus. Bei der Klausur ist als einziges
Mehr8 Prozeduren als Daten
8 Prozeduren als Daten Prozeduren als Parameter Prozeduren als Ergebnisse Prozeduren höherer Ordnung (higher-order procedures) Programmierung höherer Ordnung Verwendung als Abstraktionsmittel 8.1 Prozeduren
MehrVerarbeitung unendlicher Datenstrukturen Jetzt können wir z.b. die unendliche Liste aller geraden Zahlen oder aller Quadratzahlen berechnen:
Verarbeitung unendlicher Datenstrukturen Jetzt können wir z.b. die unendliche Liste aller geraden Zahlen oder aller Quadratzahlen berechnen: take 1 0 ( f i l t e r ( fn x => x mod 2=0) nat ) ; val it =
MehrPrüfung Informatik D-MATH/D-PHYS :00 11:00
Prüfung Informatik D-MATH/D-PHYS 4. 8. 2009 09:00 11:00 Dr. Bernd Gartner, Prof. Juraj Hromkovic Kandidat/in: Name:... Vorname:... Stud.-Nr.:... Ich bezeuge mit meiner Unterschrift, dass ich die Prufung
MehrEinführung in die Programmierung. (K-)II/Wb17
Probeklausur Hochschule Zittau/Görlitz, Prüfer: Prof. Dr. Georg Ringwelski Einführung in die Programmierung (K-)II/Wb17 Matrikelnummer: Punkte: 1 2 3 4 5 6 Gesamt /21 /19 /20 /20 /20 /20 /120 Spielregeln:
MehrDie Definition eines Typen kann rekursiv sein, d.h. Typ-Konstruktoren dürfen Elemente des zu definierenden Typ erhalten.
4.5.5 Rekursive Typen Die Definition eines Typen kann rekursiv sein, d.h. Typ-Konstruktoren dürfen Elemente des zu definierenden Typ erhalten. datatype IntList = Nil Cons o f ( i n t IntList ) ; Damit
MehrProgrammierstarthilfe SS 2010 Fakultät für Ingenieurwissenschaften und Informatik 6. Blatt Für die Woche vom bis zum 4.6.
Programmierstarthilfe SS 2010 Fakultät für Ingenieurwissenschaften und Informatik 6. Blatt Für die Woche vom 31.5. bis zum 4.6.2010 (KW 22) Organisatorisches Diese Woche führen wir Methoden ein und behandeln
MehrLanguages and Tools for Object-Oriented Development Klausur Wintersemester 2007/2008
Languages and Tools for Object-Oriented Development Klausur Wintersemester 2007/2008 27. Februar 2008 Institut für Softwaresysteme, TUHH Regeln: 1. Zu dieser Klausur sind keinerlei Hilfsmittel zugelassen.
MehrAllgemeine Hinweise:
TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK Lehrstuhl für Sprachen und Beschreibungsstrukturen WS 11/12 Einführung in die Informatik I Probe-Klausur Prof. Dr. Helmut Seidl, M. Schwarz, A. Herz,
MehrAlgorithmen und Programmieren 1 Funktionale Programmierung - Musterlösung zur Übungsklausur -
Algorithmen und Programmieren 1 Funktionale Programmierung - Musterlösung zur Übungsklausur - Punkte: A1: 30, A2: 20, A3: 20, A4: 20, A5: 10, A6: 20 Punkte: /120 12.02.2012 Hinweis: Geben Sie bei allen
MehrBerechnungsschemata: Funktion als Parameter abstrahiert Operation im Schema, wird bei Aufruf des Schemas konkretisiert
6. Funktionen als Daten, Übersicht Orthogonales Typsystem: Funktionen sind beliebig mit anderen Typen kombinierbar Notation für Funktionswerte (Lambda-Ausdruck): fn (z,k) => z*k Datenstrukturen mit Funktionen
MehrKlausur - Informatik I SS 05. Note: Bearbeitungszeit 120 Minuten Keine Hilfsmittel
Klausur - Informatik I SS 05 Aufgabe 1 2 3 4 Punkte 40 30 40 10 Gesamtpunkte (max. 120): Note: Bearbeitungszeit 120 Minuten Keine Hilfsmittel Tragen Sie als erstes Ihren vollständigen Namen und Ihre Matrikelnummer
MehrGruppe A. kommtvor := proc(x::anything, l::list) local y; for y in l do if x=y then return true end if end do; return false end proc
Midterm-Klausur Einführung in die Programmierung, WS 2006/07, 19.12.2006 Seite 1/6 Name, Vorname, Matrikelnummer: Unterschrift: Gruppe A 1 Permutationen (5+5+5=15 Punkte) a) Schreiben Sie eine Prozedur
MehrMaike Buchin 18. Februar 2016 Stef Sijben. Probeklausur. Theoretische Informatik. Bearbeitungszeit: 3 Stunden
Maike Buchin 8. Februar 26 Stef Sijben Probeklausur Theoretische Informatik Bearbeitungszeit: 3 Stunden Name: Matrikelnummer: Studiengang: Geburtsdatum: Hinweise: Schreibe die Lösung jeder Aufgabe direkt
MehrProgrammierung und Modellierung
Programmierung und Modellierung Benutzerdefinierte Datentypen Martin Wirsing in Zusammenarbeit mit Moritz Hammer SS 2009 2 Inhalt Kap. 7 Benutzerdefinierte Datentypen 1. Aufzählungstypen 2. Typen mit zusammengesetzten
MehrLösungshinweise/-vorschläge zum Übungsblatt 2: Grundlagen der Programmierung (WS 2018/19)
Prof. Dr. Ralf Hinze Sebastian Schweizer, M.Sc. Peter Zeller, M. Sc. TU Kaiserslautern Fachbereich Informatik AG Programmiersprachen Lösungshinweise/-vorschläge zum Übungsblatt 2: Grundlagen der Programmierung
MehrPrüfung Funktionale Programmierung
Hochschule für angewandte Wissenschaften München Fakultät für Informatik und Mathematik Studiengruppe IF, IB, IC Sommersemester 2014 Prüfung Funktionale Programmierung Datum : 16.07.2014, 12:30 Uhr Bearbeitungszeit
MehrStrukturelle Rekursion und Induktion
Kapitel 2 Strukturelle Rekursion und Induktion Rekursion ist eine konstruktive Technik für die Beschreibung unendlicher Mengen (und damit insbesondere für die Beschreibung unendliche Funktionen). Induktion
MehrVorlesung Objektorientierte Programmierung Klausur
Prof. Dr. Stefan Brass 16. Februar 2007 Dipl.-Inform. Annett Thüring Institut für Informatik MLU Halle-Wittenberg Vorlesung Objektorientierte Programmierung Klausur Name: Matrikelnummer: Studiengang: Aufgabe
MehrAufgabe: Summe Punkte (max.): Punkte:
ZUNAME:.................................... VORNAME:.................................... MAT. NR.:................................... 1. Teilprüfung 389.055 A Signale und Systeme 2 Institute of Telecommunications
MehrEinführung in die Informatik 2
Technische Universität München Fakultät für Informatik Prof. Tobias Nipkow, Ph.D. Lars Hupel, Lars Noschinski, Dr. Jasmin Blanchette Wintersemester 2013/14 Wiederholungsklausur 24. März 2014 Einführung
MehrProgrammierung 1 (Wintersemester 2012/13) Lösungsblatt 10 (Kapitel 11)
Fachrichtung 6.2 Informatik Universität des Saarlandes Tutorenteam der Vorlesung Programmierung 1 Programmierung 1 (Wintersemester 2012/13) Lösungsblatt 10 (Kapitel 11) Hinweis: Dieses Übungsblatt enthält
MehrAufgabe: Summe Punkte (max.): Punkte:
ZUNAME:.................................... VORNAME:.................................... MAT. NR.:................................... 1. Teilprüfung 389.055 B Signale und Systeme 2 Institute of Telecommunications
MehrParadigmen der Programmierung
SS 11 Prüfungsklausur 25.07.2011 Aufgabe 5 (6+9 = 15 Punkte) a) Bestimmen Sie jeweils den Typ der folgenden Haskell-Ausdrücke: ( 1, 2 :"3", 4 < 5) :: (Char, String, Bool) [(last, tail), (head, take 5)]
MehrPrüfung A Informatik D-MATH/D-PHYS :15 14:55
Prüfung A Informatik D-MATH/D-PHYS 17. 12. 2013 13:15 14:55 Prof. Bernd Gartner Kandidat/in: Name:. Vorname:. Stud.-Nr.:. Ich bezeuge mit meiner Unterschrift, dass ich die Prufung unter regularen Bedingungen
MehrInstitut für Programmierung und Reaktive Systeme 17. Juli Programmieren II. Übungsklausur
Technische Universität Braunschweig Dr. Werner Struckmann Institut für Programmierung und Reaktive Systeme 17. Juli 2015 Hinweise: Klausurtermine: Programmieren II Übungsklausur Programmieren I: 7. September
MehrProgrammierstarthilfe SS 2009 Fakultät für Ingenieurwissenschaften und Informatik 4. Blatt Für die Woche vom bis zum 22.5.
Programmierstarthilfe SS 2009 Fakultät für Ingenieurwissenschaften und Informatik 4. Blatt Für die Woche vom 18.5. bis zum 22.5.2009 (KW 21) Organisatorisches Die Webseiten zur Veranstaltung sind unter
MehrKurs 1661 Datenstrukturen I Klausur am Seite 1. Hinweise zur Bearbeitung der Klausur zum Kurs 1661 Datenstrukturen I
Kurs 1661 Datenstrukturen I Klausur am 17.9.2011 Seite 1 Hinweise zur Bearbeitung der Klausur zum Kurs 1661 Datenstrukturen I Bitte lesen Sie sich diese Hinweise vollständig und aufmerksam durch, bevor
MehrPrüfung Informatik D-MATH/D-PHYS
Prüfung Informatik D-MATH/D-PHYS 24.1.2011 Dr. Bernd Gartner, Prof. Juraj Hromkovic Lösung. Aufgabe 1. Die Variable x ist vom Typ int und hat zu Beginn jeder Auswertung den Wert 2. Die Variable b ist vom
MehrAlgorithmen und Datenstrukturen 2 VU 3.0 Nachtragstest SS Oktober 2016
Technische Universität Wien Institut für Computergraphik und Algorithmen Algorithms and Complexity Group 186.815 Algorithmen und Datenstrukturen 2 VU 3.0 Nachtragstest SS 2016 5. Oktober 2016 Machen Sie
MehrProgrammierung WS18/19 Übungsblatt 9 (Abgabe Freitag, den um 12 Uhr)
Prof. aa Dr. J. Giesl S. Dollase, M. Hark, D. Korzeniewski Aufgabe 2 (Datenstrukturen in Haskell): (2 + 1 + 2 + 2.5 + 3.5 = 11 Punkte) In dieser Aufgabe geht es darum, arithmetische Ausdrücke auszuwerten.
MehrNachklausur zur Vorlesung
Lehrstuhl für Theoretische Informatik Prof. Dr. Markus Lohrey Grundlagen der Theoretischen Informatik Nachklausur Nachklausur zur Vorlesung Grundlagen der Theoretischen Informatik WS 2016/17 / 27. Februar
MehrWintersemester 2010/2011 Hinweise zur Bearbeitung der Klausur zum Kurs 1613 Einführung in die imperative Programmierung
Name: Matrikelnr.: Wintersemester 2010/2011 Hinweise zur Bearbeitung der Klausur zum Kurs 1613 Einführung in die imperative Programmierung Wir begrüßen Sie zur Klausur Einführung in die imperative Programmierung.
MehrPräsenzübung Datenstrukturen und Algorithmen SS 2014
Prof. aa Dr. E. Ábrahám F. Corzilius, S. Schupp, T. Ströder Präsenzübung Datenstrukturen und Algorithmen SS 2014 Vorname: Nachname: Studiengang (bitte genau einen markieren): Informatik Bachelor Informatik
MehrStudiengang Maschinenbau und Verfahrenstechnik 1. Vordiplom, Informatik I
Dr. K. Simon Studiengang Maschinenbau und Verfahrenstechnik 1. Vordiplom, Informatik I Herbst 2001 Freitag, 28. September 2001 Name: Vorname: Legi-Nummer: Unterschrift: Aufgabe Maximale Punktzahl Erreichte
MehrPrüfung Funktionale Programmierung
Hochschule für angewandte Wissenschaften München Fakultät für Informatik und Mathematik Studiengruppe IF, IB, IC Sommersemester 2015 Prüfung Funktionale Programmierung Datum : 23.07.2015, 10:30 Uhr Bearbeitungszeit
MehrLösungen zum Übungsblatt 3: Softwareentwicklung I (WS 2006/07)
Prof. Dr. A. Poetzsch-Heffter Dipl.-Inform. J.O. Blech Dipl.-Inform. M.J. Gawkowski Dipl.-Inform. N. Rauch Technische Universität Kaiserslautern Fachbereich Informatik AG Softwaretechnik Lösungen zum Übungsblatt
Mehr2. Präsenzübung Datenstrukturen und Algorithmen SS 2014
Prof. aa Dr. E. Ábrahám F. orzilius, S. Schupp, T. Ströder 2. Präsenzübung Datenstrukturen und lgorithmen SS 2014 Vorname: Nachname: Studiengang (bitte genau einen markieren): Informatik Bachelor Informatik
MehrLineare Algebra I: Klausur 2. Heinrich-Heine-Universität Düsseldorf Sommersemester 2017
... 210 Lineare Algebra I: Klausur 2 Heinrich-Heine-Universität Düsseldorf Sommersemester 2017 Öffnen Sie den Klausurbogen erst, wenn der Klausurbeginn angesagt wurde! Es sind keine Hilfsmittel (Taschenrechner,
Mehr1 Stückweise konstante Funktionen (ca =10 Punkte)
Einführung in die wissenschaftliche Programmierung Klausur Seite 1/5 Name, Vorname, Unterschrift: Matrikelnummer: 1 Stückweise konstante Funktionen (ca. 4+2+4=10 Punkte) In dieser Aufgabe soll eine Klasse
MehrTechnische Universität Braunschweig Institut für Programmierung und Reaktive Systeme
Technische Universität Braunschweig Institut für Programmierung und Reaktive Systeme Programmieren I Dr. Werner Struckmann 8. September 2014 Name: Vorname: Matrikelnummer: Kennnummer: Anrede: Frau Herr
MehrWS 2011/2012. RobertGiegerich. November 12, 2013
WS 2011/2012 Robert AG Praktische Informatik November 12, 2013 Haskell-Syntax: Ergänzungen Es gibt noch etwas bequeme Notation für Fallunterscheidungen, die wir bisher nicht benutzt haben. Bisher kennen
MehrKlausur "ADP" SS 2013
PD Dr. J. Reischer 24.07.2013 Klausur "ADP" SS 2013 Nachname, Vorname Abschluss (BA, MA, FKN etc.) Matrikelnummer, Semester Versuch (1/2/3) Bitte füllen Sie zuerst den Kopf des Angabenblattes aus! Die
MehrWS 2011/2012. RobertGiegerich. November 12, 2013
WS 2011/2012 Robert AG Praktische Informatik November 12, 2013 Haskell-Syntax: Ergänzungen Es gibt noch etwas bequeme Notation für Fallunterscheidungen, die wir bisher nicht benutzt haben. Bisher kennen
MehrHaskell, 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
MehrWiederholungsklausur "C#" SS 2013
PD Dr. J. Reischer 16.07.2013 Wiederholungsklausur "C#" SS 2013 Nachname, Vorname Abschluss (BA, MA, FKN etc.) Matrikelnummer, Semester Versuch (1/2/3) Bitte füllen Sie zuerst den Kopf des Angabenblattes
MehrÜbung Informatik I - Programmierung - Blatt 2
RHEINISCH- WESTFÄLISCHE TECHNISCHE HOCHSCHULE AACHEN LEHR- UND FORSCHUNGSGEBIET INFORMATIK II RWTH Aachen D-52056 Aachen GERMANY http://programmierung.informatik.rwth-aachen.de LuFG Informatik II Prof.
MehrKlausur zum Fach Höhere Mathematik 2 für Informatik Teil 1
(Name) (Vorname) (Matrikelnummer) Fachbereich Elektrotechnik und Informationstechnik Prof. Georg Hoever 3.7.5 Klausur zum Fach Höhere Mathematik für Informatik Teil Bearbeitungszeit: 9 Minuten Hilfsmittel:
Mehr