Programación General > C/C++

 Tabla de verdad

<< < (2/3) > >>

Checho360:
Lo que te pone m0skit0 es que crees dos valores de tipo booleanos (sólo toman valores entre true y false, es decir 1 o 0) y luego la operación lógica (esta tomará los valores de negación, disyunción...). Le haces un switch para cada uno de los valores que le asignes a la operación lógica y después en los "case" vas poniendo según sea disyunción, negación.. hacer esto;  y así continuamente. Por ejemplo, con una disyunción. p sería por ejemplo estar cansado y q es de noche, estos tomarán los valores 1 o 0. Le tendrías que decir; case 1 (disyunción){ si p==1 y q ==1 --> devolver 1; si p==0 y q ==0 -->devolver 0;...; } y así para los 4 posibles valores entre 0 y 1 y para los tipos de operaciones que quieras realizar. Te doy un ejemplo (aunque ya está casi hecho xdd)


--- Código: C++ ---#include <iostream>using namespace std;int main(){    bool p, q;     cout<<"Introduce el valor (0 | 1) del primer valor de verdadn";     cin>>p; cout<<"n";     cout<<"Introduce el valor (0 | 1) del segundo valor de verdadn";     cin>>q; cout<<"n";     cout<<"Introduce la operación lógican";     cout<<"1->DISYUNCIONn"<<"2->CONJUNCIONn"; //etc....     int unsigned operacion_logica;     cin>>operacion_logica;cout<<"n";        switch (operacion_logica){         case (1):{             if(p==1||q==1){                 cout<<"1n";             }             else{                 cout<<"0n";             }         break;        }        case (2):{             if (p==1 && q==1){                 cout<<"1n";             }            else{                 cout<<"0n";             }         }    break;    } } 

m0skit0:
Pero no se lo des hecho, hombre...  :brickwall: Y además para qué te complicas la vida:


--- Código: C++ ---#include <iostream>using namespace std;int main(){    bool p, q;     cout<<"Introduce el valor (0 | 1) del primer valor de verdadn";     cin>>p; cout<<"n";     cout<<"Introduce el valor (0 | 1) del segundo valor de verdadn";     cin>>q; cout<<"n";     cout<<"Introduce la operación lógican";     cout<<"1->DISYUNCIONn"<<"2->CONJUNCIONn"; //etc....     int unsigned operacion_logica;     cin>>operacion_logica;cout<<"n";       bool resultado;    switch (operacion_logica)    {         case (1):             resultado  = (p||q);            break;         case (2):             resultado  = (p&&q);             break;    }    cout << resultado << endl; } 

Checho360:
Tambien tienes razon ... jajaja

rogerfor:
gracias checho y mosquito, aun no entiendo muy bien el código, pero pues es que estoy empezando, y de verdad gracias poco a poco voy empezando a entender mase esto es que si me cuesta :S

rogerfor:
solo tengo una duda, para sirven en si estos 2??
no entiendo muy bien la diferencia

||
&&

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

[*] Página Anterior

Ir a la versión completa