Menu
CoddyTech

중첩 if-else 문

Coddy GDScript 여정의 기초 섹션에 포함된 레슨. 92개 중 29번째.

if 문은 다른 if 또는 else 블록 안에 들어갈 수 있습니다. 이것을 중첩된 if라고 합니다. 기본적인 if/else부터 시작해 보세요:

var age := 15
var group := ""
if age >= 18:
	group = "Adult"
else:
	group = "Minor"

이제 else 블록 안에 중첩된 if/else를 사용해 미성년자를 둘로 나눠 보세요:

var age := 15
var group := ""
if age >= 18:
	group = "Adult"
else:
	if age >= 13:
		group = "Teenager"
	else:
		group = "Child"

15는 18 이상이 아니므로 바깥쪽 else가 실행됩니다. 그 안에서 15 >= 13은 true이므로 group에는 "Teenager"가 저장됩니다.

중첩된 if도 if 블록 안에 들어갈 수 있습니다:

var age := 25
var can_rent_car := false
if age >= 18:
	if age >= 21:
		can_rent_car = true

내부 if는 내부에 있는 외부 블록이 실행될 때만 실행됩니다. 중첩 수준마다 탭이 하나씩 추가됩니다.

challenge icon

챌린지

쉬움

시청자가 어떤 영화를 볼 수 있는지 결정하세요. 첫 두 줄에서 변수 age와 with_parent를 읽어 옵니다(이 줄은 변경하지 마세요).

중첩된 if/else를 사용해 message를 설정하세요.

  • age가 18 이상이면: "You can watch any movie"
  • 그렇지 않고 with_parent가 true이면: "You can watch PG-13 movies"
  • 그렇지 않으면: "You can only watch G-rated movies"

with_parent는 bool이므로 직접 확인하세요: if with_parent:. 세 가지 경우를 모두 작성하세요. 테스트에서는 보호자와 함께 있는 경우와 없는 경우의 다양한 나이를 확인합니다. 예를 들어 보호자와 함께 있는 17세의 출력은 다음과 같습니다.

You can watch PG-13 movies

직접 해보기

extends Node

func _ready():
	var age := int(OS.read_string_from_stdin()) # 이 줄을 변경하지 마세요
	var with_parent := OS.read_string_from_stdin() == "true" # 이 줄을 변경하지 마세요
	var message := ""
	# 아래에 중첩된 if - else 코드를 작성하세요

	# 아래 줄을 변경하지 마세요
	print(message)
quiz icon실력 점검

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

기초의 모든 레슨

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