Para entender como funciona o operador lógico “e” vamos imaginar outro exemplo.
No Brasil o alistamento militar é obrigatório para o sexo masculino. Assim, todo jovem, ao completar 18 anos, é obrigado a se alistar. Construa um programa que leia sexo e idade e diga se o alistamento é obrigatório ou não.
Perceba que, para resolver este problema precisamos fazer dois testes:
teste 1: ser do sexo masculino;
teste 2: ter 18 anos.
Uma possibilidade seria esta:
int idade; char sexo; printf("Digite seu sexo (f ou m) e sua idade: "); scanf("%c%d", &sexo, &idade); if(sexo == 'm'){ if(idade == 18) printf("Alistamento obrigatório!\n"); else printf("Dispensado!\n"); } else printf("Dispensado!\n");
Contudo há uma forma mais elegante e mais sucinta para realizar dois testes com apenas uma instrução if, assim:
int idade; char sexo; printf("Digite seu sexo (f ou m) e sua idade: "); scanf("%c%d", &sexo, &idade); if(sexo == 'm' && idade == 18) printf("Alistamento obrigatório!\n"); else printf("Dispensado!\n");
Agora o if pode ser lido assim: se sexo for igual a m e idade igual a 18 …
Perceba que o operador lógico “e” implica que as duas condições precisam ser verdadeiras para que todo o teste seja verdadeiro, imprimindo assim a mensagem “Alistamento obrigatório!”.
Tabela verdade do operador lógico “e” (&&):
teste 1 | teste 2 | teste 1 && teste 2 |
v | v | v |
v | f | f |
f | v | f |
f | f | f |
Podemos ter vários testes conectados pelo operador lógico “e”. Contudo, observe pela tabela verdade que, o resultado final do teste apenas será verdadeiro quando todos os testes individuais forem verdadeiros. Basta que um seja falso para que o resultado final seja falso.
Se você está aprendendo com este curso,:
- Se inscreva no canal…
- Pressione o sininho para ser notificado…
- Deixe seu like (assim saberei que gostou, além de me incentivar a continuar)
- Apresente o canal à seus amigos!
SÃO VOCÊS QUE FAZEM O CANAL CRESCER!
Valeu!!!