Operadores Lógicos Parte 2
Parte da seção Fundamentos do Journey de C++ da Coddy — lição 24 de 74.
Os operadores lógicos possuem uma tabela especial chamada "Tabela verdade" que mostra o que a combinação de operadores lógicos retorna.
Tabela verdade para o operador and (&&):
| a | b | a && b |
|---|---|---|
| false | false | false |
| false | true | false |
| true | false | false |
| true | true | true |
A única maneira de obter um true para o operador and (&&) é se ambos a e b forem true
Tabela verdade para o operador or (||):
| a | b | a || b |
|---|---|---|
| false | false | false |
| false | true | true |
| true | false | true |
| true | true | true |
Neste caso, para obter um resultado true, a ou b deve ser true.
Tabela verdade para o operador not (!):
| a | !a |
|---|---|
| false | true |
| true | false |
Aqui o valor de a é invertido. Se a é false então !a é true
Desafio
InicianteVocê precisa atribuir valores inteiros às variáveis b1 e b2 para que b3 seja avaliado como true na expressão: bool b3 = !((b1 + b2) > (b1 * b2)).
Reserve um momento para analisar a condição e pensar sobre quais valores a tornariam verdadeira.
Folha de consulta
As tabelas verdade mostram os resultados das combinações de operadores lógicos:
Operador AND (&&): Retorna true apenas quando ambos os operandos são true
| a | b | a && b |
|---|---|---|
| false | false | false |
| false | true | false |
| true | false | false |
| true | true | true |
Operador OR (||): Retorna true quando qualquer um dos operandos é true
| a | b | a || b |
|---|---|---|
| false | false | false |
| false | true | true |
| true | false | true |
| true | true | true |
Operador NOT (!): Inverte o valor booleano
| a | !a |
|---|---|
| false | true |
| true | false |
Experimente você mesmo
#include <iostream>
using namespace std;
int main() {
// Digite seu código abaixo
int b1 = ?;
int b2 = ?;
bool b3 = !((b1 + b2) > (b1 * b2));
// Não altere a linha abaixo
cout << "b3 = " << b3 << endl;
return 0;
}Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Fundamentos
4Operadores Parte 1
Operadores AritméticosOperador de MóduloIncremento/DecrementoPós-incremento/DecrementoAtalhos AritméticosOperadores de ComparaçãoComparação de Strings7Fundamentos de Entrada/Saída
Comando coutComando cinEntrada de StringRevisão - Até 120Revisão - Verdadeiro ou Falso5Operadores Parte 2
Operadores Lógicos Parte 1Operadores Lógicos Parte 2Recapitulação - Lógica SimplesOperadores Lógicos Parte 33Variáveis Parte 2
Declaração de TipoConvenções de NomenclaturaRecapitulação - Inicializar VariáveisType Casting Parte 1Type Casting Parte 26Tomada de Decisão
Estrutura IfIf - ElseEstrutura SwitchOperador CondicionalRecapitulação - If ElseIf - Else Aninhado