Operadores Lógicos (AND, OR)
Parte da seção Fundamentos do Journey de R da Coddy — lição 17 de 78.
Operadores de comparação permitem que você verifique uma única condição, mas e se você precisar verificar várias condições ao mesmo tempo? Operadores lógicos permitem combinar condições e criar expressões mais complexas.
O operador AND (&&) retorna TRUE apenas quando ambas as condições são verdadeiras:
age <- 25
has_license <- TRUE
can_drive <- age >= 18 && has_license # TRUESe qualquer uma das condições for falsa, toda a expressão se torna falsa. Pense nisso como a exigência de que todas as condições sejam atendidas.
O operador OR (||) retorna TRUE quando pelo menos uma condição é verdadeira:
is_weekend <- TRUE
is_holiday <- FALSE
day_off <- is_weekend || is_holiday # TRUEO operador OR só retorna false quando ambas as condições são falsas. Aqui está uma referência rápida:
| A | B | A && B | A || B |
|---|---|---|---|
| TRUE | TRUE | TRUE | TRUE |
| TRUE | FALSE | FALSE | TRUE |
| FALSE | TRUE | FALSE | TRUE |
| FALSE | FALSE | FALSE | FALSE |
Você pode combinar várias condições em uma única expressão usando esses operadores juntos, construindo verificações lógicas poderosas para seus programas.
Desafio
FácilDetermine a elegibilidade para diferentes atividades usando os operadores AND (&&) e OR (||).
Você recebeu as seguintes variáveis:
age <- 17
has_permission <- TRUE
is_member <- FALSE
has_ticket <- TRUEUse operadores lógicos para criar as seguintes variáveis:
- Crie uma variável chamada
can_enter_clubque armazenaTRUEse a pessoa tiver 18 anos ou mais E for um membro - Crie uma variável chamada
can_watch_movieque armazenaTRUEse a pessoa tiver 18 anos ou mais OU tiver permissão - Crie uma variável chamada
can_attend_eventque armazenaTRUEse a pessoa tiver um ingresso E for um membro - Crie uma variável chamada
gets_discountque armazenaTRUEse a pessoa for um membro OU tiver menos de 18 anos (idade inferior a 18) - Crie uma variável chamada
vip_accessque armazenaTRUEse a pessoa tiver 18 anos ou mais E for um membro E tiver um ingresso
Use a função print() para exibir can_enter_club, can_watch_movie, can_attend_event, gets_discount e vip_access exatamente nessa ordem.
Folha de consulta
Operadores lógicos permitem que você combine múltiplas condições em R.
O operador AND (&&) retorna TRUE apenas quando ambas as condições são verdadeiras:
age <- 25
has_license <- TRUE
can_drive <- age >= 18 && has_license # TRUEO operador OR (||) retorna TRUE quando pelo menos uma das condições é verdadeira:
is_weekend <- TRUE
is_holiday <- FALSE
day_off <- is_weekend || is_holiday # TRUETabela verdade para operadores lógicos:
| A | B | A && B | A || B |
|---|---|---|---|
| TRUE | TRUE | TRUE | TRUE |
| TRUE | FALSE | FALSE | TRUE |
| FALSE | TRUE | FALSE | TRUE |
| FALSE | FALSE | FALSE | FALSE |
Você pode combinar múltiplas condições em uma única expressão para criar verificações lógicas complexas.
Experimente você mesmo
# Variáveis fornecidas
age <- 17
has_permission <- TRUE
is_member <- FALSE
has_ticket <- TRUE
# TODO: Escreva seu código abaixo
# Crie as seguintes variáveis usando operadores lógicos (&&, ||):
# 1. can_enter_club - TRUE se age >= 18 AND is_member
# 2. can_watch_movie - TRUE se age >= 18 OR has_permission
# 3. can_attend_event - TRUE se has_ticket AND is_member
# 4. gets_discount - TRUE se is_member OR age < 18
# 5. vip_access - TRUE se age >= 18 AND is_member AND has_ticket
# Imprima os resultados em ordem
print(can_enter_club)
print(can_watch_movie)
print(can_attend_event)
print(gets_discount)
print(vip_access)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 2
Operadores Lógicos (AND, OR)Operadores Lógicos Parte 2 (NOT)Recapitulação - Lógica SimplesLógica Vetorizada Parte 1Lógica Vetorizada Parte 27Calculadora de Divisão de Conta
Mensagem de Boas-vindasObtendo a Entrada do Usuário10FizzBuzz com um Toque Especial
Visão Geral do JogoA Função FizzBuzz2Variáveis e Tipos de Dados
Tipo de Dado NuméricoTipo de Dado InteiroTipo de Dado CaractereTipo de Dado LógicoVerificando Tipos de DadosConvenções de NomenclaturaValores Ausentes: NARecapitulação - Criação de Variáveis8Laços de Repetição
Laço ForLaço WhileBreakNext (Continue)Recapitulação - FatorialGeração de Sequências (seq, :)Laços AninhadosRecapitulação - Entrada Dinâmica3Operadores Parte 1
Operadores AritméticosDivisão Inteira e MóduloOperadores de AtribuiçãoRecapitulação - Matemática SimplesOperadores de Comparação6IO Básico
Saída com PrintCat para SaídaSaída com VariáveisLendo Entrada com readline()Básico de Conversão de TiposRecapitulação - Calculadora de IdadeRecapitulação - Verdadeiro ou Falso9Funções
Declarando uma FunçãoArgumentos de FunçãoValores de RetornoRecapitulação - Função SigmaRecapitulação - Função de ValidaçãoValores de Parâmetro Padrão