Вложенный if - else
Часть раздела Основы путешествия по C# на Coddy. Урок 30 из 69.
Мы можем вкладывать операторы if-else друг в друга. Это позволяет создавать иерархические структуры принятия решений.
Например:
if (age > 18) {
if (hasLicense) {
Console.WriteLine("You can drive");
} else {
Console.WriteLine("Get a license first");
}
} else {
Console.WriteLine("Too young to drive");
}
Он может быть бесконечно вложенным:
if (condition1) {
if (condition2) {
if (condition3) {
// если condition1, condition2 и condition3 истинны
...
}
}
}Без фигурных скобок else связывается с ближайшим расположенным выше if, у которого ещё нет else:
if (age > 18)
if (hasLicense)
Console.WriteLine("You can drive");
else
Console.WriteLine("Get a license first");Здесь else относится к if (hasLicense), независимо от отступов. Используй фигурные скобки, чтобы явно показать эту связь.
Задание
НовичокСоздай программу, которая проверяет, может ли человек кататься на американских горках. Требования:
- Возраст должен быть не менее 12 лет
- Рост должен быть больше 150 см
- Если человек соответствует обоим требованиям, но ему меньше 15 лет, ему необходимо сопровождение взрослого
Присвой переменной status для каждого случая точно такую строку:
- Если человек слишком молод:
Sorry, you're too young - Если рост недостаточный:
Sorry, you're not tall enough - Если человеку меньше 15 лет и рядом нет взрослого:
Sorry, you need an adult with you - Если человеку меньше 15 лет и рядом есть взрослый:
You can ride with adult supervision! - Если человеку 15 лет или больше и его рост достаточный:
You can ride by yourself!
Попробуйте сами
using System;
class Program {
public static void Main(string[] args) {
int age = int.Parse(Console.ReadLine()); // Не изменяйте эту строку
int height = int.Parse(Console.ReadLine()); // Не изменяйте эту строку
bool hasAdult = bool.Parse(Console.ReadLine()); // Не изменяйте эту строку
string status = "";
// Напишите свой код ниже
// Не изменяйте код ниже этой строки
Console.WriteLine(status);
}
}В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Операторы. Часть 1
Арифметические операторыОператор остатка от деленияИнкремент и декрементПостфиксный инкремент и декрементСокращенные арифметические операции7Основы ввода-вывода
Базовый выводИнтерполяция строкЧтение вводаПарсингПовторение — до 120Повторение — True или False5Операторы. Часть 2
Операторы сравненияЛогические операторы. Часть 1Логические операторы. Часть 2Повторение: простая логикаЛогические операторы. Часть 38Приложение-калькулятор
Приветственное сообщениеПолучение чисел3Переменные. Часть 2
VarКонстантыСоглашения об именованииПовторение: инициализация переменныхПриведение типов6Принятие решений
Оператор ifКонструкция if - elseОператор switchТернарный операторПовторение: if - elseВложенный if - elseПотренируйтесь самостоятельно: Онлайн-компилятор C#