Menu
Coddy logo textTech

중첩 If - Else 문

Coddy R 여정의 기초 섹션에 포함된 레슨 — 78개 중 25번째.

때로는 두 가지 옵션만으로는 충분하지 않습니다. 여러 조건을 확인하고 각각을 다르게 처리해야 한다면 어떻게 해야 할까요? 더 복잡한 결정 경로를 만들기 위해 if-else 문을 다른 if 또는 else 블록 안에 배치할 수 있습니다.

score <- 85

if (score >= 90) {
  print("Grade: A")
} else {
  if (score >= 80) {
    print("Grade: B")
  } else {
    print("Grade: C or below")
  }
}

R은 먼저 점수가 90점 이상인지 확인합니다. 85는 그 조건을 만족하지 않으므로, else 블록으로 이동합니다.

내부에서, 또 다른 if 문이 점수가 최소 80점인지 확인합니다. 85점은 이 조건을 통과하므로, "Grade: B"를 출력합니다.

R은 else if를 사용하여 이를 작성하는 더 깔끔한 방법을 제공합니다:

score <- 85

if (score >= 90) {
  print("Grade: A")
} else if (score >= 80) {
  print("Grade: B")
} else {
  print("Grade: C or below")
}

두 방식 모두 동일하게 작동하지만, else if를 사용하면 코드를 더 평평하고 읽기 쉽게 유지할 수 있습니다. 필요한 만큼 많은 else if 블록을 연결할 수 있으며, R은 조건이 참인 첫 번째 블록만 실행합니다.

challenge icon

챌린지

쉬움

나이에 따라 티켓 가격을 결정하기 위해 중첩된 if-else 또는 else if 문을 사용하여 티켓 가격 책정 시스템을 만드세요.

다음과 같은 변수가 제공됩니다:

age <- 25

다음 규칙에 따라 티켓 가격을 결정하고 출력하는 일련의 조건문을 작성하세요:

  • 나이가 5세 미만이면, "Free"를 출력합니다.
  • 나이가 5세에서 12세 사이(포함)이면, "$5"를 출력합니다.
  • 나이가 13세에서 17세 사이(포함)이면, "$8"를 출력합니다.
  • 나이가 18세에서 64세 사이(포함)이면, "$12"를 출력합니다.
  • 나이가 65세 이상이면, "$7"를 출력합니다.

출력을 위해 print() 함수를 사용하세요.

치트 시트

여러 조건을 확인하기 위해 if-else 문을 서로 중첩하여 사용할 수 있습니다:

score <- 85

if (score >= 90) {
  print("Grade: A")
} else {
  if (score >= 80) {
    print("Grade: B")
  } else {
    print("Grade: C or below")
  }
}

더 깔끔한 방법은 else if를 사용하여 여러 조건을 연결하는 것입니다:

score <- 85

if (score >= 90) {
  print("Grade: A")
} else if (score >= 80) {
  print("Grade: B")
} else {
  print("Grade: C or below")
}

R은 조건을 순서대로 평가하며 조건이 참인 첫 번째 블록만 실행합니다. 필요한 만큼 else if 블록을 연결할 수 있습니다.

직접 해보기

# 제공된 변수
age <- 25

# TODO: 아래에 코드를 작성하세요
# 제공된 연령 규칙에 따라 티켓 가격을 결정하기 위해
# 중첩된 if-else 또는 else if 문을 사용하세요
quiz icon실력 점검

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

기초의 모든 레슨