Instrução Unless
Parte da seção Fundamentos do Journey de Ruby da Coddy. Lição 25 de 88.
Ruby oferece uma maneira única de expressar condições quando você deseja executar código apenas se algo não for verdadeiro. A declaração unless é essencialmente o oposto de if.
Com if, o código executa quando a condição é verdadeira. Com unless, o código executa quando a condição é falsa:
logged_in = false
unless logged_in
puts "Please log in to continue"
endIsso é equivalente a escrever if !logged_in, mas unless muitas vezes lê de forma mais natural. Pense nisso como "faça isso a menos que aquela condição seja verdadeira."
Você também pode usar unless com else:
age = 20
unless age < 18
puts "Access granted"
else
puts "Access denied"
endNo entanto, quando você precisa de um bloco else, usar if geralmente é mais claro. A declaração unless se destaca quando você tem uma condição negativa simples sem um caminho alternativo. Escolha o que torna seu código mais fácil de ler de relance.
Desafio
FácilVocê é fornecido com as seguintes variáveis:
has_ticket = false
is_vip = true
items_in_cart = 0
battery_level = 15
is_charging = falseUse instruções unless para avaliar cada cenário abaixo. Imprima a mensagem especificada apenas quando a condição for falsa (que é quando unless executa seu bloco).
- A menos que
has_ticketsejatrue, imprimaPlease purchase a ticket - A menos que
is_vipsejatrue, imprimaVIP access required - A menos que
items_in_cartseja maior que0, imprimaYour cart is empty - A menos que
battery_levelseja maior que20, imprimaLow battery warning - A menos que
is_chargingsejatrueoubattery_levelseja maior que50, imprimaPlease charge your device
Cada mensagem deve aparecer em sua própria linha. Imprima apenas mensagens para condições que ativam o bloco unless.
Experimente você mesmo
# As variáveis já estão definidas para você
has_ticket = false
is_vip = true
items_in_cart = 0
battery_level = 15
is_charging = false
# TODO: Escreva seu código abaixo
# Use instruções unless para verificar cada condição e imprimir a mensagem apropriadaEsta 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 Parte 1Operadores Lógicos Parte 2Recapitulação - Lógica SimplesOperadores Lógicos Parte 3Operadores Lógicos Parte 47Calculadora de Divisão de Conta
Mensagem de Boas-vindasObtendo Entrada do Usuário10FizzBuzz com um Toque Especial
Visão Geral do JogoO Método FizzBuzz2Variáveis e Tipos de Dados
Números e VariáveisTipo de Dado StringTipo de Dado BooleanTipo de Dado SymbolVerificando Tipos de DadosConvenções de NomenclaturaRecapitulação - Criação de Variáveis5Tomada de Decisão
Instrução IfIf - ElseRecapitulação - Calculadora SimplesIf - Else AninhadoInstrução Unless8Laços de Repetição
Loop For com IntervalosLoop WhileBreakNextRecapitulação - FatorialLoop TimesLoop UntilLoops AninhadosRecapitulação - Entrada Dinâmica3Operadores Parte 1
Operadores AritméticosOperador de MóduloAtalhos AritméticosRecapitulação - Matemática SimplesOperadores de Comparação6IO Básico
Saída com putsSaída com print e pSaída com VariáveisEntrada com getsMétodo chompConversão de TiposRecapitulação - Calculadora de IdadeRecapitulação - Verdadeiro ou Falso9Métodos
Definindo um MétodoParâmetros de MétodoValores de RetornoRecapitulação - Método SigmaRecapitulação - Método de ValidaçãoValores de Parâmetro Padrão15Rastreador de Despesas Diárias
Visão Geral do ProjetoSair do ProgramaPratique por conta própria: Compilador de Ruby online