Ich versuche, das Ergebnis der Wahrheitstabelle in eine boolesche Anweisung zurück zu konvertieren. Für diejenigen, die nicht vertraut sind, werde ich es Detail schreiben.konvertieren Wahrheit Ergebnis in Boolean-Anweisung
Ich habe einen Vektor der Zeichenfolge in einem Format wie unten. Alle String-Mitglieder innerhalb des Vektors haben eine gleiche Länge. Mitglieder bestehen nur aus -
oder 0
oder 1
. zum Beispiel Vektor v enthalten 3 Mitglieder mit der Länge von 5 für jedes Mitglied.
string vv[] = { "--1-0" , "-1-1-" , "01-1-" };
std::vector<string> v(begin(vv), end(vv));
Jedes Zeichen der Zeichenfolge stellt einen anderen Vektor "A" Mitglied zusammen mit einer booleschen Operation. Zum Beispiel
erste --1-0
ist (A[2] && !A[4])
würde Ich mag meinen obigen Vektor v
umwandeln in
(A[2] && !A[4]) || (A[1] && A[3]) || (!A[0] && A[1] && A[3])
Was soll ich tun, um eine Funktion mit Vektoren v
zu haben ist und A
als Eingaben und die Rückgabe ist über Boolesche Aussage. Ich bin sicher, dass Sie bemerkt haben, dass 1
ist true
, 0
ist Not true
und -
ist, egal Status.
EDIT: Ich habe nicht vor, eine Wahrheitstabelle oder Kmap zu lösen. Ich habe bereits das Ergebnis. Mein Ergebnis im Format "v" vector. Ich möchte eine Verbindung zwischen V und A mit Boolean-Anweisung erstellen.
Jeder Vorschlag wird geschätzt.
Was das Ergebnis der Zeichenfolge „-----“ wahr oder falsch? –
'-----' ist nichts. wenn es zusammenkommt, ist eine andere Zeichenfolge gleichzusetzen mit nichts. –
[Karnaugh Karten] (https://en.wikipedia.org/wiki/Karnaugh_map) mit Zuständen {true, false, any} könnte im Allgemeinen interessant sein. –