quarta-feira, 5 de março de 2008

Operadores lógicos

Existem três operações lógicas básicas, a operação E, a OU e a NÃO, as quais operam com valores lógicos verdadeiro(V) ou falso(F).
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.
ABA E B
FFF
FVF
VFF
VVV

A operação OU retornará verdadeiro quando pelo menos um dos operandos for verdadeiro, elá retornará falso quando os dois operandos forem falsos.
ABA OU B
FFF
FVV
VFV
VVV

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.
ANÃO A
VF
FV

Os operadores lógicos são representados em liguagem C pelos seguintes tokens.
  1. (&&) E
  2. (||) OU
  3. (!) 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: