Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Schaltungen (https://www.delphipraxis.net/20547-schaltungen.html)

fauxx 19. Apr 2004 19:41


Schaltungen
 
Hallo, kann mir bitte wer helfen?!

Ich will ein Programm schreiben, das Mathematische Schaltungen (and, or, xor, not, etc.) lösen kann. Nur wie kann ich das machen, dass
1. Beliebig viele Variablen (zumindest max 10 oder so) verwendet werden können
2. Die Operatoren (eben and, or, xor, not, etc.) beliebig gesetzt werden können?

Ich dachte eben, dass man in einer TListBox auswählt, ob man and oder or will und das dann in die Prozedur eingesetzt wird.

Falls jetzt keiner versteht was ich meine:
Ein Programm dass das z.B. Lösen kann:

Code:
(a and b) and (c or a) or (not a)
Alles klar? :wink:

Chewie 19. Apr 2004 19:51

Re: Schaltungen
 
Was meinst du mit lösen? Vereinfachen, soweit wie möglich oder Wahrheitstafeln erstellen?

fauxx 19. Apr 2004 19:53

Re: Schaltungen
 
Beides:

Also:
Bsp:

Code:
a and b:

a b (a and b)
0  0      0
1  0      0
0  1      0
1  1      1

Chewie 19. Apr 2004 20:06

Re: Schaltungen
 
Für die einzelnen Belegungen der Atome nimmst du am besten Booleans, die Verknüpfungen (and, or, etc.) bieten dir alle deine Programmiersprache. Die Tabelle gestaltet sich aus allen möglochen Belegungen.
Für die (algorithmische) Vereinfachung bietet sich das Bei Google suchenQuine-McCluskey-Verfahren an.

fauxx 19. Apr 2004 20:11

Re: Schaltungen
 
Zitat:

Zitat von Chewie
(...)Belegungen der Atome nimmst du am(...)

Atome??

Ja schon, nur wenn der User jetzt eingibt:
Code:
(a and b) or (c xor b)
wie lasse ich das mithilfe der Delphi-Anweisungen and, or, usw. "berechnen"??

cBoB 19. Apr 2004 20:59

Re: Schaltungen
 
Tja, wie schon im anderen Thread erwähnt: Du wirst um eine Art Parser nicht herum kommen, da es halt keine Möglichkeit gibt einen String in dirket ausführbaren Code zu wandeln.
Das ist bei langen "Befehlsketten" sicherlich nicht mehr trivial.
Falls Du etwas C++ kannt, könnte Dir vielleicht ein Projekt auf Sourceforge weiterhelfen. Ich weiss nicht, wie weit das fortgeschritten ist oder ob überhaupt noch dran gearbeitet wird, aber Du kannsts ja mal versuchen.

Schönen Abend
-c-

Chewie 19. Apr 2004 21:01

Re: Schaltungen
 
Zitat:

Zitat von fauxx
Atome??

Ach so. a, b, c, ..., also das was der Benutzer eingibt.
Zum Auswerten der Formelausdrücke brauchst du einen Parser. Such mal hier im Forum nach Hier im Forum suchenFormel Parser

hboy 19. Apr 2004 21:03

Re: Schaltungen
 
schon mal nach Bool'sche Algebra gegoogelt ?

fauxx 19. Apr 2004 21:05

Re: Schaltungen
 
danke, werd ich mal machen...


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:00 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