blikk info infothek forum galerie sitemap

Logische Ausdrücke

anfang zurueck weiter ende nach oben

 

Aussagenlogische (boolsche) Ausdrücke

     Inhalt:

      1.Aufgabenstellung

      2.Theoretischer Hintergrund

      2.1.Allgemein

      2.2.Rechenoperationen

      2.3.Wahrheitstabelle der Operationen

      2.4.Besondere boolsche Ausdrücke

      3.Beispiel für die Lösung eines Logikrätsels

      3.1.Aufgabe

      3.2.Lösung

      3.3.Antwort

      4.Programm zur Berechnung von boolschen Ausdrücken in
         Form eines Struktogrammes

 



    1. Aufgabenstellung

      Beschreiben, erklären und berechnen von boolschen
      Ausdrücken


    2.Theoretischer Hintergrund

2.1Allgemein:

Die Aussagelogik ist jener Bereich der Logik, der eine Aussage mit genau zwei Antworten
bewertet: WAHR oder FALSCH. Andere Antwortmöglichkeiten existieren nicht, es gibt also keine „halbwahren“ oder „halbfalschen“ Ausdrücke.

Beispiele:
„Blau ist eine Farbe“ Wahre Aussage
„Jede Farbe ist blau“ Falsche Aussage

2.2Rechenoperationen:

Es existieren 5 elementare Rechenoperationen, mit welchen man zwei oder mehrere Elemente zu einem boolschen Ausdruck verknüpfen kann. Diese sind:

Dateigröße: 547182 kb

 

 

 

 

 

 

 

 


Weitere Operationen sind:

Dateigröße: 47094 kb

 

Für einige der Operationen gibt es noch die negierten Versionen, diese sind:

Dateigröße: 157302 kb

 

2.3Wahrheitstabelle der Operationen

2.4Besondere boolsche Ausdrücke

Begriffe:
Tautologien: Sind boolsche Ausdrücke, die immer Wahr sind.
Kontradiktionen: Sind boolsche Ausdrücke die immer Falsch sind.

Wichtige Tautologien:

1.Gesetz des ausgeschlossenen Dritten: (a ¬(b))Wahr
2.De Morgan Regel: : ¬(a b) (¬(a) ¬(b))
                                     ¬(a b) (¬(a) ¬(b))
3.Ersetzung der Implikation : (a b) (¬(a) b))
4.Kontrapositionsgesetz : (a b) (¬(b) ¬(a))
5.Transitivgesetz : ((a b) (b c)) (a c)
6.Modus Ponens : (a (a b)) b


    3.Beispiel für die Lösung eines Logikrätsels

3.1Aufgabe

Es soll mittels Wertetabelle gezeigt werden, dass der boolsche Ausdruck:
(p q) (q r) (p r)
allgemein gültig ist.

3.2Lösung

Als erstes werden alle Elemente als Eingänge der 
         Wahrheitstabelle definiert:

                                                   

Als nächster Schritt wird der gesamte Ausdruck zerlegt und die einzelnen Operationen in der Wahrheitstabelle ausgerechnet:

                               


        Beim letzten Schritt werden alle Einzelausdrücke zum    
        Ganzen zusammengefügt:

Dateigröße: 269550 kb



 


3.3Antwort

Der Ausdruck ist genau dann Wahr, wenn am endgültigen Ausgang der Wert WAHR
vorhanden ist (die roten Ziffern). D.h. bei den Kombinationen (p;q;r):

0;0;0   0;0;1   0;1;0   0;1;1   1;1;1



    4. Programmierung von boolschen 
       Ausdrücken in Pascal

Jede Variable wird in einer Vorschleife, die von Wahr bis Falsch läuft, durchlaufen. Dadurch werden alle Kombinationsmöglichkeiten definiert. In der innersten For-Schleife wird der Ausdruck einer Boolschen Variable zugeordnet und ausgegeben:

(*
 * Name:        P.S. & L.L.
 * Klasse:      3IA
 * Datum:       05.02.2007
 * Aufgabe:     Auf einer Party
*)

PROGRAM Wahrheitstabelle;
USES CRT;
PROCEDURE Kopf;             (*Erzeugt den Kopf der Wahrheitstabelle*)
 VAR i : INTEGER;                                            (*Laufvariable*)
 BEGIN
  (*Kopf erstellen*)
  WRITELN;
  WRITELN ('Amrain N.',' ':4,'Berlanda J.',' ':4,'Cainelli P.',' ':4,'Ergebnis',' ':8);
  FOR i := 1 TO 51 DO
   WRITE ('-');
 END;
PROCEDURE Ausgabe (a, b, c, w : BOOLEAN);       
(*Ausgabe der 3 Elemente*)

BEGIN
 WRITELN('   ');
 WRITE(a:5);                     (*A ausgeben*)
 WRITE(b:15);                    (*B ausgeben*)

 WRITE(c:15);                    (*C ausgeben*)
 WRITE(w:15);             (*Ergebnis ausgeben*)
END;
PROCEDURE Rechnung;                        (*Erste Rechnung*) 
VAR a, b, c, erg : BOOLEAN;
(*Variablen für die Wahrheitstabelle*)

BEGIN     
 KOPF;                                                
(*Kopf wird geladen*)

(*Mit den For Schleifen werden alle Kombinationen gerechnet*)
  FOR a := FALSE TO TRUE DO
   FOR b := FALSE TO TRUE DO
    FOR c := FALSE TO TRUE DO
     BEGIN
      DELAY(275) ;
      Write('   ');
      erg := (a<=b)AND(a=c)AND(NOT b OR NOT c);
(*Wahrheitstabelle berechnen*)

      ausgabe(a, b, c, erg);                    
(*Ausgabe der Wertetabelle*)

     END
 END;


Weitere Beispiele für aussagenlogische Rätsel, hier Klicken

nach oben
punkt   seitenbereich schließen

Links

Logische Ausdrücke und Bedingungen in C#