Programación de fórmulas

a-z es o *es y_is→ # es⊕(círculo blanco 白) @是⊙.

La "operación NAND" ("puerta NAND") de la proposición $ es =

La operación NOR es ↓proposición ("puerta NOR")

Entrada fórmula fuente:

A*! S R

NORMALc: (!A*!B*!R) (A*!B*!R) (!A*B*!R) (A*B*!R) (!A* ! B*R) (!A*B*R) (A*B*R)

NORMALd(!A B !r)

¡Error!

Fórmula fuente de entrada:

A#B

¡Aquí!

4 términos de conteo

NORMALc: (A*!B) (!A*B)

NORMALd (A B)*(!A !b)

¡Error!

Fórmula de fuente de entrada:

Stack ltchar gtstk

bool isVar(char ch)const;

void addMin(int minterm);

void add max(int ​​max term);

Cálculo booleano (int minterm);

void getinversepolan();

int contar términos(int n);

void asignar(int minterm);

pila ltbool gt boolstek

Público:

< p; >formulaBase();

Base de fórmula (base de fórmula constante ampRHS);

~ base de fórmula();

void getSource();

cout lt lt"¡Entrada no válida!"

"Operación nuevamente:" lt ltendl

CIN gt fórmula de origen */

}

fórmula nula base::getinversepolan()

{

temperatura de carácter, temperatura 1;

for(int I = 0; fuenteFórmula [i]! ='\0'; i )

STK pop();

}

si no, romper

.

STK . push(temp);

Romper

Caso ' * ':

Y (!stk.empty()

//Ingrese una forma normal disyuntiva principal desde el teclado y genere la forma normal conjuntiva principal equivalente ┐∧∨

# include ltiostream gt

# include ltcmath gt

# include ltwindows.h gt

Usar espacio de nombres std

Datos extendidos:

(1) Una variable proposicional es una variable proposicional fórmula.

(2) Si A es una fórmula proposicional, entonces

(3) Si A y B son fórmulas proposicionales, entonces (A∧B), (A∨B). ), (A→B) y (A?b) son todas fórmulas proposicionales

(4) si y solo si (1) y (2) , (3) Aplicación limitada, la cadena de símbolos que contiene. variables proposicionales, conjunciones y corchetes es una fórmula proposicional.

La definición de fórmula proposicional es una forma de definición recursiva. La fórmula proposicional en sí misma no es una proposición y no tiene valor de verdad. Tiene un valor de verdad sólo después de asignar un valor a su variable proposicional.

Los cinco operadores de conexión tienen diferentes prioridades. Cuando aparecen simultáneamente en una fórmula proposicional, el orden de precedencia de las operaciones entre conexiones es ∧, ∨, →, y si hay paréntesis, las operaciones entre paréntesis tienen prioridad.

Enciclopedia Baidu-Fórmula proposicional