Reguläre Ausdrücke. Prof.Dr.Christian Wagenknecht mit Beiträgen von Herrn Dr.Michael Hielscher

Größe: px
Ab Seite anzeigen:

Download "Reguläre Ausdrücke. Prof.Dr.Christian Wagenknecht mit Beiträgen von Herrn Dr.Michael Hielscher"

Transkript

1 Reguläre Ausdrücke Prof.Dr.Christian Wagenknecht mit Beiträgen von Herrn Dr.Michael Hielscher Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 1/44

2 Definition reguläre Ausdrücke für reguläre Sprachen Definition regulärer Sprachen mit... Chomsky-Typ-3-Grammatiken DEA NEA NEA ε Reguläre Ausdrücke stellen eine weitere Beschreibungsmöglichkeit regulärer Sprachen dar.... sind sehr kompakt und von daher in der Praxis sehr verbreitet. Was sind reguläre Ausdrücke? Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 2/44

3 Definition Reguläre Mengen Reguläre Mengen Def. reguläre Ausdrücke erfordert Begriff reguläre Menge Ziel: nur ganz wenige Basismengen und insgesamt nur drei Mengenoperationen verwenden Durch wiederholte und kombinierte Anwendung beliebige reguläre Menge erzeugen Es können nur reguläre Mengen entstehen. Die einzigen Basismengen sind: Die leere Menge, die also kein einziges Wort enthält, nicht einmal das leere Wort. {ε} Die Menge, die nur das leere Wort ε enthält. {a} Alle Einermengen, die nur jeweils genau ein einzeichiges Wort, das aus dem zugehörigen Alphabetzeichen besteht, enthalten. Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 3/44

4 Definition Reguläre Mengen Reguläre Mengen Die so definierten Basismengen sind reguläre Mengen. Durch Anwendung der folgenden Operationen (und nur durch diese) entstehen weitere reguläre Mengen: Vereinigung: A B = {w w A oder w B} Konkatenation: A B = {w = w 1 w 2 w 1 A, w 2 B} Kleene-Stern: A = A 0 A 1... A i... Auf die jeweils erzeugten Resultatmengen dürfen diese Operationen erneut angewandt werden, so dass wiederum reguläre Mengen über dem zugrunde liegenden Alphabet entstehen. Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 4/44

5 Definition Reguläre Mengen Reguläre Mengen Die Klasse aller auf diese Weise erzeugten Mengen nennt man reguläre Mengen (und nur diese). Die binäre Operation Verkettung (Konkatenation) wurde zunächst für Zeichen eingeführt und später auf Wörter und schließlich auf Mengen (Sprachen) ausgeweitet. M 1 M 2 = {w = w 1 w 2 w 1 M 1 und w 2 M 2 }, d.h. jedes Wort aus M 2 wird an jedes Wort aus M 1 angehangen. Das Operationszeichen wird vereinbarungsgemäß gerne weggelassen. Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 5/44

6 Definition Reguläre Mengen Operatoren Beispiel Man unterscheide Konkatenation und Vereinigung für zwei Mengen: {a} {b} = {a}{b} = {ab} aber {a} {b} = {a, b} Der Kleene a -Stern wurde im Zusammenhang mit dem Begriff der Wortmenge eingeführt. {a, b} = {ε, a, b, ab, ba, aa, bb, aaa, aab, aba,...} a sprich: klini Stephan Cole Kleene ( ) Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 6/44

7 Definition Reguläre Mengen Reguläre Sprachen Mit Hilfe von regulären Mengen kann man reguläre Sprachen definieren. Beispiel: ((({a}(({a} {b}) ))({b}{b}))(({a} {b}) )) Beschreibt die Menge aller Wörter über {a, b}, die mit a beginnen und zwei bs unmittelbar nebeneinander enthalten. Das kürzestes Wort, das auf dieses Muster (Pattern) passt, ist abb. Aber die Schreibweise ist sehr unübersichtlich, da sehr viele Klammern anfallen. Wenn wir die geschweiften Klammern weglassen würden, wäre der Ausdruck schon deutlich kürzer. Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 7/44

8 Definition Reguläre Mengen Reguläre Sprachen Mit Hilfe von regulären Mengen kann man reguläre Sprachen definieren. Beispiel: ((({a}(({a} {b}) ))({b}{b}))(({a} {b}) )) Beschreibt die Menge aller Wörter über {a, b}, die mit a beginnen und zwei bs unmittelbar nebeneinander enthalten. Das kürzestes Wort, das auf dieses Muster (Pattern) passt, ist abb. Aber die Schreibweise ist sehr unübersichtlich, da sehr viele Klammern anfallen. Wenn wir die geschweiften Klammern weglassen würden, wäre der Ausdruck schon deutlich kürzer. Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 7/44

9 Definition Reguläre Mengen Reguläre Sprachen Mit Hilfe von regulären Mengen kann man reguläre Sprachen definieren. Beispiel: ((({a}(({a} {b}) ))({b}{b}))(({a} {b}) )) Beschreibt die Menge aller Wörter über {a, b}, die mit a beginnen und zwei bs unmittelbar nebeneinander enthalten. Das kürzestes Wort, das auf dieses Muster (Pattern) passt, ist abb. Aber die Schreibweise ist sehr unübersichtlich, da sehr viele Klammern anfallen. Wenn wir die geschweiften Klammern weglassen würden, wäre der Ausdruck schon deutlich kürzer. Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 7/44

10 Definition Regulärer Ausdruck Reguläre Ausdruck Einermengen werden durch reguläre Ausdrücke (engl.: regular expression, kurz: RegExp oder Regex) beschrieben. Diese haben eine spezielle Symbolik. Die Mengenoperationen werden durch passende Operationen mit regulären Ausdrücken ersetzt. Symbole für reguläre Ausdrücke: Fettdruck (gelegentlich auch Unterstreichungen oder Farbe) (((a (a + b) ) (b b)) (a + b) ) Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 8/44

