AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Boolesche Funktionen

Ein Thema von Mr. Bool · begonnen am 19. Jun 2010 · letzter Beitrag vom 19. Jun 2010
Antwort Antwort
Mr. Bool

Registriert seit: 19. Jun 2010
1 Beiträge
 
Delphi 2 Desktop
 
#1

Boolesche Funktionen

  Alt 19. Jun 2010, 16:47
Hi,

ich habe 2 kleine Fragen.

1. Ich habe eine Funktion mit 3 Variablen (b1, b2, b3) Elemente der Menge B {0, 1}. Die Funktion soll zu 1 werden, wenn b1 + b2 * 2 + b3 * 4 kongruent 2 modulo 3 ist. Danach sollen wir die KNF und DNF aufstellen.

Ich verstehe den Satz aber nicht so ganz. Bedeutet es, dass meine zu erstellende Boolesche Funktion 1 werden soll, wenn (b1 + b2 * 2 + b3 * 4) mod 3 = 2 ist? Dann muss ich mit den Binärwerten praktisch als Dezimalzahlen rechnen. Mit dem Begriff kongruent und dieser Schreibweise komme ich nicht so ganz klar.

2. kleines Problem: Was ist eine n-stellige Funktion? Eine Funktion mit n Argeumenten oder eine Funktion, die in dem Term insgesamt n Variablen vorkommen hat?

Ist also folgende Funktion 3-stellig (Auch wenn die Funktion sinnfrei ist ^^)? f(b1, b2, b3) = 0 oder muss sie so aussehen, dass sie 3-stellig ist: f(b1, b2, b3) = (b1 v b2 v b3) AND 0

Geändert von Mr. Bool (19. Jun 2010 um 16:50 Uhr)
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.755 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Boolesche Funktionen

  Alt 19. Jun 2010, 17:07
...
1. Ich habe eine Funktion mit 3 Variablen (b1, b2, b3) Elemente der Menge B {0, 1}. Die Funktion soll zu 1 werden, wenn b1 + b2 * 2 + b3 * 4 kongruent 2 modulo 3 ist. Danach sollen wir die KNF und DNF aufstellen.
Hallo,

kongruent aus der Zahletheorie

Das würde dann heißen.

Code:
funktionsergebnis := ((b1 + b2 * 2 + b3 * 4) mod 3) = (2 mod 3);
Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
idefix2

Registriert seit: 17. Mär 2010
Ort: Wien
1.027 Beiträge
 
RAD-Studio 2009 Pro
 
#3

AW: Boolesche Funktionen

  Alt 19. Jun 2010, 17:20
Zu Frage 1:
Du kannst es direkt lösen, indem Du die Integerwerte (=ord(b1), ord(b2), ord(b3)) in der Formel verwendest (wie klaus schreibt).

Oder Du stellt fest, dass die möglichen Rechenergebnisse Zahlen zwischen 0 und 7 sind und true nur für die Ergebnisse 2 und 5 herauskommen soll, als in Binärdarstellung für 010 und für 101 - also (b1<>b2)and(b1=b3).
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:57 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz