중첩 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은 조건이 참인 첫 번째 블록만 실행합니다.
챌린지
쉬움나이에 따라 티켓 가격을 결정하기 위해 중첩된 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 문을 사용하세요이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.