Programación en lenguaje C: ingrese la fórmula formal de la fórmula de la proposición, encuentre la tabla de verdad de la fórmula y genere la forma normal conjuntiva principal y la forma normal disyuntiva principal de la fórmula
A-Z + es O * es Y _ es → # es⊕(agregue un bai+ en el círculo) @ es ⊙
$ es ↑ "Y NO" operación du( "Y NOT gate zhi" )
% es ↓ "NOR" operación de la proposición ("NOR gate")
Ingrese la 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!
Ingrese la fórmula fuente:
A#B
¡Aquí!
4countTerms
NORMALc: (A*!B)+(!A*B)
NORMALd (A+B)*(!A+!B)
¡Error!
Entrada la fórmula fuente:
stack
bool isVar(char ch)const;
void addMin(int minterm);
p>void addMax(int maxterm);
bool compute(int minterm);
void getInversePoland();
int countTerms( int n );
void asignar(int minterm);
pila
público:
formulaBase() ;
formulaBase(const formulaBase& rhs);
~formulaBase();
void getSource();
cout<<" Entrada no válida!"
"Operar de nuevo:"< cin>>sourceFormula;*/ } void formulaBase: :getInversePoland() { char temp,temp1; for(int i=0;sourceFormula[i]!='\0' ;i++ ) stk.pop(); } si no romper; } stk .push (temp); romper; case '*': mientras (!stk.empty()) // Ingrese cualquier forma normal disyuntiva principal desde el teclado y genere la forma normal conjuntiva principal equivalente. ┐∧∨ # incluir # incluir # incluir usando el espacio de nombres std ; Información ampliada: (1) Las variables proposicionales son fórmulas proposicionales. (2) Si A es una fórmula proposicional, entonces ?A es una fórmula proposicional. (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 sólo si (1), (2) y (3) se aplican un número finito de veces, la cadena de símbolos resultante que contiene variables proposicionales, conectivos y paréntesis 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í no es una proposición y no tiene valor de verdad. Sólo tiene valor de verdad después de asignar valores a sus variables proposicionales. Los cinco operadores conectivos tienen diferentes prioridades. Cuando aparecen en una fórmula proposicional al mismo tiempo, la prioridad de las operaciones entre las conexiones es, ∧, ∨, →,. Si hay paréntesis, las operaciones dentro de los paréntesis tendrán prioridad. Enciclopedia Baidu-Fórmula proposicional