If - Else annidati
Fa parte della sezione Fondamenti del percorso C# di Coddy. Lezione 30 di 69.
Possiamo annidare le istruzioni if-else le une dentro le altre. Questo ci permette di creare strutture decisionali gerarchiche.
Per esempio:
if (age > 18) {
if (hasLicense) {
Console.WriteLine("You can drive");
} else {
Console.WriteLine("Get a license first");
}
} else {
Console.WriteLine("Too young to drive");
}
Può essere annidato all'infinito:
if (condition1) {
if (condition2) {
if (condition3) {
// se condition1, condition2 e condition3 sono vere
...
}
}
}Senza parentesi graffe, un else si abbina all’if più vicino sopra di esso che non abbia già un else:
if (age > 18)
if (hasLicense)
Console.WriteLine("You can drive");
else
Console.WriteLine("Get a license first");Qui l’else appartiene a if (hasLicense), indipendentemente da cosa indichi il rientro. Usa le parentesi graffe per rendere chiaro l’abbinamento.
Sfida
PrincipianteCrea un programma che verifichi se una persona può salire sulle montagne russe. I requisiti sono:
- Deve avere almeno 12 anni
- Deve essere più alta di 150cm
- Se soddisfa entrambi i requisiti ma ha meno di 15 anni, ha bisogno della supervisione di un adulto
Imposta la variabile status esattamente su queste stringhe per ciascun caso:
- Se è troppo giovane:
Sorry, you're too young - Se non è abbastanza alta:
Sorry, you're not tall enough - Se ha meno di 15 anni e non è accompagnata da un adulto:
Sorry, you need an adult with you - Se ha meno di 15 anni ed è accompagnata da un adulto:
You can ride with adult supervision! - Se ha almeno 15 anni ed è abbastanza alta:
You can ride by yourself!
Provalo tu
using System;
class Program {
public static void Main(string[] args) {
int age = int.Parse(Console.ReadLine()); // Non modificare questa riga
int height = int.Parse(Console.ReadLine()); // Non modificare questa riga
bool hasAdult = bool.Parse(Console.ReadLine()); // Non modificare questa riga
string status = "";
// Scrivi il tuo codice qui sotto
// Non modificare il codice sotto questa riga
Console.WriteLine(status);
}
}Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Fondamenti
4Operatori Parte 1
Operatori aritmeticiOperatore moduloIncremento/DecrementoIncremento/Decremento postfissoAbbreviazioni aritmetiche7Input/Output di base
Output di baseInterpolazione di stringheLettura dell'inputParsingRipasso - Fino a 120Ripasso - Vero o falso5Operatori Parte 2
Operatori di confrontoOperatori logici Parte 1Operatori logici Parte 2Riepilogo - Logica sempliceOperatori logici Parte 33Variabili Parte 2
VarCostantiConvenzioni di denominazioneRiepilogo - Inizializzare le variabiliConversione dei tipi6Prendere decisioni
Istruzione ifIf - ElseIstruzione switchOperatore ternarioRiepilogo - If ElseIf - Else annidati9Cicli
Ciclo forCiclo whileCiclo do whileBreakContinueCiclo annidatoCiclo infinitoRiepilogo - Input dinamico12Operazioni sulle stringhe
Metodi delle stringhe Parte 1Metodi delle stringhe Parte 2Formattazione delle stringheEsercitati da solo: Compilatore C# online