11 Definition Regulärer Ausdruck Definition Reguläre Ausdrücke über Σ sind wie folgt induktiv definiert. 1, ε und a, für jedes a Σ, sind reguläre Ausdrücke über Σ und bezeichnen die Mengen, {ε} bzw. {a}. 2 Seien u und v reguläre Ausdrücke über Σ und L(u) bzw. L(v) die zugehörigen Sprachen. Dann sind auch (u + v) = L(u) L(v), (u v) = L(u) L(v) und (u ) = L(u) sowie (v ) = L(v) reguläre Ausdrücke über Σ. 3 Nur die mit diesen Regeln erzeugten Ausdrücke sind reguläre Ausdrücke über Σ. x + = xx und x n = } x.{{.. x} werden zur Abkürzung gerne benutzt. n mal Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 9/44

12 Klammersparregeln komplexe reguläre Ausdrücke Klammersparregeln Bei komplexeren regulären Ausdrücken fallen sehr viele runde Klammern an, um die Auswertungsreihenfolge der entsprechenden Operationen festzulegen. Es bestehen folgende Proritäten (absteigend sortiert):,, +. Da Vereinigung und Konkatenation assoziative Operationen sind, dürfen die betreffenden Klammern einfach weggelassen werden. a(a + b) bb(a + b) Gut lesbar; sehr kompakt. Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 10/44

13 Äquivalente reguläre Ausdrücke Umformungsregeln Äquivalente reguläre Ausdrücke Wie bei Automaten gibt es mehr als einen regulären Ausdruck zur Definition einer bestimmten Sprache. Ähnlich wie bei äquivalenten Termumformungen dürfen folgende Gleichheiten benutzt werden. u, v und w seien reguläre Ausdrücke. 1 u = u = mit Erinnerung an die Multiplikation mit 0. 2 εu = uε = u mit Erinnerung an die Multiplikation mit 1. 3 = ε = ε 4 u + v = v + u Erinnerung an die Kommutativität der Addition. 5 u + = u Erinnerung an die Addition von 0. 6 u + u = u verstößt gegen die Analogie. 7 (u ) = u 8 u(v + w) = uv + uw mit Erinnerung an die Distributivität. 9 (uv) u = u(vu) 10 (u + v) = (u + v ) Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 11/44

14 Äquivalente reguläre Ausdrücke Umformungsregeln Übung Geben Sie einen regulären Ausdruck für {10, 11} an. (10+11) Gegeben sind L 1 = {10, 1} und L 2 = {011, 11}. Geben Sie einen regulären Ausdruck für L 1 L 2 an. = {10011, 1011, 111} = 1(00+0+ε)11 Geben Sie einen regulären Ausdruck an, der die Sprache L = {w {a, b} w beginnt oder endet mit a} beschreibt? Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 12/44

15 Äquivalente reguläre Ausdrücke Umformungsregeln Übung Geben Sie einen regulären Ausdruck für {10, 11} an. (10+11) Gegeben sind L 1 = {10, 1} und L 2 = {011, 11}. Geben Sie einen regulären Ausdruck für L 1 L 2 an. = {10011, 1011, 111} = 1(00+0+ε)11 Geben Sie einen regulären Ausdruck an, der die Sprache L = {w {a, b} w beginnt oder endet mit a} beschreibt? Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 12/44

16 Äquivalente reguläre Ausdrücke Umformungsregeln Übung Geben Sie einen regulären Ausdruck für {10, 11} an. (10+11) Gegeben sind L 1 = {10, 1} und L 2 = {011, 11}. Geben Sie einen regulären Ausdruck für L 1 L 2 an. = {10011, 1011, 111} = 1(00+0+ε)11 Geben Sie einen regulären Ausdruck an, der die Sprache L = {w {a, b} w beginnt oder endet mit a} beschreibt? Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 12/44

17 Äquivalente reguläre Ausdrücke Umformungsregeln Übung Geben Sie einen regulären Ausdruck für {10, 11} an. (10+11) Gegeben sind L 1 = {10, 1} und L 2 = {011, 11}. Geben Sie einen regulären Ausdruck für L 1 L 2 an. = {10011, 1011, 111} = 1(00+0+ε)11 Geben Sie einen regulären Ausdruck an, der die Sprache L = {w {a, b} w beginnt oder endet mit a} beschreibt? Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 12/44

18 Äquivalente reguläre Ausdrücke Umformungsregeln Übung Geben Sie einen regulären Ausdruck für {10, 11} an. (10+11) Gegeben sind L 1 = {10, 1} und L 2 = {011, 11}. Geben Sie einen regulären Ausdruck für L 1 L 2 an. = {10011, 1011, 111} = 1(00+0+ε)11 Geben Sie einen regulären Ausdruck an, der die Sprache L = {w {a, b} w beginnt oder endet mit a} beschreibt? Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 12/44

19 Äquivalente reguläre Ausdrücke Umformungsregeln Übung Geben Sie einen regulären Ausdruck für {10, 11} an. (10+11) Gegeben sind L 1 = {10, 1} und L 2 = {011, 11}. Geben Sie einen regulären Ausdruck für L 1 L 2 an. = {10011, 1011, 111} = 1(00+0+ε)11 Geben Sie einen regulären Ausdruck an, der die Sprache L = {w {a, b} w beginnt oder endet mit a} beschreibt? Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 12/44

20 Äquivalente reguläre Ausdrücke Umformungsregeln Übung Geben Sie einen regulären Ausdruck an für die Sprache aller Wörter über {a, b, c}, die die Zeichenkette bc nicht enthalten. Schwierig zu findende Lösung: c (b + ac ) Einen DEA kann man leicht angeben: Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 13/44

21 Äquivalente reguläre Ausdrücke Umformungsregeln Übung Geben Sie einen regulären Ausdruck an für die Sprache aller Wörter über {a, b, c}, die die Zeichenkette bc nicht enthalten. Schwierig zu findende Lösung: c (b + ac ) Einen DEA kann man leicht angeben: Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 13/44

22 Äquivalente reguläre Ausdrücke Umformungsregeln Übung Geben Sie einen regulären Ausdruck an für die Sprache aller Wörter über {a, b, c}, die die Zeichenkette bc nicht enthalten. Schwierig zu findende Lösung: c (b + ac ) Einen DEA kann man leicht angeben: Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 13/44

23 Äquivalente reguläre Ausdrücke Umformungsregeln Übung Geben Sie einen regulären Ausdruck an für die Sprache aller Wörter über {a, b, c}, die die Zeichenkette bc nicht enthalten. Schwierig zu findende Lösung: c (b + ac ) Einen DEA kann man leicht angeben: a,c b a,b,c b Start q0 q1 c q2 a Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 13/44

24 Äquivalente reguläre Ausdrücke Umformungsregeln Übung Nächster Schritt: DEA in regexp exportieren (AutoEdit) Entstandenen Ausdruck mit c (b + ac ) vergleichen (RegExpEdit): Beide Ausdrücke definieren die gleiche Sprache. Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 14/44

25 Äquivalente reguläre Ausdrücke Umformungsregeln Übung Nächster Schritt: DEA in regexp exportieren (AutoEdit) Entstandenen Ausdruck mit c (b + ac ) vergleichen (RegExpEdit): Beide Ausdrücke definieren die gleiche Sprache. Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 14/44

26 RegExp und Endliche Automaten Äquivalenz RegExp und Endliche Automaten Wir wollen nun zeigen, dass reguläre Ausdrücke genau die gleiche Sprachklasse definieren, wie endliche Automaten, nämlich reguläre Sprachen. Etwas formaler regelt dies der folgende Satz von Kleene. Satz Eine Sprache L wird von einem DEA M genau dann akzeptiert, wenn L durch einen regulären Ausdruck R über dem zu M gehörenden Eingabealphabet beschrieben werden kann. Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 15/44

27 RegExp und Endliche Automaten Äquivalenz Beweis Der Beweis erfolgt durch - Konstruktion von M aus R (1. Teil) und durch - Konstruktion von R aus M (2. Teil), wobei für beide Teile L(M) = L(R) = L gelten muss. Wir machen uns L NEAε L DEA zunutze. Es ist viel einfacher, einen zu R äquivalenten NEA ε zu konstruieren als einen dementsprechenden DEA. Ein solcher NEA ε besitzt genau einen Endzustand. Dies ist keine Einschränkung gegenüber der allgemeinen NEA-Definition, was wir im Folgenden zeigen werden. Satz Zu jedem NEA ε M gibt es einen äquivalenten NEA ε M mit genau einem Endzustand q f. Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 16/44

28 RegExp und Endliche Automaten Äquivalenz Beweis Man konstruiert M aus M, indem man für alle Endzustände q i von M spontane Übergänge δ (q i, ε) q f in M ergänzt. Es gilt E = {q f }. Beispiel: Start q0 0 q1 +, - 1,2,3,4,5,6,7,8,9 q2 1,2,3,4,5,6,7,8,9 q3 0,1,2,3,4,5,6,7,8,9 Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 17/44

29 RegExp und Endliche Automaten Äquivalenz Beweis Man konstruiert M aus M, indem man für alle Endzustände q i von M spontane Übergänge δ (q i, ε) q f in M ergänzt. Es gilt E = {q f }. Beispiel: Start q0 0 q1 ε +, - 1,2,3,4,5,6,7,8,9 qf ε q2 1,2,3,4,5,6,7,8,9 q3 0,1,2,3,4,5,6,7,8,9 Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 17/44

30 RegExp und Endliche Automaten Äquivalenz Beweis Teil 1: RegExp NEA ε Der reguläre Ausdruck beschreibt die leere Menge. Es gibt einen Anfangs- und einen Endzustand, aber es findet kein einziger Übergang statt. Da das Alphabet nach Definition nicht leer sein darf, verwenden wir im Folg. das Zeichen a. M = ({s, f }, {a}, δ, s, {f }), L(M) = Start s f s soll an Startzustand und f soll an Finalzustand erinnern. Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 18/44

31 RegExp und Endliche Automaten Äquivalenz Beweis Teil 1: RegExp NEA ε Für den regulären Ausdruck ε entsteht ein Automat, der nur das leere Wort akzeptiert. Start s ε f M = ({s, f }, {a}, δ, s, {f }), L(M) = {ε} Für alle Alphabetzeichen a ergibt sich jeweils der zu a gehörende NEA. Start s a f M = ({s, f }, {a}, δ, s, {f }), L(M) = {a} Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 19/44

32 RegExp und Endliche Automaten Äquivalenz Beweis Teil 1: RegExp NEA ε Um den zu a+b gehörenden NEA zu erzeugen, brauchen wir zwei neue Zustände s (Anfangszustand) und f (Endzustand des zu konstruierenden NEA ε ). Es erfolgen spontane Übergänge von s zu den Anfangszuständen s a und s b bzw. von den Endzuständen f a und f b der parallelgeschalteten Automaten zu f. s a a f a ε ε Start s f ε ε s b b f b M = ({s, s a, s b, f a, f b, f }, {a, b}, δ, s, {f }), L(M) = {a, b} Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 20/44

33 RegExp und Endliche Automaten Äquivalenz Beweis Teil 1: RegExp NEA ε Nun konstruieren wir einen NEA für a. ε s a a f a ε ε Start s ε f M = ({s, s a, f a, f }, {a}, δ, s, {f }), L(M) = {ε, a, aa, aaa,...} Ein NEA für a b = a b ergibt sich durch Verkettung der zugehörigen Automaten. Start s ε s a a fa ε s b b fb ε f M = ({s a, f a, s b, f b }, {a, b}, δ, s a, {f b }), L(M) = {ab} Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 21/44

34 RegExp und Endliche Automaten Äquivalenz Beweis Teil 1: RegExp NEA ε Mit der Angabe dieses allgemein gültigen Verfahrens zur Konstruktion eines äquivalenten NEA ε M aus einem gegebenen regulären Ausdruck R ist der erste Teil des Beweises beendet. Für komplexe reguläre Ausdrücke ergeben sich umfangreiche zusammengesetzte NEAs. Beispiel: a (b+c) Demo mit RegExp Edit ε ε ε s b b fb ε Start s ε s a a fa f ε ε s c c fc ε Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 22/44

35 RegExp und Endliche Automaten Äquivalenz Beweis Teil 2: DEA RegExp Nun beweisen wir Teil 2, indem wir aus einem gegebenen DEA M = ({q 1, q 2,..., q n }, Σ, δ, q 1, E) einen äquivalenten regulären Ausdruck R konstruieren. Wir benennen die Zustände eines Automaten um, wenn diese nicht q 1,..., q n heißen sollten. Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 23/44

36 RegExp und Endliche Automaten Äquivalenz Beweis Teil 2: DEA RegExp Wir definieren Mengen R k (i, j) = {w Σ ˆδ(q i, w) = q j, wobei für alle eingenommenen Zwischenzustände q z gilt: z k} induktiv über k = 0, 1,..., n 1, mit i, j = 1, 2,..., n. R k (i, j) enthält alle Wörter aus Σ, die M aus q i in q j überführen. Dabei dürfen nur Zwischenzustände eingenommen werden, deren Indices nicht größer als k sind. Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 24/44

37 RegExp und Endliche Automaten Äquivalenz Beweis Teil 2: DEA RegExp k = 0 bedeutet, dass es keine solchen Zwischenzustände gibt. q i a q j ohne Zwischenzustände a q i i=j Abbildung: Zwei Möglichkeiten für R 0 (i, j) {a δ(q i, a) = q j }, wenn i j; R 0 (i, j) = {a δ(q i, a) = q j } {ε}, wenn i = j. Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 25/44

38 RegExp und Endliche Automaten Äquivalenz Beweis Teil 2: DEA RegExp Wenn es einen Pfad von q i nach q j gibt, an dem keine Zwischenzustände q r mit r > k beteiligt sind, dann gibt es für den Zustand q k genau zwei Fälle. 1. Fall: q k liegt nicht auf dem Pfad. Dann liegt das Wort entlang des Pfades in R k 1 (i, j). 2. Fall: Der Pfad führt (mind.) einmal durch q k, für k = 1, 2,..., n. q i q k q j in R (i,k) k 1 in R (k,j) k 1 in R (k,k) k 1 R k (i, j) = R k 1 (i, j) R k 1 (i, k) R k 1 (k, k) R k 1 (k, j) Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 26/44

39 RegExp und Endliche Automaten Äquivalenz Beweis Teil 2: DEA RegExp Der die Sprache beschreibende reguläre Ausdruck ist R = R n (1, i). i, mit q i E Er ergibt sich aus der Summe (Vereinigung) aller regulären Ausdrücke R n (1, i) mit q i E. Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 27/44

40 RegExp und Endliche Automaten Transformation eines DEA in einen äquivalenten RegExp Beispiel 7.6, S. 113 Geg.: DEA M = ({q 1, q 2}, {0, 1}, δ, q 1, {q 2}) mit 1 0,1 Ges.: R = R 2(1, 2) Start q 1 0 q 2 R 2 (1, 2) = R 1 (1, 2) R 1 (1, 2) R 1 (2, 2) R 1 (2, 2) R 1 (1, 2) = R 0 (1, 2) R 0 (1, 1) R 0 (1, 1) R 0 (1, 2) R 0 (1, 2) = {0, 1} R 0 (1, 1) = {ε} R 1 (1, 2) = {0, 1} {ε} {ε} {0, 1} = {0, 1} R 1 (2, 2) = R 0 (2, 2) R 0 (2, 1) R 0 (1, 1) R 0 (1, 2) R 0 (2, 2) = {ε, 1} R 0 (2, 1) = {0} R 1 (2, 2) = {ε, 1} {0} {ε} {0, 1} = {ε, 1, 00, 01} R 2 (1, 2) = {0, 1} {0, 1} {ε, 1, 00, 01} {ε, 1, 00, 01} = (0 + 1) (ε ) (ε ) Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 28/44

41 RegExp und Endliche Automaten Äquivalenz Beschreibungsmittel für reguläre Sprachen Reguläre Ausdrücke ermöglichen sehr kompakte Beschreibungen regulärer Sprachen. NEA ε NEA rg RegExp DEA In der Praxis findet die Verarbeitung solcher Ausdrücke durch Transformation in jeweils zugehörige DEA s im Hintergrund statt. Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 29/44

42 Reguläre Ausdrücke in der Praxis Verwendung Reguläre Ausdrücke in der Praxis Wo werden RegExp eingesetzt? Auf der Kommandozeile werden RegExp für Suchpattern verwendet. In Editoren wie vi, emacs, Visual Studio,... In der Anwendungs- und Web-Programmierung zur Manipulation von Zeichenketten. Sie sind in Skriptsprachen, wie JavaScript, Perl, Tcl, awk oder Python, wie auch in höheren Programmiersprache, wie z.b. Java, C# oder Delphi integriert. Tutorial Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 30/44

43 Reguläre Ausdrücke in der Praxis Verwendung Reguläre Ausdrücke in der Praxis Wo werden RegExp eingesetzt? Auf der Kommandozeile werden RegExp für Suchpattern verwendet. In Editoren wie vi, emacs, Visual Studio,... In der Anwendungs- und Web-Programmierung zur Manipulation von Zeichenketten. Sie sind in Skriptsprachen, wie JavaScript, Perl, Tcl, awk oder Python, wie auch in höheren Programmiersprache, wie z.b. Java, C# oder Delphi integriert. Tutorial Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 30/44

44 Reguläre Ausdrücke in der Praxis Verwendung Reguläre Ausdrücke in der Praxis In allen diesen Anwendungsfeldern werden reguläre Ausdrücke zur Definition von Mustern benutzt, nach denen ein bestimmter Text durchsucht wird. Man nennt dies pattern matching. In der Praxis gibt es eine ganze Reihe zusätzlicher Metazeichen, wie [, ], (, ), {, },,?, +, *, ^, $, \ und., die in einer solchen Praxis-relevanten Syntax regulärer Ausdrücke verwendet werden können. Leider unterliegt diese Syntaxdefinition keiner Standardisierung, sodass die einzelnen Implementierungen (in verschiedenen Programmiersprachen) teilweise stark differieren. Wir beschränken uns daher auf einen typischen Kern. Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 31/44

45 Reguläre Ausdrücke in der Praxis Metazeichen Metazeichen Metazeichen Bedeutung.... steht für ein beliebiges Zeichen (außer \n und \r - siehe weiter unten). a*... steht für 0 bis beliebig viele Vorkommen von a. a+... steht für 1 bis beliebig viele Vorkommen von a. a?... steht für ein optionales Zeichen. Im Beispiel darf a auftreten oder ab auch nicht. (gleichbedeutend mit a{0,1}) {m,n}... steht für m bis n Vorkommen des Zeichens oder Metazeichens. {n}... steht für n Vorkommen des Zeichens oder Metazeichens. (ab)... Klammern erlauben Teilausdrücke zu einer Einheit zusammenzufassen um anschließend Operationen wie +, * oder für den gesamten Teilausdruck anzuwenden. Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 32/44

46 Reguläre Ausdrücke in der Praxis Metazeichen Metazeichen Metazeichen A B [ABC] [a-za-z] [ˆA] Bedeutung... steht für ein Zeichen A ODER B (kann auch auf komplexe geklammerte Teilausdrücke angewendet werden z.b.: (a b) [0-9]+). Eckige Klammern beschreiben eine Auswahl (Zeichenklasse). Dieses Beispiel steht also für genau ein Zeichen A,B oder C. (die Reihenfolge in einer Zeichklasse spielt dabei keine Rolle) Der Bindestrich innerhalb eckiger Klammern bestimmt einen Bereich. Daher steht dieses Beispiel für genau ein Zeichen von a bis z oder A bis Z. Das Dach (ˆ) negiert die Auswahl. Daher wird hier ein beliebiges Zeichen außer A beschrieben. Wird gern verwendet um verbotene Zeichen in einem Ausdruck zu beschreiben. Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 33/44

47 Reguläre Ausdrücke in der Praxis Metazeichen Metazeichen Zusätzlich wurden einige Macrozeichen für spezielle Tastaturzeichen definiert, die ansonsten schwer eingegeben werden können (etwa in einer Zeichenkette): Metazeichen Bedeutung \n ein Zeilenumbruch \r ein Wagenrücklauf (unter Windows steht \r\n für einen Zeilenumbruch) \t ein Tabulatorzeichen \s ein einzelnes Leerzeichen \d der reguläre Teilausdruck [0 9] \w ein Buchstabe, eine Ziffer oder der Unterstrich [a za Z 0 9] Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 34/44

48 Reguläre Ausdrücke in der Praxis Metazeichen Metazeichen Achtung: Ein markanter Unterschied ist die Verwendung des Metazeichens +, wie in a+ für aa*. Da die Eingabe a + in Programmtexten so nicht möglich ist, schreibt man a+. Dies ist zwar vernünftig, hat aber zur Folge, dass die ursprüngliche Bedeutung des Zeichens + als oder, wie wir es aus der Definition kennen, nun durch ein anderes Symbol beschrieben werden muss. Hierfür hat man mit ein Symbol gewählt, welches wir in der BNF zur Grammatiknotation für alternative Regeln verwenden. Anstatt (α+β) müssen wir also (α β) schreiben. Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 35/44

49 Reguläre Ausdrücke in der Praxis Metazeichen Metazeichen Im Folgenden geben wir einige Beispiele für syntaktisch korrekte reguläre Ausdrücke und die damit jeweils beschriebene Sprache an.... trifft 3 beliebige Zeichen (außer \r und \n).{1,5} trifft 1,2,3,4 oder 5 beliebige Zeichen (außer \r und \n) [0-9]+ trifft eine beliebig(mindestens ein Zeichen) lange Ziffernfolge wie etwa: oder aber auch 0 a*b trifft beliebig viele a (oder keins) gefolgt von genau einem b (a*) (b*) trifft beliebig viele a ODER beliebig viele b oder auch das leere Wort! [1-9][0-9]* trifft eine beliebig lange Ziffernfolge aber ohne vorangestellte Nullen. [\r\t\n\s] trifft ein typisches Whitespace [1-5]0 trifft genau die Ziffernfolgen 10, 20, 30, 40 oder 50. Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 36/44

50 Reguläre Ausdrücke in der Praxis Metazeichen Escape Möchte man das Tastaturzeichen? mit einem regulären Ausdruck beschreiben, muss das Symbol \ (Backslash) vor das Metazeichen gesetzt werden, um dessen Bedeutung (Option) aufzuheben: also \?. Wollen wir beispielsweise den arithmetischen Ausdruck ( ) 4 mit einem regulären Ausdruck erkennen, so eignet sich der folgende dafür: \([0-9]+\+[0-9]+\)\*[0-9] Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 37/44

51 Reguläre Ausdrücke in der Praxis Anwendungsbeispiele Eingabevalidierung Ein typisches Anwendungsbeispiel ist die Eingabevalidierung bei graphischen Bedienoberflächen sowohl in Webanwendungen als auch in Desktopanwendungen. Beispiel: Meldet man sich etwa bei Wikipedia an, wird eine gültige adresse gefordert. Die Webanwendung muss also überprüfen ob eine gültige adresse eingegeben wurde oder nicht. Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 38/44

52 Reguläre Ausdrücke in der Praxis Anwendungsbeispiele Anwendungsbeispiele Für diese Überprüfung könnten wir einen regulären Ausdruck verwenden. Dieser ist zwar komplex und schwierig leserbar jedoch sehr kompakt und leistungsfähig: [a-za-z0-9\. Dabei steht der erste Teil bis zum für eine Folge von Zeichen die in URL s im Allgemeinen erlaubt sind. Nach folgen mögliche Subdomains, der Domainname und eine zwei- bis vierstellige Landeskennung, wie.de. Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 39/44

53 Reguläre Ausdrücke in der Praxis Anwendungsbeispiele XML Schemas Bei den Sprachübersetzern haben wir XML und die Verwendung von XML Schemas angesprochen. Auch hier steht die Validierung von Daten im Mittelpunkt, nämlich von XML-Daten. Mit Hilfe von regulären Ausdrücken können ganz bestimmte Einschränkungen für Attribute definiert werden. Beispiel: Postleitzahl als neuer Datentyp im XML-Schema <xsd:simpletype name="plz"> <xsd:restriction base="xsd:string"> <xsd:pattern value="[a-z]{1,2}\-[0-9]{5}"/> </xsd:restriction> </xsd:simpletype> Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 40/44

54 Reguläre Ausdrücke in der Praxis Anwendungsbeispiele XML Schemas Beispiel 2: Ein Datentyp Passwort soll definiert werden. Ein Passwort ist (hier) eine Zeichenkette der Mindestlänge 5, die mindestens einen Buchstaben und mindestens eine Ziffer enthält. <xsd:simpletype name="passwort"> <xsd:restriction base="xsd:string"> <xsd:pattern value="...+"/> <xsd:pattern value=".*[0-9].*"/> <xsd:pattern value=".*[a-za-z].*"/> </xsd:restriction> </xsd:simpletype> Nur wenn alle pattern das Eingabewort matchen, ist die Eingabe zulässig (logisches UND). Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 41/44

55 Reguläre Ausdrücke in der Praxis Anwendung in Scannergeneratoren Anwendung in Scannergeneratoren Erinnern wir uns an unseren Zeichenroboter ZR und unser Ziel einen Übersetzer für diese Sprache herzustellen. Bei Sprachübersetzern hatten wir die Aufgabenteilung von Scanner und Parser besprochen. Die regulären Teilgrammatiken einer Sprache wurden dabei zum Scanner zusammengefasst. Dadurch entstand die reduzierte Grammatik G für ZR, in der die vom Scanner behandelten Bausteine als Terminale erscheinen. Nachdem wir uns mit endlichen Automaten beschäftigt haben, ist auch klar, dass ein Scanner eine Komposition diverser DEAs ist. Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 42/44

56 Reguläre Ausdrücke in der Praxis Anwendung in Scannergeneratoren Anwendung in Scannergeneratoren Wir können kleine Teilgrammatiken, wie etwa für Zahl und Farbwert, mit Hilfe regulärer Ausdrücke definieren. [1-9][0-9] blau rot gruen gelb schwarz AtoCC bietet mit VCC ein Werkzeug zur automatisierten Herstellung von Compilern an. Ein Bestandteil ist das Erzeugen von Scannern als zusammengesetzte DEAs. Wir werden uns zunächst auf diesen Teil beschränken und einen entwickelten Scanner auf beliebige Eingabetexte anwenden (Scanner-Simulation). Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 43/44

57 Reguläre Ausdrücke in der Praxis Anwendung in Scannergeneratoren Anwendung in Scannergeneratoren Scanner sind zusammengefügte DEAs. Zum Einstieg in den jeweiligen DEA-Strang ist es notwendig, dass sich die Initialzeichen unterscheiden. Aber dies ist häufig nicht möglich. Beispiel: begin als Schlüsselwort und begi oder begina als Variablennamen führt zu Überlappungen. Gemeinsame Token-Präfixe, d.h. sich von links her teilweise überlappende Lexeme, werden nach folgenden Prinzipien verarbeitet: 1 Das längste passende Anfangsteilwort bestimmt die Tokenklasse. Dabei spielt es keine Rolle, an welcher Stelle die betrachtete Tokenklasse definiert wurde. 2 Passt ein und dasselbe Lexem zu mehreren Tokenklassen, so wird die (von oben nach unten) zuerst definierte genommen. Prof.Dr.Chr. Wagenknecht Formale Sprachen und Automaten 44/44

Programmiersprachen und Übersetzer

Programmiersprachen 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

Mehr

Grundbegriffe der Informatik

Grundbegriffe 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

Mehr

Motivation. Formale Grundlagen der Informatik 1 Kapitel 5 Kontextfreie Sprachen. Informales Beispiel. Informales Beispiel.

Motivation. Formale Grundlagen der Informatik 1 Kapitel 5 Kontextfreie Sprachen. Informales Beispiel. Informales Beispiel. Kontextfreie Kontextfreie Motivation Formale rundlagen der Informatik 1 Kapitel 5 Kontextfreie Sprachen Bisher hatten wir Automaten, die Wörter akzeptieren Frank Heitmann heitmann@informatik.uni-hamburg.de

Mehr

Formale Sprachen und Grammatiken

Formale Sprachen und Grammatiken Formale Sprachen und Grammatiken Jede Sprache besitzt die Aspekte Semantik (Bedeutung) und Syntax (formaler Aufbau). Die zulässige und korrekte Form der Wörter und Sätze einer Sprache wird durch die Syntax

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als

Mehr

Theoretische Informatik I

Theoretische Informatik I Theoretische Informatik I Einheit 2.4 Grammatiken 1. Arbeitsweise 2. Klassifizierung 3. Beziehung zu Automaten Beschreibungsformen für Sprachen Mathematische Mengennotation Prädikate beschreiben Eigenschaften

Mehr

4. AUSSAGENLOGIK: SYNTAX. Der Unterschied zwischen Objektsprache und Metasprache lässt sich folgendermaßen charakterisieren:

4. 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

Mehr

1 Mathematische Grundlagen

1 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.

Mehr

Theorie der Informatik

Theorie der Informatik Theorie der Informatik 6. Formale Sprachen und Grammatiken Malte Helmert Gabriele Röger Universität Basel 17. März 2014 Einführung Beispiel: Aussagenlogische Formeln Aus dem Logikteil: Definition (Syntax

Mehr

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:

1. 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:

Mehr

Grammatiken. Einführung

Grammatiken. Einführung Einführung Beispiel: Die arithmetischen Ausdrücke über der Variablen a und den Operationen + und können wie folgt definiert werden: a, a + a und a a sind arithmetische Ausdrücke Wenn A und B arithmetische

Mehr

Basis und Dimension. Als nächstes wollen wir die wichtigen Begriffe Erzeugendensystem und Basis eines Vektorraums definieren.

Basis und Dimension. Als nächstes wollen wir die wichtigen Begriffe Erzeugendensystem und Basis eines Vektorraums definieren. Basis und Dimension Als nächstes wollen wir die wichtigen Begriffe Erzeugendensystem und Basis eines Vektorraums definieren. Definition. Sei V ein K-Vektorraum und (v i ) i I eine Familie von Vektoren

Mehr

Mathematische Grundlagen der Informatik 2

Mathematische Grundlagen der Informatik 2 Zusammenfassung Math2I Mathematische Grundlagen der Informatik 2 Emanuel Duss emanuel.duss@gmail.com 12. April 2013 1 Zusammenfassung Math2I Mathematische Grundlagen der Informatik 2 Dieses Dokument basiert

Mehr

Grundlagen Theoretischer Informatik I SoSe 2011 in Trier. Henning Fernau Universität Trier fernau@uni-trier.de

Grundlagen Theoretischer Informatik I SoSe 2011 in Trier. Henning Fernau Universität Trier fernau@uni-trier.de Grundlagen Theoretischer Informatik I SoSe 2011 in Trier Henning Fernau Universität Trier fernau@uni-trier.de 1 Grundlagen Theoretischer Informatik I Gesamtübersicht Organisatorisches; Einführung Logik

Mehr

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster Es gibt in Excel unter anderem die so genannten Suchfunktionen / Matrixfunktionen Damit können Sie Werte innerhalb eines bestimmten Bereichs suchen. Als Beispiel möchte ich die Funktion Sverweis zeigen.

Mehr

Grundlagen der Theoretischen Informatik, SoSe 2008

Grundlagen 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)

Mehr

Einführung in die Algebra

Einfü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

Mehr

Mathematik: Mag. Schmid Wolfgang Arbeitsblatt 3 1. Semester ARBEITSBLATT 3 RECHNEN MIT GANZEN ZAHLEN

Mathematik: Mag. Schmid Wolfgang Arbeitsblatt 3 1. Semester ARBEITSBLATT 3 RECHNEN MIT GANZEN ZAHLEN ARBEITSBLATT 3 RECHNEN MIT GANZEN ZAHLEN Wir wollen nun die Rechengesetze der natürlichen Zahlen auf die Zahlenmenge der ganzen Zahlen erweitern und zwar so, dass sie zu keinem Widerspruch mit bisher geltenden

Mehr

Zeichen bei Zahlen entschlüsseln

Zeichen 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

Mehr

2.11 Kontextfreie Grammatiken und Parsebäume

2.11 Kontextfreie Grammatiken und Parsebäume 2.11 Kontextfreie Grammatiken und Parsebäume Beispiel: Beispiel (Teil 3): Beweis für L(G) L: Alle Strings aus L der Länge 0 und 2 sind auch in L(G). Als Induktionsannahme gehen wir davon aus, dass alle

Mehr

Datenbanken Kapitel 2

Datenbanken 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,

Mehr

1. Formale Sprachen 1.2 Grammatiken formaler Sprachen

1. Formale Sprachen 1.2 Grammatiken formaler Sprachen 1. Formale Sprachen 1.2 Grammatiken formaler Sprachen Die Regeln zur Bildung korrekter Wörter einer Sprache kann man in einer natürlichen Sprache formulieren. Da dies jedoch wieder Mehrdeutigkeiten mit

Mehr

Primzahlen und RSA-Verschlüsselung

Primzahlen 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

Mehr

Vorlesung Theoretische Informatik

Vorlesung Theoretische Informatik Vorlesung Theoretische Informatik Automaten und Formale Sprachen Hochschule Reutlingen Fakultät für Informatik Masterstudiengang Wirtschaftsinformatik überarbeitet von F. Laux (Stand: 09.06.2010) Sommersemester

Mehr

Web-Kürzel. Krishna Tateneni Yves Arrouye Deutsche Übersetzung: Stefan Winter

Web-Kürzel. Krishna Tateneni Yves Arrouye Deutsche Übersetzung: Stefan Winter Krishna Tateneni Yves Arrouye Deutsche Übersetzung: Stefan Winter 2 Inhaltsverzeichnis 1 Web-Kürzel 4 1.1 Einführung.......................................... 4 1.2 Web-Kürzel.........................................

Mehr

Einführung in. Logische Schaltungen

Einführung in. Logische Schaltungen Einführung in Logische Schaltungen 1/7 Inhaltsverzeichnis 1. Einführung 1. Was sind logische Schaltungen 2. Grundlegende Elemente 3. Weitere Elemente 4. Beispiel einer logischen Schaltung 2. Notation von

Mehr

Antrag für ein Schlichtungs-Verfahren

Antrag für ein Schlichtungs-Verfahren Eingangsstempel Antrag für ein Schlichtungs-Verfahren Dieser Antrag ist in Leichter Sprache geschrieben. Das sieht man auch am gelben, runden Zeichen. Im Text finden Sie immer wieder unterstrichene Wörter.

Mehr

1 topologisches Sortieren

1 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

Mehr

Leichte-Sprache-Bilder

Leichte-Sprache-Bilder Leichte-Sprache-Bilder Reinhild Kassing Information - So geht es 1. Bilder gucken 2. anmelden für Probe-Bilder 3. Bilder bestellen 4. Rechnung bezahlen 5. Bilder runterladen 6. neue Bilder vorschlagen

Mehr

Informatik IC2. Balazs Simon 2005.03.26.

Informatik IC2. Balazs Simon 2005.03.26. Informatik IC2 Balazs Simon 2005.03.26. Inhaltsverzeichnis 1 Reguläre Sprachen 3 1.1 Reguläre Sprachen und endliche Automaten...................... 3 1.2 Determinisieren.....................................

Mehr

Informationsblatt Induktionsbeweis

Informationsblatt 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

Mehr

Die Gleichung A x = a hat für A 0 die eindeutig bestimmte Lösung. Für A=0 und a 0 existiert keine Lösung.

Die Gleichung A x = a hat für A 0 die eindeutig bestimmte Lösung. Für A=0 und a 0 existiert keine Lösung. Lineare Gleichungen mit einer Unbekannten Die Grundform der linearen Gleichung mit einer Unbekannten x lautet A x = a Dabei sind A, a reelle Zahlen. Die Gleichung lösen heißt, alle reellen Zahlen anzugeben,

Mehr

4.9 Deterministische Kellerautomaten Wir haben bereits definiert: Ein PDA heißt deterministisch (DPDA), falls

4.9 Deterministische Kellerautomaten Wir haben bereits definiert: Ein PDA heißt deterministisch (DPDA), falls 4.9 Deterministische Kellerautomaten Wir haben bereits definiert: Ein PDA heißt deterministisch (DPDA), falls δ(q, a, Z) + δ(q, ɛ, Z) 1 (q, a, Z) Q Σ. Die von einem DPDA, der mit leerem Keller akzeptiert,

Mehr

Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = 0.51129 Euro ergeben.

Der 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.

Mehr

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Outlook. 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

Mehr

Data Mining: Einige Grundlagen aus der Stochastik

Data Mining: Einige Grundlagen aus der Stochastik Data Mining: Einige Grundlagen aus der Stochastik Hagen Knaf Studiengang Angewandte Mathematik Hochschule RheinMain 21. Oktober 2015 Vorwort Das vorliegende Skript enthält eine Zusammenfassung verschiedener

Mehr

4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes.

4. 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

Mehr

4 Aufzählungen und Listen erstellen

4 Aufzählungen und Listen erstellen 4 4 Aufzählungen und Listen erstellen Beim Strukturieren von Dokumenten und Inhalten stellen Listen und Aufzählungen wichtige Werkzeuge dar. Mit ihnen lässt sich so ziemlich alles sortieren, was auf einer

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 12.01.2012 INSTITUT FÜR THEORETISCHE 0 KIT 12.01.2012 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der Informatik

Mehr

Kapitel 4. Einführung in den Scannergenerator Flex. Einführung in den Scannergenerator Flex Wintersemester 2008/09 1 / 9

Kapitel 4. Einführung in den Scannergenerator Flex. Einführung in den Scannergenerator Flex Wintersemester 2008/09 1 / 9 Kapitel 4 Einführung in den Scannergenerator Flex Einführung in den Scannergenerator Flex Wintersemester 2008/09 1 / 9 Generatoren für die lexikalische Analyse Scannergeneratoren werden eingesetzt um die

Mehr

M. Graefenhan 2000-12-07. Übungen zu C. Blatt 3. Musterlösung

M. Graefenhan 2000-12-07. Übungen zu C. Blatt 3. Musterlösung M. Graefenhan 2000-12-07 Aufgabe Lösungsweg Übungen zu C Blatt 3 Musterlösung Schreiben Sie ein Programm, das die Häufigkeit von Zeichen in einem eingelesenen String feststellt. Benutzen Sie dazu ein zweidimensionales

Mehr

syntax.tex Eine Übersicht

syntax.tex Eine Übersicht syntax.tex Eine Übersicht Bernd Worsch 7. Juli 1997 Inhaltsverzeichnis 1 Einleitung 1 2 Bevor es funktioniert... 1 3 Grundelemente von syntax.tex 1 4 Strukturelemente von syntax.tex 3 5 Setzen von Syntaxdiagrammen

Mehr

Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen 19

Theoretische Informatik 2 (WS 2006/07) Automatentheorie und Formale Sprachen 19 Inhalt 1 inführung 2 Automatentheorie und ormale prachen Grammatiken Reguläre prachen und endliche Automaten Kontextfreie prachen und Kellerautomaten Kontextsensitive und yp 0-prachen 3 Berechenbarkeitstheorie

Mehr

Alle Schlüssel-Karten (blaue Rückseite) werden den Schlüssel-Farben nach sortiert und in vier getrennte Stapel mit der Bildseite nach oben gelegt.

Alle Schlüssel-Karten (blaue Rückseite) werden den Schlüssel-Farben nach sortiert und in vier getrennte Stapel mit der Bildseite nach oben gelegt. Gentlemen", bitte zur Kasse! Ravensburger Spiele Nr. 01 264 0 Autoren: Wolfgang Kramer und Jürgen P. K. Grunau Grafik: Erhard Dietl Ein Gaunerspiel für 3-6 Gentlemen" ab 10 Jahren Inhalt: 35 Tresor-Karten

Mehr

proles-login. Inhalt [Dokument: L201401-1018 / v1.0 vom 16.01.2014]

proles-login. Inhalt [Dokument: L201401-1018 / v1.0 vom 16.01.2014] proles-login. [Dokument: L201401-1018 / v1.0 vom 16.01.2014] Inhalt 1. Einleitung 2 2. email-adresse registrieren 2 3. Benutzerinformationen des Mitarbeiters 3 4. Passwort-Rücksetzung 4 5. Passwort ändern

Mehr

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b AGROPLUS Buchhaltung Daten-Server und Sicherheitskopie Version vom 21.10.2013b 3a) Der Daten-Server Modus und der Tresor Der Daten-Server ist eine Betriebsart welche dem Nutzer eine grosse Flexibilität

Mehr

Theoretische Informatik SS 04 Übung 1

Theoretische Informatik SS 04 Übung 1 Theoretische Informatik SS 04 Übung 1 Aufgabe 1 Es gibt verschiedene Möglichkeiten, eine natürliche Zahl n zu codieren. In der unären Codierung hat man nur ein Alphabet mit einem Zeichen - sagen wir die

Mehr

IT-Basics 2. DI Gerhard Fließ

IT-Basics 2. DI Gerhard Fließ IT-Basics 2 DI Gerhard Fließ Wer bin ich? DI Gerhard Fließ Telematik Studium an der TU Graz Softwareentwickler XiTrust www.xitrust.com www.tugraz.at Worum geht es? Objektorientierte Programmierung Konzepte

Mehr

Informatik A ( Frank Hoffmann)

Informatik A ( Frank Hoffmann) Teillösungen zum 1. Aufgabenblatt zur Vorlesung Informatik A ( Frank Hoffmann) 1. Improvisieren Stellen Sie die Zahl 6 dar durch einen Ausdruck, der genau dreimal die Ziffer i enthält und ansonsten neben

Mehr

Professionelle Seminare im Bereich MS-Office

Professionelle 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

Mehr

Kurzanleitung fu r Clubbeauftragte zur Pflege der Mitgliederdaten im Mitgliederbereich

Kurzanleitung fu r Clubbeauftragte zur Pflege der Mitgliederdaten im Mitgliederbereich Kurzanleitung fu r Clubbeauftragte zur Pflege der Mitgliederdaten im Mitgliederbereich Mitgliederbereich (Version 1.0) Bitte loggen Sie sich in den Mitgliederbereich mit den Ihnen bekannten Zugangsdaten

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Tutorium 27 29..24 FAKULTÄT FÜR INFORMATIK KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Definition

Mehr

Wurzeln als Potenzen mit gebrochenen Exponenten. Vorkurs, Mathematik

Wurzeln als Potenzen mit gebrochenen Exponenten. Vorkurs, Mathematik Wurzeln als Potenzen mit gebrochenen Exponenten Zur Einstimmung Wir haben die Formel benutzt x m n = x m n nach der eine Exponentialzahl potenziert wird, indem man die Exponenten multipliziert. Dann sollte

Mehr

Eine Logikschaltung zur Addition zweier Zahlen

Eine Logikschaltung zur Addition zweier Zahlen Eine Logikschaltung zur Addition zweier Zahlen Grundlegender Ansatz für die Umsetzung arithmetischer Operationen als elektronische Schaltung ist die Darstellung von Zahlen im Binärsystem. Eine Logikschaltung

Mehr

Falten regelmäßiger Vielecke

Falten regelmäßiger Vielecke Blatt 1 Gleichseitige Dreiecke Ausgehend von einem quadratischen Stück Papier kann man ohne weiteres Werkzeug viele interessante geometrische Figuren nur mit den Mitteln des Papierfaltens (Origami) erzeugen.

Mehr

Lineare Gleichungssysteme

Lineare Gleichungssysteme Lineare Gleichungssysteme 1 Zwei Gleichungen mit zwei Unbekannten Es kommt häufig vor, dass man nicht mit einer Variablen alleine auskommt, um ein Problem zu lösen. Das folgende Beispiel soll dies verdeutlichen

Mehr

Rundung und Casting von Zahlen

Rundung 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

Mehr

SANDBOXIE konfigurieren

SANDBOXIE konfigurieren SANDBOXIE konfigurieren für Webbrowser und E-Mail-Programme Dies ist eine kurze Anleitung für die grundlegenden folgender Programme: Webbrowser: Internet Explorer, Mozilla Firefox und Opera E-Mail-Programme:

Mehr

Was meinen die Leute eigentlich mit: Grexit?

Was meinen die Leute eigentlich mit: Grexit? Was meinen die Leute eigentlich mit: Grexit? Grexit sind eigentlich 2 Wörter. 1. Griechenland 2. Exit Exit ist ein englisches Wort. Es bedeutet: Ausgang. Aber was haben diese 2 Sachen mit-einander zu tun?

Mehr

3.2 Spiegelungen an zwei Spiegeln

3.2 Spiegelungen an zwei Spiegeln 3 Die Theorie des Spiegelbuches 45 sehen, wenn die Person uns direkt gegenüber steht. Denn dann hat sie eine Drehung um die senkrechte Achse gemacht und dabei links und rechts vertauscht. 3.2 Spiegelungen

Mehr

Sich einen eigenen Blog anzulegen, ist gar nicht so schwer. Es gibt verschiedene Anbieter. www.blogger.com ist einer davon.

Sich einen eigenen Blog anzulegen, ist gar nicht so schwer. Es gibt verschiedene Anbieter. www.blogger.com ist einer davon. www.blogger.com Sich einen eigenen Blog anzulegen, ist gar nicht so schwer. Es gibt verschiedene Anbieter. www.blogger.com ist einer davon. Sie müssen sich dort nur ein Konto anlegen. Dafür gehen Sie auf

Mehr

Erstellen von x-y-diagrammen in OpenOffice.calc

Erstellen 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

Mehr

Wie Sie beliebig viele PINs, die nur aus Ziffern bestehen dürfen, mit einem beliebigen Kennwort verschlüsseln: Schritt 1

Wie Sie beliebig viele PINs, die nur aus Ziffern bestehen dürfen, mit einem beliebigen Kennwort verschlüsseln: Schritt 1 Wie Sie beliebig viele PINs, die nur aus Ziffern bestehen dürfen, mit einem beliebigen Kennwort verschlüsseln: Schritt 1 Zunächst einmal: Keine Angst, die Beschreibung des Verfahrens sieht komplizierter

Mehr

Geld wechseln kann als Visualisierung des Zehnerübergangs dienen. Die Zwischengrössen (CHF 2.-, 5.-, 20.-, 50.-) weglassen.

Geld wechseln kann als Visualisierung des Zehnerübergangs dienen. Die Zwischengrössen (CHF 2.-, 5.-, 20.-, 50.-) weglassen. E2 Rechnungen verstehen plus minus Verständnisaufbau Geld wechseln Geld wechseln kann als Visualisierung des Zehnerübergangs dienen. Die Zwischengrössen (CHF 2.-, 5.-, 20.-, 50.-) weglassen. Ich bezahle

Mehr

Ohne Fehler geht es nicht Doch wie viele Fehler sind erlaubt?

Ohne Fehler geht es nicht Doch wie viele Fehler sind erlaubt? Ohne Fehler geht es nicht Doch wie viele Fehler sind erlaubt? Behandelte Fragestellungen Was besagt eine Fehlerquote? Welche Bezugsgröße ist geeignet? Welche Fehlerquote ist gerade noch zulässig? Wie stellt

Mehr

GEONET Anleitung für Web-Autoren

GEONET Anleitung für Web-Autoren GEONET Anleitung für Web-Autoren Alfred Wassermann Universität Bayreuth Alfred.Wassermann@uni-bayreuth.de 5. Mai 1999 Inhaltsverzeichnis 1 Technische Voraussetzungen 1 2 JAVA-Programme in HTML-Seiten verwenden

Mehr

Grundlagen der Informatik II. Teil I: Formale Modelle der Informatik

Grundlagen der Informatik II. Teil I: Formale Modelle der Informatik Grundlagen der Informatik II Teil I: Formale Modelle der Informatik 1 Einführung GdInfoII 1-2 Ziele/Fragestellungen der Theoretischen Informatik 1. Einführung abstrakter Modelle für informationsverarbeitende

Mehr

Einfache kryptographische Verfahren

Einfache kryptographische Verfahren Einfache kryptographische Verfahren Prof. Dr. Hagen Knaf Studiengang Angewandte Mathematik 26. April 2015 c = a b + a b + + a b 1 11 1 12 2 1n c = a b + a b + + a b 2 21 1 22 2 2n c = a b + a b + + a b

Mehr

Also kann nur A ist roter Südler und B ist grüner Nordler gelten.

Also kann nur A ist roter Südler und B ist grüner Nordler gelten. Aufgabe 1.1: (4 Punkte) Der Planet Og wird von zwei verschiedenen Rassen bewohnt - dem grünen und dem roten Volk. Desweiteren sind die Leute, die auf der nördlichen Halbkugel geboren wurden von denen auf

Mehr

Registrierung am Elterninformationssysytem: ClaXss Infoline

Registrierung am Elterninformationssysytem: ClaXss Infoline elektronisches ElternInformationsSystem (EIS) Klicken Sie auf das Logo oder geben Sie in Ihrem Browser folgende Adresse ein: https://kommunalersprien.schule-eltern.info/infoline/claxss Diese Anleitung

Mehr

Satzhilfen Publisher Seite Einrichten

Satzhilfen Publisher Seite Einrichten Satzhilfen Publisher Seite Einrichten Es gibt verschiedene Möglichkeiten die Seite einzurichten, wir fangen mit der normalen Version an, Seite einrichten auf Format A5 Wählen Sie zunächst Datei Seite einrichten,

Mehr

Windows XP Jugendschutz einrichten. Monika Pross Molberger PC-Kurse

Windows XP Jugendschutz einrichten. Monika Pross Molberger PC-Kurse Windows XP Jugendschutz einrichten Monika Pross Molberger PC-Kurse Um ein Benutzerkonto mit Jugendschutzeinstellungen zu verwenden, braucht man ein Eltern- Konto (Administrator) und eine Kinderkonto (Standard).

Mehr

Beweisbar sichere Verschlüsselung

Beweisbar sichere Verschlüsselung Beweisbar sichere Verschlüsselung ITS-Wahlpflichtvorlesung Dr. Bodo Möller Ruhr-Universität Bochum Horst-Görtz-Institut für IT-Sicherheit Lehrstuhl für Kommunikationssicherheit bmoeller@crypto.rub.de 6

Mehr

OP-LOG www.op-log.de

OP-LOG www.op-log.de Verwendung von Microsoft SQL Server, Seite 1/18 OP-LOG www.op-log.de Anleitung: Verwendung von Microsoft SQL Server 2005 Stand Mai 2010 1 Ich-lese-keine-Anleitungen 'Verwendung von Microsoft SQL Server

Mehr

DRK Ortsverein Henstedt-Ulzburg e.v. DRK Möbelbörse. Benutzerhandbuch. Version 1.2

DRK Ortsverein Henstedt-Ulzburg e.v. DRK Möbelbörse. Benutzerhandbuch. Version 1.2 DRK Ortsverein Henstedt-Ulzburg e.v. DRK Möbelbörse Benutzerhandbuch Inhaltsverzeichnis Sinn und Zweck der Möbelbörse...3 Handhabung der Oberfläche... 3 Erklärung der einzelnen Menüteile...3 Bedingungen...

Mehr

Ihre Interessentendatensätze bei inobroker. 1. Interessentendatensätze

Ihre Interessentendatensätze bei inobroker. 1. Interessentendatensätze Ihre Interessentendatensätze bei inobroker Wenn Sie oder Ihre Kunden die Prozesse von inobroker nutzen, werden Interessentendatensätze erzeugt. Diese können Sie direkt über inobroker bearbeiten oder mit

Mehr

Kommunikations-Management

Kommunikations-Management Tutorial: Wie importiere und exportiere ich Daten zwischen myfactory und Outlook? Im vorliegenden Tutorial lernen Sie, wie Sie in myfactory Daten aus Outlook importieren Daten aus myfactory nach Outlook

Mehr

BEDIENUNG ABADISCOVER

BEDIENUNG ABADISCOVER BEDIENUNG ABADISCOVER Juni 2005 / EMO v.2005.1 Diese Unterlagen sind urheberrechtlich geschützt. Alle Rechte, auch die der Übersetzung, des Nachdrucks und der Vervielfältigung der Unterlagen, oder Teilen

Mehr

4. BEZIEHUNGEN ZWISCHEN TABELLEN

4. BEZIEHUNGEN ZWISCHEN TABELLEN 4. BEZIEHUNGEN ZWISCHEN TABELLEN Zwischen Tabellen können in MS Access Beziehungen bestehen. Durch das Verwenden von Tabellen, die zueinander in Beziehung stehen, können Sie Folgendes erreichen: Die Größe

Mehr

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Seite erstellen Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Es öffnet sich die Eingabe Seite um eine neue Seite zu erstellen. Seiten Titel festlegen Den neuen

Mehr

Übung Theoretische Grundlagen

Übung Theoretische Grundlagen Übung Theoretische Grundlagen Berechenbarkeit/Entscheidbarkeit Nico Döttling November 26, 2009 INSTITUT FÜR KRYPTOGRAPHIE UND SICHERHEIT KIT University of the State of Baden-Wuerttemberg and National Laboratory

Mehr

Wie Sie mit Mastern arbeiten

Wie Sie mit Mastern arbeiten Wie Sie mit Mastern arbeiten Was ist ein Master? Einer der großen Vorteile von EDV besteht darin, dass Ihnen der Rechner Arbeit abnimmt. Diesen Vorteil sollten sie nutzen, wo immer es geht. In PowerPoint

Mehr

Anleitung über den Umgang mit Schildern

Anleitung ü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

Mehr

Nicht kopieren. Der neue Report von: Stefan Ploberger. 1. Ausgabe 2003

Nicht kopieren. Der neue Report von: Stefan Ploberger. 1. Ausgabe 2003 Nicht kopieren Der neue Report von: Stefan Ploberger 1. Ausgabe 2003 Herausgeber: Verlag Ploberger & Partner 2003 by: Stefan Ploberger Verlag Ploberger & Partner, Postfach 11 46, D-82065 Baierbrunn Tel.

Mehr

Hinweise zum Übungsblatt Formatierung von Text:

Hinweise zum Übungsblatt Formatierung von Text: Hinweise zum Übungsblatt Formatierung von Text: Zu den Aufgaben 1 und 2: Als erstes markieren wir den Text den wir verändern wollen. Dazu benutzen wir die linke Maustaste. Wir positionieren den Mauszeiger

Mehr

Der große VideoClip- Wettbewerb von Media Markt.

Der große VideoClip- Wettbewerb von Media Markt. Der große VideoClip- Wettbewerb von Media Markt. Zeig was du drauf hast! Am 1. Juli startet eine Aktion, wie sie die Schweiz noch nicht gesehen hat. Unter dem Motto Zeig was Du drauf hast! suchen wir den

Mehr

Doku zur Gebäudebrüter Datenbank

Doku zur Gebäudebrüter Datenbank Autor: Christina Baradari, christina.baradari@berlin.de, 0162 2008 114 Doku zur Gebäudebrüter Datenbank Team Web Programmierer: Rahim Baradari Inhaltsverzeichnis 1 Suchen nach Kartierungsdaten... 2 1.1

Mehr

Text-Zahlen-Formatieren

Text-Zahlen-Formatieren Text-Zahlen-Formatieren Beobachtung: Bei der Formatierung einer Zahl in eine Textzahl und umgekehrt zeigt Excel ein merkwürdiges Verhalten, welches nachfolgend skizziert werden soll: Wir öffnen eine neue

Mehr

Die Excel Schnittstelle - Pro Pack

Die Excel Schnittstelle - Pro Pack Die Excel Schnittstelle - Pro Pack Die Excel Pro Pack ist eine Erweiterung der normalen Excel Schnittstelle, die in der Vollversion von POSWare Bestandteil der normalen Lizenz und somit für alle Lizenznehmer

Mehr

Repetitionsaufgaben Wurzelgleichungen

Repetitionsaufgaben 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

Mehr

Berechnungen in Access Teil I

Berechnungen in Access Teil I in Access Teil I Viele Daten müssen in eine Datenbank nicht eingetragen werden, weil sie sich aus anderen Daten berechnen lassen. Zum Beispiel lässt sich die Mehrwertsteuer oder der Bruttopreis in einer

Mehr

PRAXISBUTLER ANPASSUNG DER VORLAGEN

PRAXISBUTLER ANPASSUNG DER VORLAGEN Praxisbutler Anpassung der Vorlagen 1 PRAXISBUTLER ANPASSUNG DER VORLAGEN Die Vorlagen werden hauptsächlich in den Bereichen Klienten und Fakturierung benutzt. Die Anpassung dieser Vorlagen ist wichtig,

Mehr

Binärdarstellung von Fliesskommazahlen

Binärdarstellung von Fliesskommazahlen Binärdarstellung von Fliesskommazahlen 1. IEEE 754 Gleitkommazahl im Single-Format So sind in Gleitkommazahlen im IEEE 754-Standard aufgebaut: 31 30 24 23 0 S E E E E E E E E M M M M M M M M M M M M M

Mehr

Jede Zahl muss dabei einzeln umgerechnet werden. Beginnen wir also ganz am Anfang mit der Zahl,192.

Jede Zahl muss dabei einzeln umgerechnet werden. Beginnen wir also ganz am Anfang mit der Zahl,192. Binäres und dezimales Zahlensystem Ziel In diesem ersten Schritt geht es darum, die grundlegende Umrechnung aus dem Dezimalsystem in das Binärsystem zu verstehen. Zusätzlich wird auch die andere Richtung,

Mehr

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

Suche schlecht beschriftete Bilder mit Eigenen Abfragen Suche schlecht beschriftete Bilder mit Eigenen Abfragen Ist die Bilderdatenbank über einen längeren Zeitraum in Benutzung, so steigt die Wahrscheinlichkeit für schlecht beschriftete Bilder 1. Insbesondere

Mehr

Übungen zu C++ Kapitel 1

Übungen zu C++ Kapitel 1 Übungen zu C++ Kapitel 1 Aufgabe 1 Ergänze den Text. a) Die sechs logischen Einheiten eines Computers sind Eingabe-Einheit, Ausgabe-Einheit, RAM, ALU, CPU, Plattenspeicher. b) Die Programme, welche Hochsprachenprogramme

