Menu
Coddy logo textTech

Вложенный if - else

Часть раздела Основы путешествия по C# на Coddy — урок 30 из 69.

Мы можем вкладывать инструкции if-elif-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 истинны
		    ...
		}
	}
}
challenge icon

Задание

Новичок

Создайте программу, которая проверяет, может ли человек покататься на американских горках. Требования следующие:

  • Возраст должен быть не менее 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!

Шпаргалка

Вы можете вкладывать операторы if-elif-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 истинны
            ...
        }
    }
}

Попробуйте сами

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);
    }
}
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы