Beispiele: (Funktionen auf Listen) (3) Bemerkungen: Die Datenstrukturen der Paare (2) Die Datenstrukturen der Paare
|
|
- Dagmar Böhm
- vor 8 Jahren
- Abrufe
Transkript
1 Beispiele: (Funktionen auf Listen) (3) Bemerkungen: 5. Zusammenhängen der Elemente einer Liste von Listen: concat :: [[a]] -> [a] concat xl = if null xl then [] else append (head xl) ( concat (tail xl)) 6. Wende eine Liste von Funktionen vom Typ Int -> Int nacheinander auf eine ganze Zahl an: seqappl :: [( Int -> Int)] -> Int -> Int seqappl xl i = if null xl then i else seqappl (tail xl) (( head xl) i) Rekursive Funktionsdeklaration sind bei Listen angemessen, weil Listen rekursive Datenstrukturen sind. Mit Mustern lassen sich die obigen Deklaration noch eleganter fassen (s. unten). Arnd Poetzsch-Heffter TU Kaiserslautern 241 Arnd Poetzsch-Heffter TU Kaiserslautern 242 Die Datenstrukturen der Paare Die Datenstrukturen der Paare (2) Wir betrachten zunächst Paare und verallgemeinern dann auf n-tupel: Paare oder 2-Tupel sind die Elemente des kartesischen Produktes zweier ggf. verschiedener Mengen oder Typen. Der Typ der Paare ist also ein Produkttyp. 2 Als Typkonstruktor wird (a,b) in Mixfix-Schreibweise benutzt. Haskell stellt standardmäßig eine Datenstruktur für Paare bereit, die bzgl. der Elementtypen parametrisiert ist. Typ: Funktionen: (a,b), a, b sind Typparameter (==), (/=) :: (a, b) (a, b) Bool wenn (==) auf a und b definiert (_,_) :: a b (a, b) fst :: (a, b) a snd :: (a, b) b Konstanten: keine Dem Typ (a,b) ist die Menge der geordneten Paare mit Elementen vom Typ a und b zugeordnet. Arnd Poetzsch-Heffter TU Kaiserslautern 243 Arnd Poetzsch-Heffter TU Kaiserslautern 244
2 Beispiel: (Funktionen auf Paaren) Die Datenstruktur der n-tupel Haskell unterstützt n-tupel für alle n 3: Transformiere eine Liste von Paaren in ein Paar von Listen: unzip :: [(a, b)] -> ([a], [b]) unzip xl = if null xl then ([], []) else ( (fst (head xl)):(fst (unzip (tail xl))), (snd (head xl)):(snd (unzip (tail xl))) ) it = unzip [(1, 2), (3, 4), (9, 10)] (auch das geht erheblich schöner mit Mustern) Typ: Funktionen: (a,b,...), a, b,... sind Typparameter (==), (/=) :: (a, b,...) (a, b,...) Bool wenn (==) auf a, b,... definiert (_,_,...) :: a b... (a, b,...) Konstanten: keine Seien n 3 und a 1,..., a n Typen mit Wertemenge w(a 1 ),..., w(a n ); dann ist dem Tupeltyp (a 1,..., a n ) das kartesische Produkt w(a 1 ) w(a n ) als Wertemengen zugorndet; also eine Menge geordneter n-tupel, wobei das i-te Element vom Typ a i ist. Arnd Poetzsch-Heffter TU Kaiserslautern 245 Arnd Poetzsch-Heffter TU Kaiserslautern 246 Bemerkungen: Die Datenstruktur der Einheit Haskell unterstützt eine Datenstruktur mit einem definierten Wert: Es gibt keine Funkionen, um Elemente aus einem Tupel zu selektieren. Dafür benötigt man Muster (siehe unten). Paare sind wie 2-Tupel, auf ihnen sind aber die Selektorfunktionen fst und snd definiert. Es gibt keine 1-Tupel: Klammern um Ausdrücke dienen nur der Strukturierung und haben darüber hinaus keine Bedeutung; d.h. wenn e ein Ausdruck ist, ist ( e ) gleichbedeutend mit e. Typ: () Funktionen: (==), (/=) :: () () Bool Konstanten: () :: () Dem Typbezeichner () ist eine einelementige Wertemenge zugeordnet. Der Wert wird als Einheit (engl. unity) bezeichnet. Bemerkung: Die Einheit wird oft als Ergebnis verwendet, wenn es keine relevanten Ergebniswerte gibt. Arnd Poetzsch-Heffter TU Kaiserslautern 247 Arnd Poetzsch-Heffter TU Kaiserslautern 248
3 Beispiel: (Geschachtelte Tupel) Beispiel: (Funktionen auf n-tupeln) Mit der Tupelbildung lassen sich baumstrukturierte Werte, sogenannte Tupelterme, aufbauen. So entspricht der Tupelterm: ( (8,True), (("Tupel", "sind", "toll"), "aha")) dem Baum: 1. Flache ein Paar von Paaren in ein 4-Tupel aus: ausflachen :: ((a, b),(c, d)) -> (a, b, c, d) -- nimmt ein Paar von Paaren und liefert 4-Tupel ausflachen pp = ( fst ( fst pp), snd (fst pp), fst (snd pp), snd (snd pp) ) it = ausflachen ( (True,7), ( x,5.6) ) 8 True "aha" "Tupel" "sind" "toll" Alternative Deklaration mit Mustern: ausflachen ((a, b),(c, d)) = (a, b, c, d) 2. Funktion zur Paarbildung: paarung :: a -> b -> (a,b) paarung lk rk = (lk, rk) Arnd Poetzsch-Heffter TU Kaiserslautern 249 Arnd Poetzsch-Heffter TU Kaiserslautern 250 Funktionstypen: Beispiel: Eine zweistellige Funktion f mit Argumenten vom Typ a und Typ b und Ergebnistyp c kann in Haskell auf zwei Arten typisiert werden: 1. Gecurryte Form: f :: a -> b -> c Nach den Präzedenzregeln für -> ist das a -> (b ->c), also eine Funktion, die ein Wert vom Typ a nimmt und eine Funktion vom Typ b -> c liefert. Ist x::a und y::b, dann sind (f x) y oder gleichbedeutend f x y korrekte Anwendungen. 2. Tupel-Form: f :: (a,b) -> c In diesem Fall ist für x::a und y::b, f (x,y) eine korrekte Anwendungen. Die Additionsoperation (+) auf Typ Int hat in Haskell den Typ (+) :: Int -> Int In der Mathematik typisiert man die Additionsoperation plus üblichweise mit: plus :: (Int,Int) -> Int Diese Variante kann man in Haskell wie folgt definieren: plus ip = ( fst ip) + ( snd ip) Oder eleganter mit Mustern: plus (m,n) = m + n Arnd Poetzsch-Heffter TU Kaiserslautern 251 Arnd Poetzsch-Heffter TU Kaiserslautern 252
4 Muster in Deklarationen und Ausdrücken Begriffsklärung: (Muster in Haskell) Muster sind ein Sprachkonstrukt um strukturierte Werte einfacher handhaben zu können (siehe Funktion ausflachen). Ein Wert heißt hier strukturiert, wenn er mittels Konstruktoren aus anderen Werten zusammengebaut wurde. Konstruktoren sind spezielle Haskell-Funktionen. Bisher behandelte Konstruktoren: der Listkonstruktor (:) (daher der Name cons ) die Tupelbildung durch (_,...,_) In werden wir benutzerdefinierte Konstruktoren kennen lernen. Muster (engl. Pattern) in Haskell sind Ausdrücke gebildet über Bezeichnern, Konstanten und Konstruktoren. Alle Bezeichner in einem Muster müssen verschieden sein. Ein Muster M mit Bezeichnern b 1,..., b k passt auf einen strukturierten Wert w (engl.: a pattern matches a value w), wenn es eine Substitution der Bezeichner b j in M durch Werte v j gibt, in Zeichen M[v 1 /b 1,..., v k /b k ], so dass M[v 1 /b 1,..., v k /b k ] = w Arnd Poetzsch-Heffter TU Kaiserslautern 253 Arnd Poetzsch-Heffter TU Kaiserslautern 254 Beispiel: (ML-Muster, Passen) Beispiel: (ML-Muster, Passen) (2) 1. (x,y) passt auf (4,5) mit Substitution x=4, y=5. 2. (ersteselem,zweiteselem) passt auf (-47,(True,"dada")) mit ersteselem =-47, zweiteselem =(True,"dada"). 5. first:rest passt auf ["computo","ergo","sum] mit first ="computo" und rest =["ergo", "sum"]. 6. ((8,x), (y,"aha")) passt auf ((8,True), (("Tupel","sind","toll"), "aha")) mit x = True und y = ("Tupel","sind","toll"). 3. x:xs passt auf 7:8:9:[] mit x = 7 und xs = 8:9:[], d.h. xs = [8,9]. 4. x1:x2:xs passt auf 7:8:9:[] mit x1 = 7, x2 = 8, xs = [9]. 8 True y "aha" Arnd Poetzsch-Heffter TU Kaiserslautern 255 Arnd Poetzsch-Heffter TU Kaiserslautern 256
5 Wertvereinbarungen mit Mustern Funktionsvereinbarung mit Mustern Muster können in Haskell-Wertvereinbarungen verwendet werden: <Muster > = <Ausdruck > ; Wenn das Muster auf den Wert des Ausdrucks passt und σ die zugehörige Substitution ist, werden die Bezeichner im Muster gemäß σ an die zugehörige Werte gebunden. Wenn das Muster auf den Wert des Ausdrucks nich passt, wird eine Ausnahme erzeugt, sobald auf einen der deklarierten Bezeichner zugegriffen wird. Beispiel: (x, y) = (4, 5); Muster können in Haskell-Funktionsdeklarationen verwendet werden (vgl. Folie 222): <Funktionsbez > <Parametermuster >... = <Ausdruck >... <Funktionsbez > <Parametermuster >... = <Ausdruck > Bei der Funktionsanwendung wird der Reihe nach geprüft, auf welches Parametermuster der aktuelle Parameter passt (vgl. Folie 229). Die Gleichung zum ersten passenden Fall wird verwendet. Arnd Poetzsch-Heffter TU Kaiserslautern 257 Arnd Poetzsch-Heffter TU Kaiserslautern 258 Beispiele: (Funktionsdeklaration mit Mustern) Beispiele: (Funktionsdeklaration mit Mustern) (2) 1. Deklaration von foldplus ohne Muster: foldplus :: [Int] -> Int foldplus xl = if null xl then 0 else (head xl) + foldplus (tail xl) Deklaration von foldplus mit Muster: foldplus :: [Int] -> Int foldplus [] = 0 foldplus (x: xl) = x + foldplus xl 2. Deklaration von ist_sortiert::[int] ->Bool mit drei Mustern: ist_sortiert [] = True ist_sortiert (x:[]) = True ist_sortiert ( x1: x2: xs) = if x1 <= x2 then ist_sortiert ( x2: xs ) else False Deklaration mit drei Mustern und Wächtern: ist_sortiert [] = True ist_sortiert (x:[]) = True ist_sortiert ( x1: x2: xs) x1 <= x2 = ist_sortiert ( x2: xs) otherwise = False Arnd Poetzsch-Heffter TU Kaiserslautern 259 Arnd Poetzsch-Heffter TU Kaiserslautern 260
6 Beispiele: (Funktionsdeklaration mit Mustern) (3) Beispiele: (Funktionsdeklaration mit Mustern) (4) Deklaration von ist_sortiert::[int]->bool mit zwei Mustern und Wächtern: ist_sortiert ( x1: x2: xs) x1 <= x2 = ist_sortiert ( x2: xs) otherwise = False ist_sortiert x = True 3. Deklaration von append ::[a]->[a]->[a]: append ([], l2) = l2 append (( x: xs), l2) = x : ( append (xs, l2)) 4. Verwendung geschachtelter Muster: unzip :: [(a, b)] -> ([a],[b]) unzip [] = ([], []) unzip ((x,y):ps) = ( (x : (fst (unzip ps))), (y : (snd (unzip ps))) ) Arnd Poetzsch-Heffter TU Kaiserslautern 261 Arnd Poetzsch-Heffter TU Kaiserslautern 262 let-ausdruck Beispiele: (let-ausdruck) Der Mustermechanismus kann auch innerhalb von Ausdrücken eingesetzt werden. Syntax des let-ausdrucks: let <Liste von Deklarationen > in <Ausdruck > Die aus den Deklarationen resultierenden Bindungen sind nur im let-ausdruck gültig. D.h. sie sind sichtbar im let-ausdruck an den Stellen, an denen sie nicht verdeckt sind. a = let a = 2*3 in a*a b = let a = 2*3 in let (b,c) = (a,a+1) in a*b*c unzip :: [(a, b)] -> ([a], [b]) unzip [] = ([], []) unzip ((x,y): ps) = let (xs, ys) = unzip ps in ((x:xs), (y:ys)) Arnd Poetzsch-Heffter TU Kaiserslautern 263 Arnd Poetzsch-Heffter TU Kaiserslautern 264
7 case-ausdruck Beispiele: (case-ausdruck) Syntax des case-ausdrucks: case <Ausdruck0 > of <Muster1 > -> <Ausdruck1 >... <MusterN > -> <AusdruckN > Prüfe der Reihe nach, ob der resultierende Wert von <Ausdruck0> auf eines der Muster passt. Passt er auf ein Muster, nehme die entsprechenden Bindungen vor und werte den zugehörigen Ausdruck aus (die Bindungen sind nur in dem zugehörigen Ausdruck gültig). ist_sortiert xl = case xl of [] -> True (x:[]) -> True ( x1: x2: xs) -> if x1 <= x2 then ist_sortiert ( x2: xs) else False Arnd Poetzsch-Heffter TU Kaiserslautern 265 Arnd Poetzsch-Heffter TU Kaiserslautern 266 Bemerkungen: Unterabschnitt Das Verbot von gleichen Bezeichnern in Mustern hat im Wesentlichen den Grund, dass nicht für alle Werte/Typen die Gleichheitsoperation definiert ist. mal2 = \x -> 2* x twotimes = \x -> x+x (a,a) = (mal2, twotimes) Benutzerdefinierte Datentypen Wenn keines der angegebenen Muster passt, wird eine Ausnahme erzeugt (abrupte Terminierung). Arnd Poetzsch-Heffter TU Kaiserslautern 267 Arnd Poetzsch-Heffter TU Kaiserslautern 268
8 Benutzerdefinierte Datentypen Vereinbarung von Typbezeichnern Fast alle modernen Spezifikations- und Programmiersprachen gestatten es dem Benutzer, neue Typen zu definieren. Übersicht: Vereinbarung von Typbezeichnern Deklaration neuer Typen Summentypen Rekursive Datentypen Haskell erlaubt es, Bezeichner für Typen zu deklarieren (vgl. F. 209): type IntPaar = (Int, Int) ; type CharList = [Char] ; type Telefonbuch = [((String,String,String,Int),[String])] ; type IntegerNachInteger = Integer -> Integer ; fakultaet :: IntegerNachInteger ; -- Argument muss >= 0 sein fakultaet = fac ; Dabei wird kein neuer Typ definiert, sondern nur ein neuer Bezeichner an einen bekannten Typ gebunden. Arnd Poetzsch-Heffter TU Kaiserslautern 269 Arnd Poetzsch-Heffter TU Kaiserslautern 270 Bemerkungen: (Typvereinbarungen) Deklaration neuer Typen Typvereinbarungen können zur Abkürzung oder zur Verdeutlichung benutzt werden (siehe Typ Telefonbuch). Zwei unterschiedliche Bezeichner können den gleichen Typ bezeichnen; z.b.: type IntTriple = (Int,Int, Int) type Date = (Int,Int, Int) kalenderwoche :: Date -> Int -- Parameter muss existierenden Kalendertag sein kalenderwoche (tag, monat, jahr) =... kalenderwoche (11,12,2003) Neue Typen werden in Haskell mit der datatype-deklaration definiert, die im Folgenden schrittweise erläutert wird. Definition eines neuen Typs und Konstruktors: data <NeuerTyp > = <Konstruktor > <Typ1 >... <TypN > Die obige Datatypdeklaration definiert: einen neuen Typ und bindet ihn an <NeuerTyp> eine Konstruktorfunktion mit Signatur <Konstruktor >:: <Typ1 > ->... -> <TypN > -> <NeuerTyp > Die Konstruktorfunktion ist injektiv. Typ- und Konstruktorbezeichner müssen mit einem Großbuchstaben beginnen. Arnd Poetzsch-Heffter TU Kaiserslautern 271 Arnd Poetzsch-Heffter TU Kaiserslautern 272
9 Beispiel: (Definition von Typ, Konstruktor, Selektoren) Bemerkungen: data Person = Student String String Int Int definiert den neuen Typ Person und den Konstruktor Student :: String -> String -> Int -> Int -> Person Wir definieren dazu folgende Selektorfunktionen: vorname :: Person -> String vorname ( Student v n g m) name :: Person -> String name ( Student v n g m) = v = n Jede Datentypdeklaration definiert einen neuen Typ, d.h. insbesondere: die Werte des neuen Typs sind inkompatibel mit allen anderen Typen; auch Werte strukturgleicher benutzerdefinierter Typen sind inkompatibel. geburtsdatum :: Person -> Int geburtsdatum ( Student v n g m) = g matriknr :: Person -> Int matriknr ( Student v n g m) = m Arnd Poetzsch-Heffter TU Kaiserslautern 273 Arnd Poetzsch-Heffter TU Kaiserslautern 274 Beispiele: (Typkompatibilität) Bemerkung: 1. Der Typ Person ist inkompatibel mit dem Tupeltyp type Person2 = ( String, String,Int, Int) Insbesondere ist vorname ("Niels","Bohr", ,221) nicht typkorrekt. 2. Person ist inkompatibel mit dem strukturgleichen Typ Adresse: data Adresse = Wohnung String String Int Int Insbesondere ist name ( Wohnung " Casimirring" " Lautern" ) nicht typkorrekt. Den Konstruktor kann man sich als eine Markierung der Werte seines Argumentbereichs vorstellen. Dabei werden Werte mit unterschiedlicher Markierung als verschieden betrachtet. Konstruktoren erlauben es in gewisser Weise neue Produkttypen zu definieren. Arnd Poetzsch-Heffter TU Kaiserslautern 275 Arnd Poetzsch-Heffter TU Kaiserslautern 276
10 Summentypen Beispiele: (Summentypen) Ein Summentyp stellt die disjunkte Vereinigung der Elemente anderen Typen zu einem neuen Typ dar. Die meisten modernen Programmiersprachen unterstützen die Deklaration von Summentypen. In Haskell definiert man Summentypen durch Angabe von Alternativen bei der datatype-deklaration: data <NeuerTyp > = <Konstruktor1 > <Typ1_1 >... <Typ1_N1 > <Konstruktor2 > <Typ2_1 >... <Typ2_N2 >... <KonstruktorM > <TypM_1 >... <TypM_NM > 1. Ein anderer Datentyp zur Behandlung von Personen: data Person2 = Student String String Int Int Mitarbeiter String String Int Int Professor String String Int Int String Arnd Poetzsch-Heffter TU Kaiserslautern 277 Arnd Poetzsch-Heffter TU Kaiserslautern 278 Beispiele: (Summentypen) (2) Beispiele: (Summentypen) (3) 2. Eine benutzerdefinierte Datenstruktur für Zahlen: data MyNumber = Intc Int Floatc Float isint (Intc m) = True isint ( Floatc r) = False isfloat (Intc m) = False isfloat ( Floatc r) = True neg :: MyNumber -> MyNumber neg (Intc m) = Intc (-m) neg ( Floatc r) = Floatc (-r) plus :: MyNumber -> MyNumber -> MyNumber plus (Intc m) (Intc n) = Intc (m+n) plus (Intc m) ( Floatc r) = Floatc (( frominteger ( tointeger m))+r) plus ( Floatc r) (Intc m) = Floatc (r+( frominteger ( tointeger m))) plus ( Floatc r) ( Floatc q) = Floatc (r+q) Arnd Poetzsch-Heffter TU Kaiserslautern 279 Arnd Poetzsch-Heffter TU Kaiserslautern 280
Funktionale Programmierung mit Haskell
Funktionale Programmierung mit Haskell Dr. Michael Savorić Hohenstaufen-Gymnasium (HSG) Kaiserslautern Version 20120622 Überblick Wichtige Eigenschaften Einführungsbeispiele Listenerzeugung und Beispiel
MehrFunktionale Programmierung
Funktionale Programmierung Jörg Kreiker Uni Kassel und SMA Solar Technology AG Wintersemester 2011/2012 2 Teil II Typen mit Werten und Ausdruck, sogar listenweise 3 Haskell Programme Programm Module ein
MehrEinführung in die Programmierung
: Inhalt Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund - mit / ohne Parameter - mit / ohne Rückgabewerte
MehrGrundlagen der höheren Mathematik Einige Hinweise zum Lösen von Gleichungen
Grundlagen der höheren Mathematik Einige Hinweise zum Lösen von Gleichungen 1. Quadratische Gleichungen Quadratische Gleichungen lassen sich immer auf die sog. normierte Form x 2 + px + = 0 bringen, in
MehrEinführung in die Algebra
Prof. Dr. H. Brenner Osnabrück SS 2009 Einführung in die Algebra Vorlesung 13 Einheiten Definition 13.1. Ein Element u in einem Ring R heißt Einheit, wenn es ein Element v R gibt mit uv = vu = 1. DasElementv
MehrMathematischer Vorbereitungskurs für Ökonomen
Mathematischer Vorbereitungskurs für Ökonomen Dr. Thomas Zehrt Wirtschaftswissenschaftliches Zentrum Universität Basel Gleichungen Inhalt: 1. Grundlegendes 2. Lineare Gleichungen 3. Gleichungen mit Brüchen
Mehr7 Rechnen mit Polynomen
7 Rechnen mit Polynomen Zu Polynomfunktionen Satz. Zwei Polynomfunktionen und f : R R, x a n x n + a n 1 x n 1 + a 1 x + a 0 g : R R, x b n x n + b n 1 x n 1 + b 1 x + b 0 sind genau dann gleich, wenn
MehrErwin Grüner 09.02.2006
FB Psychologie Uni Marburg 09.02.2006 Themenübersicht Folgende Befehle stehen in R zur Verfügung: {}: Anweisungsblock if: Bedingte Anweisung switch: Fallunterscheidung repeat-schleife while-schleife for-schleife
MehrGrundlagen der Programmierung Prof. H. Mössenböck. 3. Verzweigungen
Grundlagen der Programmierung Prof. H. Mössenböck 3. Verzweigungen If-Anweisung n > 0? j n if (n > 0) x = x / n; ohne else-zweig x x / n j max x x > y? n max y if (x > y) max = x; else max = y; mit else-zweig
MehrDas Typsystem von Scala. L. Piepmeyer: Funktionale Programmierung - Das Typsystem von Scala
Das Typsystem von Scala 1 Eigenschaften Das Typsystem von Scala ist statisch, implizit und sicher 2 Nichts Primitives Alles ist ein Objekt, es gibt keine primitiven Datentypen scala> 42.hashCode() res0:
MehrDiana Lange. Generative Gestaltung Operatoren
Diana Lange Generative Gestaltung Operatoren Begriffserklärung Verknüpfungsvorschrift im Rahmen logischer Kalküle. Quelle: google Operatoren sind Zeichen, die mit einer bestimmten Bedeutung versehen sind.
MehrProgrammierkurs Java
Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen
MehrObjektorientierte Programmierung
Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum
MehrEinfache 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
MehrTypdeklarationen. Es gibt in Haskell bereits primitive Typen:
Typdeklarationen Es gibt in bereits primitive Typen: Integer: ganze Zahlen, z.b. 1289736781236 Int: ganze Zahlen mit Computerarithmetik, z.b. 123 Double: Fließkommazahlen, z.b. 3.14159 String: Zeichenketten,
MehrEinführung in die Programmierung
Technische Universität München WS 2003/2004 Institut für Informatik Prof. Dr. Christoph Zenger Testklausur Einführung in die Programmierung Probeklausur Java (Lösungsvorschlag) 1 Die Klasse ArrayList In
MehrWürfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.
040304 Übung 9a Analysis, Abschnitt 4, Folie 8 Die Wahrscheinlichkeit, dass bei n - maliger Durchführung eines Zufallexperiments ein Ereignis A ( mit Wahrscheinlichkeit p p ( A ) ) für eine beliebige Anzahl
MehrLineare Gleichungssysteme
Brückenkurs Mathematik TU Dresden 2015 Lineare Gleichungssysteme Schwerpunkte: Modellbildung geometrische Interpretation Lösungsmethoden Prof. Dr. F. Schuricht TU Dresden, Fachbereich Mathematik auf der
MehrOECD Programme for International Student Assessment PISA 2000. Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland
OECD Programme for International Student Assessment Deutschland PISA 2000 Lösungen der Beispielaufgaben aus dem Mathematiktest Beispielaufgaben PISA-Hauptstudie 2000 Seite 3 UNIT ÄPFEL Beispielaufgaben
Mehr4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes.
Binäre Bäume Definition: Ein binärer Baum T besteht aus einer Menge von Knoten, die durch eine Vater-Kind-Beziehung wie folgt strukturiert ist: 1. Es gibt genau einen hervorgehobenen Knoten r T, die Wurzel
Mehr50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse 11 13. 501322 Lösung 10 Punkte
50. Mathematik-Olympiade. Stufe (Regionalrunde) Klasse 3 Lösungen c 00 Aufgabenausschuss des Mathematik-Olympiaden e.v. www.mathematik-olympiaden.de. Alle Rechte vorbehalten. 503 Lösung 0 Punkte Es seien
MehrÜbungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag
Ludwig-Maximilians-Universität München WS 2015/16 Institut für Informatik Übungsblatt 9 Prof. Dr. R. Hennicker, A. Klarl Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung:
MehrMORE Profile. Pass- und Lizenzverwaltungssystem. Stand: 19.02.2014 MORE Projects GmbH
MORE Profile Pass- und Lizenzverwaltungssystem erstellt von: Thorsten Schumann erreichbar unter: thorsten.schumann@more-projects.de Stand: MORE Projects GmbH Einführung Die in More Profile integrierte
Mehr1 Mathematische Grundlagen
Mathematische Grundlagen - 1-1 Mathematische Grundlagen Der Begriff der Menge ist einer der grundlegenden Begriffe in der Mathematik. Mengen dienen dazu, Dinge oder Objekte zu einer Einheit zusammenzufassen.
MehrLineargleichungssysteme: Additions-/ Subtraktionsverfahren
Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als
MehrProgrammiersprachen und Übersetzer
Programmiersprachen und Übersetzer Sommersemester 2010 19. April 2010 Theoretische Grundlagen Problem Wie kann man eine unendliche Menge von (syntaktisch) korrekten Programmen definieren? Lösung Wie auch
MehrProgrammieren in Haskell Einführung
Programmieren in Haskell Einführung Peter Steffen Universität Bielefeld Technische Fakultät 16.10.2009 1 Programmieren in Haskell Veranstalter Dr. Peter Steffen Raum: M3-124 Tel.: 0521/106-2906 Email:
Mehr4. AUSSAGENLOGIK: SYNTAX. Der Unterschied zwischen Objektsprache und Metasprache lässt sich folgendermaßen charakterisieren:
4. AUSSAGENLOGIK: SYNTAX 4.1 Objektsprache und Metasprache 4.2 Gebrauch und Erwähnung 4.3 Metavariablen: Verallgemeinerndes Sprechen über Ausdrücke von AL 4.4 Die Sprache der Aussagenlogik 4.5 Terminologie
MehrKorrelation (II) Korrelation und Kausalität
Korrelation (II) Korrelation und Kausalität Situation: Seien X, Y zwei metrisch skalierte Merkmale mit Ausprägungen (x 1, x 2,..., x n ) bzw. (y 1, y 2,..., y n ). D.h. für jede i = 1, 2,..., n bezeichnen
Mehrteamsync Kurzanleitung
1 teamsync Kurzanleitung Version 4.0-19. November 2012 2 1 Einleitung Mit teamsync können Sie die Produkte teamspace und projectfacts mit Microsoft Outlook synchronisieren.laden Sie sich teamsync hier
MehrProfessionelle Seminare im Bereich MS-Office
Der Name BEREICH.VERSCHIEBEN() ist etwas unglücklich gewählt. Man kann mit der Funktion Bereiche zwar verschieben, man kann Bereiche aber auch verkleinern oder vergrößern. Besser wäre es, die Funktion
MehrDer Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = 0.51129 Euro ergeben.
Aufgabe 1.30 : Schreibe ein Programm DM_in_Euro.java zur Umrechnung eines DM-Betrags in Euro unter Verwendung einer Konstanten für den Umrechnungsfaktor. Das Programm soll den DM-Betrag als Parameter verarbeiten.
MehrEinführung in die Programmierung (EPR)
Goethe-Center for Scientific Computing (G-CSC) Goethe-Universität Frankfurt am Main Einführung in die Programmierung (EPR) (Übung, Wintersemester 2014/2015) Dr. S. Reiter, M. Rupp, Dr. A. Vogel, Dr. K.
MehrQuadratische Gleichungen
Quadratische Gleichungen Aufgabe: Versuche eine Lösung zu den folgenden Zahlenrätseln zu finden:.) Verdoppelt man das Quadrat einer Zahl und addiert, so erhält man 00..) Addiert man zum Quadrat einer Zahl
MehrGrundlagen der Theoretischen Informatik, SoSe 2008
1. Aufgabenblatt zur Vorlesung Grundlagen der Theoretischen Informatik, SoSe 2008 (Dr. Frank Hoffmann) Lösung von Manuel Jain und Benjamin Bortfeldt Aufgabe 2 Zustandsdiagramme (6 Punkte, wird korrigiert)
MehrDas Festkomitee hat die Abi-Seite neu konzipiert, die nun auf einem (gemieteten) Share Point Server
Hallo Leute Das Festkomitee hat die Abi-Seite neu konzipiert, die nun auf einem (gemieteten) Share Point Server (= echtes - zeug ) liegt! Die neue Form hat insbesondere folgende Vorteile: Du bekommst einen
MehrÜbungen 19.01.2012 Programmieren 1 Felix Rohrer. Übungen
Übungen if / else / else if... 2... 2 Aufgabe 2:... 2 Aufgabe 3:... 2 Aufgabe 4:... 2 Aufgabe 5:... 2 Aufgabe 6:... 2 Aufgabe 7:... 3 Aufgabe 8:... 3 Aufgabe 9:... 3 Aufgabe 10:... 3 switch... 4... 4 Aufgabe
MehrDatenbanken Kapitel 2
Datenbanken Kapitel 2 1 Eine existierende Datenbank öffnen Eine Datenbank, die mit Microsoft Access erschaffen wurde, kann mit dem gleichen Programm auch wieder geladen werden: Die einfachste Methode ist,
MehrGraphic Coding. Klausur. 9. Februar 2007. Kurs A
Graphic Coding Klausur 9. Februar 2007 Kurs A Name: Matrikelnummer: Hinweise - Es sind keine Hilfsmaterialien erlaubt. (Keine Bücher, Taschenrechner, Handys) - Sie haben zwei Stunden Zeit. - Insgesamt
MehrInformationsblatt Induktionsbeweis
Sommer 015 Informationsblatt Induktionsbeweis 31. März 015 Motivation Die vollständige Induktion ist ein wichtiges Beweisverfahren in der Informatik. Sie wird häufig dazu gebraucht, um mathematische Formeln
MehrBeispiele: Funktionsabstraktion (3) Funktionsdeklaration. Funktionsdeklaration (2) Funktionsdeklaration (3) 3. Abstraktion über Funktionsbezeichner:
Beispiele: Funktionsabstraktion (3) Funktionsdeklaration 3. Abstraktion über Funktionsbezeichner: Ausdruck: f (f x) Abstraktion: \ f x -> f (f x) Mit Bezeichnervereinbarung: twice = \ f x -> f (f x) erg
MehrFunktionales Programmieren
Kapitel 3 3. Funktionales Programmieren 3.0 Übersicht 3. Funktionales Programmieren 3.0 Funktionales Programmieren 3. Funktionales Programmieren Grundkonzepte funktionaler Programmierung Zentrale Begriffe
MehrRente = laufende Zahlungen, die in regelmäßigen Zeitabschnitten (periodisch) wiederkehren Rentenperiode = Zeitabstand zwischen zwei Rentenzahlungen
5.2. entenrechnung Definition: ente = laufende Zahlungen, die in regelmäßigen Zeitabschnitten (periodisch) wiederkehren entenperiode = Zeitabstand zwischen zwei entenzahlungen Finanzmathematisch sind zwei
MehrComputeranwendung und Programmierung (CuP)
Computeranwendung und Programmierung (CuP) VO: Peter Auer (Informationstechnologie) UE: Norbert Seifter (Angewandet Mathematik) Organisatorisches (Vorlesung) Vorlesungszeiten Montag 11:15 12:45 Freitag
MehrDer Zwei-Quadrate-Satz von Fermat
Der Zwei-Quadrate-Satz von Fermat Proseminar: Das BUCH der Beweise Fridtjof Schulte Steinberg Institut für Informatik Humboldt-Universität zu Berlin 29.November 2012 1 / 20 Allgemeines Pierre de Fermat
MehrPrimzahlen und RSA-Verschlüsselung
Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also
MehrBinäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen
Binäre Bäume 1. Allgemeines Binäre Bäume werden grundsätzlich verwendet, um Zahlen der Größe nach, oder Wörter dem Alphabet nach zu sortieren. Dem einfacheren Verständnis zu Liebe werde ich mich hier besonders
MehrObjektorientierte Programmierung. Kapitel 12: Interfaces
12. Interfaces 1/14 Objektorientierte Programmierung Kapitel 12: Interfaces Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester 2012/13 http://www.informatik.uni-halle.de/ brass/oop12/
MehrGleichungen Lösen. Ein graphischer Blick auf Gleichungen
Gleichungen Lösen Was bedeutet es, eine Gleichung zu lösen? Was ist überhaupt eine Gleichung? Eine Gleichung ist, grundsätzlich eine Aussage über zwei mathematische Terme, dass sie gleich sind. Ein Term
MehrScala kann auch faul sein
Scala kann auch faul sein Kapitel 19 des Buches 1 Faulheit Faulheit ( lazy evaluation ) ist auch in C oder Java nicht unbekannt int x=0; if(x!=0 && 10/x>3){ System.out.println("In if"); } Nutzen der Faulheit?
Mehr1 topologisches Sortieren
Wolfgang Hönig / Andreas Ecke WS 09/0 topologisches Sortieren. Überblick. Solange noch Knoten vorhanden: a) Suche Knoten v, zu dem keine Kante führt (Falls nicht vorhanden keine topologische Sortierung
MehrIst Fernsehen schädlich für die eigene Meinung oder fördert es unabhängig zu denken?
UErörterung zu dem Thema Ist Fernsehen schädlich für die eigene Meinung oder fördert es unabhängig zu denken? 2000 by christoph hoffmann Seite I Gliederung 1. In zu großen Mengen ist alles schädlich. 2.
MehrErstellen von x-y-diagrammen in OpenOffice.calc
Erstellen von x-y-diagrammen in OpenOffice.calc In dieser kleinen Anleitung geht es nur darum, aus einer bestehenden Tabelle ein x-y-diagramm zu erzeugen. D.h. es müssen in der Tabelle mindestens zwei
MehrStatuten in leichter Sprache
Statuten in leichter Sprache Zweck vom Verein Artikel 1: Zivil-Gesetz-Buch Es gibt einen Verein der selbstbestimmung.ch heisst. Der Verein ist so aufgebaut, wie es im Zivil-Gesetz-Buch steht. Im Zivil-Gesetz-Buch
MehrJava Kurs für Anfänger Einheit 5 Methoden
Java Kurs für Anfänger Einheit 5 Methoden Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 22. Juni 2009 Inhaltsverzeichnis Methoden
MehrZeichen bei Zahlen entschlüsseln
Zeichen bei Zahlen entschlüsseln In diesem Kapitel... Verwendung des Zahlenstrahls Absolut richtige Bestimmung von absoluten Werten Operationen bei Zahlen mit Vorzeichen: Addieren, Subtrahieren, Multiplizieren
Mehr1 Vom Problem zum Programm
Hintergrundinformationen zur Vorlesung GRUNDLAGEN DER INFORMATIK I Studiengang Elektrotechnik WS 02/03 AG Betriebssysteme FB3 Kirsten Berkenkötter 1 Vom Problem zum Programm Aufgabenstellung analysieren
MehrSichere E-Mail Anleitung Zertifikate / Schlüssel für Kunden der Sparkasse Germersheim-Kandel. Sichere E-Mail. der
Sichere E-Mail der Nutzung von Zertifikaten / Schlüsseln zur sicheren Kommunikation per E-Mail mit der Sparkasse Germersheim-Kandel Inhalt: 1. Voraussetzungen... 2 2. Registrierungsprozess... 2 3. Empfang
MehrErweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:
VBA Programmierung mit Excel Schleifen 1/6 Erweiterung der Aufgabe Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: Es müssen also 11 (B L) x 35 = 385 Zellen berücksichtigt
Mehr15.3 Bedingte Wahrscheinlichkeit und Unabhängigkeit
5.3 Bedingte Wahrscheinlichkeit und Unabhängigkeit Einführendes Beispiel ( Erhöhung der Sicherheit bei Flugreisen ) Die statistische Wahrscheinlichkeit, dass während eines Fluges ein Sprengsatz an Bord
MehrDatentypen. Agenda für heute, 4. März, 2010. Pascal ist eine streng typisierte Programmiersprache
Agenda für heute, 4. März, 2010 Zusammengesetzte if-then-else-anweisungen Datentypen Pascal ist eine streng typisierte Programmiersprache Für jeden Speicherplatz muss ein Datentyp t (Datenformat) t) definiert
MehrONLINE-AKADEMIE. "Diplomierter NLP Anwender für Schule und Unterricht" Ziele
ONLINE-AKADEMIE Ziele Wenn man von Menschen hört, die etwas Großartiges in ihrem Leben geleistet haben, erfahren wir oft, dass diese ihr Ziel über Jahre verfolgt haben oder diesen Wunsch schon bereits
MehrTerme stehen für Namen von Objekten des Diskursbereichs (Subjekte, Objekte des natürlichsprachlichen Satzes)
Prädikatenlogik Man kann den natürlichsprachlichen Satz Die Sonne scheint. in der Prädikatenlogik beispielsweise als logisches Atom scheint(sonne) darstellen. In der Sprache der Prädikatenlogik werden
MehrAnmeldung zu Seminaren und Lehrgängen
Anmeldung zu Seminaren und Lehrgängen Seit Anfang 2013 erfolgen Anmeldungen zu Seminaren und Lehrgängen ausschließlich online über den Seminarkalender. Der Seminarkalender ist integriert in die Plattform
MehrRundung und Casting von Zahlen
W E R K S T A T T Rundung und Casting von Zahlen Intrexx 7.0 1. Einleitung In diesem Werkstattbeitrag erfahren Sie, wie Zahlenwerte speziell in Velocity, aber auch in Groovy, gerundet werden können. Für
MehrBENUTZER INFO ONLINE SHOP
BENUTZER INFO ONLINE SHOP Weyland GmbH Niederlassung Gleisdorf Möbelshop Mit Hilfe unseres neuen Online - Bestellsystems können Sie ab sofort alle Standard Plattenzuschnitte (mit Bekantung) bequem über
MehrJava Kurs für Anfänger Einheit 4 Klassen und Objekte
Java Kurs für Anfänger Einheit 4 Klassen und Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 13. Juni 2009 Inhaltsverzeichnis klasse
MehrEnigmail Konfiguration
Enigmail Konfiguration 11.06.2006 Steffen.Teubner@Arcor.de Enigmail ist in der Grundkonfiguration so eingestellt, dass alles funktioniert ohne weitere Einstellungen vornehmen zu müssen. Für alle, die es
MehrLehrer: Einschreibemethoden
Lehrer: Einschreibemethoden Einschreibemethoden Für die Einschreibung in Ihren Kurs gibt es unterschiedliche Methoden. Sie können die Schüler über die Liste eingeschriebene Nutzer Ihrem Kurs zuweisen oder
MehrMeinungen zur Altersvorsorge
Meinungen zur Altersvorsorge Datenbasis: 1.003 Befragte ab 18 Jahren, die nicht in Rente sind Erhebungszeitraum: 19. bis 22. März 2007 statistische Fehlertoleranz: +/- 3 Prozentpunkte Auftraggeber: komm.passion
Mehr1. Adressen für den Serienversand (Briefe Katalogdruck Werbung/Anfrage ) auswählen. Die Auswahl kann gespeichert werden.
Der Serienversand Was kann man mit der Maske Serienversand machen? 1. Adressen für den Serienversand (Briefe Katalogdruck Werbung/Anfrage ) auswählen. Die Auswahl kann gespeichert werden. 2. Adressen auswählen,
MehrVorkurs C++ Programmierung
Vorkurs C++ Programmierung Klassen Letzte Stunde Speicherverwaltung automatische Speicherverwaltung auf dem Stack dynamische Speicherverwaltung auf dem Heap new/new[] und delete/delete[] Speicherklassen:
MehrStand: 28.11.2012. Adressnummern ändern Modulbeschreibung
Seite 1 Inhalt Allgemein...3 Installation...3 manuelle Eingabe von alten und neuen Adressnummern...4 Vorbereiten von Adressnummern-Änderungen in Tabellen...5 Seite 2 Allgemein Das INKS-Modul ermöglicht
MehrOutlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang
sysplus.ch outlook - mail-grundlagen Seite 1/8 Outlook Mail-Grundlagen Posteingang Es gibt verschiedene Möglichkeiten, um zum Posteingang zu gelangen. Man kann links im Outlook-Fenster auf die Schaltfläche
MehrPlatinen mit dem HP CLJ 1600 direkt bedrucken ohne Tonertransferverfahren
Platinen mit dem HP CLJ 1600 direkt bedrucken ohne Tonertransferverfahren Um die Platinen zu bedrucken, muß der Drucker als allererstes ein wenig zerlegt werden. Obere und seitliche Abdeckungen entfernen:
MehrEinführung in die Programmierung
Name, Vorname Matrikelnummer Probeklausur zur Vorlesung Einführung in die Programmierung WS 2008/09 Dauer: 2 Stunden Hinweise: Schreiben Sie Ihren Namen und Ihre Matrikelnummer auf dieses Deckblatt und
MehrHilfe Bearbeitung von Rahmenleistungsverzeichnissen
Hilfe Bearbeitung von Rahmenleistungsverzeichnissen Allgemeine Hinweise Inhaltsverzeichnis 1 Allgemeine Hinweise... 3 1.1 Grundlagen...3 1.2 Erstellen und Bearbeiten eines Rahmen-Leistungsverzeichnisses...
MehrRepetitionsaufgaben Wurzelgleichungen
Repetitionsaufgaben Wurzelgleichungen Inhaltsverzeichnis A) Vorbemerkungen B) Lernziele C) Theorie mit Aufgaben D) Aufgaben mit Musterlösungen 4 A) Vorbemerkungen Bitte beachten Sie: Bei Wurzelgleichungen
Mehr1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:
Zählen und Zahlbereiche Übungsblatt 1 1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage: Für alle m, n N gilt m + n = n + m. in den Satz umschreiben:
MehrGüte von Tests. die Wahrscheinlichkeit für den Fehler 2. Art bei der Testentscheidung, nämlich. falsch ist. Darauf haben wir bereits im Kapitel über
Güte von s Grundlegendes zum Konzept der Güte Ableitung der Gütefunktion des Gauss im Einstichprobenproblem Grafische Darstellung der Gütefunktionen des Gauss im Einstichprobenproblem Ableitung der Gütefunktion
MehrAnleitung für die Online-Bewerbung über LSF auf Lehrveranstaltungen aller Lehramtsstudiengänge
Einloggen: Eingabe von Benutzername und Passwort Benutzername = Matrikelnummer (z.b. 999999) Passwort = Geburtsdatum (z.b. 31.12.1998) wird angezeigt als ********** Nach dem ersten Einloggen sollten sie
MehrSUDOKU - Strategien zur Lösung
SUDOKU Strategien v. /00 SUDOKU - Strategien zur Lösung. Naked Single (Eindeutiger Wert)? "Es gibt nur einen einzigen Wert, der hier stehen kann". Sind alle anderen Werte bis auf einen für eine Zelle unmöglich,
MehrUmzug der abfallwirtschaftlichen Nummern /Kündigung
Umzug der abfallwirtschaftlichen Nummern /Kündigung Um sich bei ebegleitschein abzumelden/ zu kündigen sind folgende Schritte notwendig: Schritt 1: Sie erteilen bifa Umweltinstitut GmbH den Auftrag, Ihre
MehrAbwesenheitsnotiz im Exchange Server 2010
Abwesenheitsnotiz im Exchange Server 2010 1.) Richten Sie die Abwesenheitsnotiz in Outlook 2010 ein und definieren Sie, an welche Absender diese gesendet werden soll. Klicken Sie dazu auf Datei -> Informationen
Mehr3 Wie bekommen Sie Passwortlevel 3 und einen Installateurscode?
Kurzanleitung Passwortlevel 3, Erhalt und Handhabung Inhaltsverzeichnis 1 Warum Passwortlevel 3...1 2 Gültigkeitsbereich...1 3 Wie bekommen Sie Passwortlevel 3 und einen Installateurscode?...1 4 Eingabe
MehrTutorium zur Mikroökonomie II WS 02/03 Universität Mannheim Tri Vi Dang. Aufgabenblatt 3 (KW 44) (30.10.02)
Tutorium zur Mikroökonomie II WS 02/03 Universität Mannheim Tri Vi Dang Aufgabenblatt 3 (KW 44) (30.10.02) Aufgabe 1: Preisdiskriminierung dritten Grades (20 Punkte) Ein innovativer Uni-Absolvent plant,
MehrLineare Funktionen. 1 Proportionale Funktionen 3 1.1 Definition... 3 1.2 Eigenschaften... 3. 2 Steigungsdreieck 3
Lineare Funktionen Inhaltsverzeichnis 1 Proportionale Funktionen 3 1.1 Definition............................... 3 1.2 Eigenschaften............................. 3 2 Steigungsdreieck 3 3 Lineare Funktionen
MehrGrundbegriffe der Informatik
Grundbegriffe der Informatik Einheit 15: Reguläre Ausdrücke und rechtslineare Grammatiken Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Wintersemester 2008/2009 1/25 Was kann man mit endlichen
MehrModul Datenbanksysteme 2 Prüfung skizzenhaft SS Aug. 2007. Name: Note:
1 Modul Datenbanksysteme 2 Prüfung skizzenhaft SS Aug. 2007 Name: Note: Nr. Aufgaben Max. Punkte Erreichte Punkte 1 Grundlagen ~ 10% Vgl. Hinweis unten 2 Integrität, Procedures, Triggers, Sichten ~ 20%
MehrBeschreibung von Werten: Beschreibung von Werten: (2) Begriffsklärung: (Ausdruck, expression) (2) Begriffsklärung: (Ausdruck, expression)
Beschreibung von Werten: Beschreibung von Werten: (2) mittels Konstanten oder Bezeichnern für Werte: 23 " Ich bin eine Zeichenreihe" True x durch direkte Anwendung von Funktionen: abs (-28382) "Urin" ++
MehrAnleitung über den Umgang mit Schildern
Anleitung über den Umgang mit Schildern -Vorwort -Wo bekommt man Schilder? -Wo und wie speichert man die Schilder? -Wie füge ich die Schilder in meinen Track ein? -Welche Bauteile kann man noch für Schilder
MehrKapitel MK:IV. IV. Modellieren mit Constraints
Kapitel MK:IV IV. Modellieren mit Constraints Einführung und frühe Systeme Konsistenz I Binarization Generate-and-Test Backtracking-basierte Verfahren Konsistenz II Konsistenzanalyse Weitere Analyseverfahren
MehrBruchrechnung Wir teilen gerecht auf
Bruchrechnung Wir teilen gerecht auf Minipizzen auf Personen. Bruchrechnung Wir teilen gerecht auf Minipizzen auf Personen. : (+) : + Wir teilen einen Teil Eine halbe Minipizza auf Personen. :? Wir teilen
MehrSkript und Aufgabensammlung Terme und Gleichungen Mathefritz Verlag Jörg Christmann Nur zum Privaten Gebrauch! Alle Rechte vorbehalten!
Mathefritz 5 Terme und Gleichungen Meine Mathe-Seite im Internet kostenlose Matheaufgaben, Skripte, Mathebücher Lernspiele, Lerntipps, Quiz und noch viel mehr http:// www.mathefritz.de Seite 1 Copyright
MehrGleichungen und Ungleichungen
Gleichungen Ungleichungen. Lineare Gleichungen Sei die Gleichung ax = b gegeben, wobei x die Unbekannte ist a, b reelle Zahlen sind. Diese Gleichung hat als Lösung die einzige reelle Zahl x = b, falls
MehrGrundlagen der Programmierung Prof. H. Mössenböck. 14. Schrittweise Verfeinerung
Grundlagen der Programmierung Prof. H. Mössenböck 14. Schrittweise Verfeinerung Entwurfsmethode für Algorithmen Wie kommt man von der Aufgabenstellung zum Programm? Beispiel geg.: Text aus Wörtern ges.:
MehrEinführung in die Java- Programmierung
Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Wichtig... Mittags keine Pommes... Praktikum A 230 C 207 (Madeleine + Esma) F 112 F 113
MehrWelche Bereiche gibt es auf der Internetseite vom Bundes-Aufsichtsamt für Flugsicherung?
Welche Bereiche gibt es auf der Internetseite vom Bundes-Aufsichtsamt für Flugsicherung? BAF ist die Abkürzung von Bundes-Aufsichtsamt für Flugsicherung. Auf der Internetseite gibt es 4 Haupt-Bereiche:
MehrVorratsgesellschaften Der schnelle Weg zum eigenen Unternehmen interna
Vorratsgesellschaften Der schnelle Weg zum eigenen Unternehmen interna Ihr persönlicher Experte Inhalt Einführung... 7 Vorratsgesellschaften sind Kapitalgesellschaften... 8 Die Grundlagen... 8 Was ist
MehrModellierung und Programmierung 1
Modellierung und Programmierung 1 Prof. Dr. Sonja Prohaska Computational EvoDevo Group Institut für Informatik Universität Leipzig 19. November 2015 Gültigkeitsbereich (Scope) von Variablen { int m; {
Mehr