Mehr

Bauteilattribute als Sachdaten anzeigen

Bauteilattribute als Sachdaten anzeigen Mit den speedikon Attributfiltern können Sie die speedikon Attribute eines Bauteils als MicroStation Sachdaten an die Elemente anhängen Inhalte Was ist ein speedikon Attribut?... 3 Eigene Attribute vergeben...

Mehr

3. Nur die mit diesen Regeln erzeugten Ausdrücke sind reguläre Ausdrücke über Σ.

3. Nur die mit diesen Regeln erzeugten Ausdrücke sind reguläre Ausdrücke über Σ. H O C H S C H U L E University of Applied Sciences ZITTAU/GÖRLITZ Fachbereich Informatik Prof. Dr. Christian Wagenknecht Formale Sprachen und Automaten Übung: Reguläre Ausdrücke Zur Erinnerung: Reguläre

Mehr

Wie löst man Mathematikaufgaben?

Wie löst man Mathematikaufgaben? Wie löst man Mathematikaufgaben? Manfred Dobrowolski Universität Würzburg Wie löst man Mathematikaufgaben? 1 Das Schubfachprinzip 2 Das Invarianzprinzip 3 Das Extremalprinzip Das Schubfachprinzip Verteilt

Mehr

t r Lineare Codierung von Binärbbäumen (Wörter über dem Alphabet {, }) Beispiel code( ) = code(, t l, t r ) = code(t l ) code(t r )

t r Lineare Codierung von Binärbbäumen (Wörter über dem Alphabet {, }) Beispiel code( ) = code(, t l, t r ) = code(t l ) code(t r ) Definition B : Menge der binären Bäume, rekursiv definiert durch die Regeln: ist ein binärer Baum sind t l, t r binäre Bäume, so ist auch t =, t l, t r ein binärer Baum nur das, was durch die beiden vorigen

Mehr