Istruzione unless
Fa parte della sezione Fondamenti del percorso Ruby di Coddy. Lezione 25 di 88.
Ruby offre un modo particolare per esprimere condizioni quando vuoi eseguire il codice solo se qualcosa non è vero. L'istruzione unless è essenzialmente l'opposto di if.
Con if, il codice viene eseguito quando la condizione è vera. Con unless, il codice viene eseguito quando la condizione è false:
logged_in = false
unless logged_in
puts "Please log in to continue"
endÈ equivalente a scrivere if !logged_in, ma unless spesso si legge in modo più naturale. Pensalo come «fai questo a meno che quella condizione non sia vera».
Puoi anche usare unless con else:
age = 20
unless age < 18
puts "Access granted"
else
puts "Access denied"
endTuttavia, quando ti serve un blocco else, di solito è più chiaro usare if. L’istruzione unless è particolarmente utile quando hai una semplice condizione negativa senza un percorso alternativo. Scegli quello che rende il tuo codice più facile da leggere a colpo d’occhio.
Sfida
FacileTi vengono fornite le seguenti variabili:
has_ticket = false
is_vip = true
items_in_cart = 0
battery_level = 15
is_charging = falseUsa le istruzioni unless per valutare ciascuno degli scenari seguenti. Stampa il messaggio specificato solo quando la condizione è falsa (cioè quando unless esegue il suo blocco).
- A meno che
has_ticketnon siatrue, stampaPlease purchase a ticket - A meno che
is_vipnon siatrue, stampaVIP access required - A meno che
items_in_cartnon sia maggiore di0, stampaYour cart is empty - A meno che
battery_levelnon sia maggiore di20, stampaLow battery warning - A meno che
is_chargingnon siatrueoppurebattery_levelnon sia maggiore di50, stampaPlease charge your device
Ogni messaggio deve apparire su una riga a sé. Stampa solo i messaggi relativi alle condizioni che attivano il blocco unless.
Provalo tu
# Le variabili sono già state definite per te
has_ticket = false
is_vip = true
items_in_cart = 0
battery_level = 15
is_charging = false
# TODO: Scrivi il tuo codice qui sotto
# Usa le istruzioni unless per verificare ogni condizione e stampare il messaggio appropriatoQuesta lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Fondamenti
4Operatori Parte 2
Operatori logici Parte 1Operatori logici Parte 2Riepilogo - Logica sempliceOperatori logici Parte 3Operatori logici Parte 47Calcolatore per dividere il conto
Messaggio di benvenutoAcquisire input dall'utente10FizzBuzz con un colpo di scena
Panoramica del giocoIl metodo FizzBuzz2Variabili e tipi di dato
Numeri e variabiliTipo di dato stringaTipo di dato booleanoTipo di dato SymbolVerifica dei tipi di datoConvenzioni di denominazioneRiepilogo - Creazione di variabili5Strutture decisionali
Istruzione ifIf-ElseRipasso - Calcolatrice sempliceIf-Else annidatoIstruzione unless8Cicli
Ciclo for con intervalliCiclo whilebreaknextRiepilogo - FattorialeCiclo timesCiclo untilCicli annidatiRiepilogo - Input dinamico3Operatori, parte 1
Operatori aritmeticiOperatore moduloScorciatoie aritmeticheRipasso: matematica sempliceOperatori di confronto6Input/Output di base
Output con putsOutput con print e pOutput con variabiliInput con getsMetodo chompConversione di tipoRipasso - Calcolatore dell'etàRipasso - Vero o falsoEsercitati da solo: Compilatore Ruby online