Menu
CoddyTech

중첩 if-else문

Coddy C# 여정의 기초 섹션에 포함된 레슨. 70개 중 30번째.

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는 바로 위에서 아직 else와 연결되지 않은 가장 가까운 if와 짝을 이룹니다.

if (age > 18)
    if (hasLicense)
        Console.WriteLine("You can drive");
    else
        Console.WriteLine("Get a license first");

여기서 else는 들여쓰기가 어떻게 되어 있든 if (hasLicense)에 속합니다. 짝이 명확해지도록 중괄호를 사용하세요.

challenge icon

챌린지

초급

롤러코스터를 탈 수 있는지 확인하는 프로그램을 만드세요. 조건은 다음과 같습니다:

  • 만 12세 이상이어야 합니다
  • 키가 150cm보다 커야 합니다
  • 두 조건을 모두 충족하지만 만 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);
    }
}
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

기초의 모든 레슨

직접 연습해 보세요: 온라인 C# 컴파일러