A operação E e a OU, exigem dois operandos, já a NÃO exige somente um.
A operação E será verdadeira quando os dois operandos forem verdadeiros, elá valerá falso quando ao menos um dos operandos for falso.
A | B | A E B |
F | F | F |
F | V | F |
V | F | F |
V | V | V |
A operação OU retornará verdadeiro quando pelo menos um dos operandos for verdadeiro, elá retornará falso quando os dois operandos forem falsos.
A | B | A OU B |
F | F | F |
F | V | V |
V | F | V |
V | V | V |
A operação lógica NÃO, inverte o valor lógico do operando, ou seja, será verdadeira quando o operando for falso e falso quando o operando valer verdadeiro. Essa operação é também chamada de complemento.
A | NÃO A |
V | F |
F | V |
Os operadores lógicos são representados em liguagem C pelos seguintes tokens.
- (&&) E
- (||) OU
- (!) NÃO
Os operandos podem ser números, expressões relacionais, etc...
O programa abaixo mostra o resultado das operações E, OU e NÃO para valores de A e B digitados pelo usuário.
001: #include <stdio.h>
002: #include <stdlib.h>
003:
004: int main(int argc, char *argv[])
005: {
006: int A, B;
008:
009: printf("Digite o valor de A: ");
010: fflush(stdin);scanf("%d", &A);
011: printf("Digite o valor de B: ");
012: fflush(stdin);scanf("%d", &B);
013: printf("A E B: %d\n", A && B);
014: printf("A OU B: %d\n", A || B);
015: printf("NAO A: %d\n", !A);
016: printf("NAO B: %d\n", !B);
017: system("PAUSE");
018: return 0;
019: }
A saída esperada para A valendo 0 (Falso) e B valendo 1 (Verdadeiro)
Digite o valor de A: 0
Digite o valor de B: 1
A E B: 0
A OU B: 1
NAO A: 1
NAO B: 0
Nenhum comentário:
Postar um comentário