Menu
CoddyTech

range 함수

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

range()에는 숫자를 하나, 둘 또는 세 개 전달할 수 있습니다:

  • range(end): 0부터 end까지
  • range(start, end): start부터 end까지
  • range(start, end, step): start부터 end까지, 매번 step만큼 이동

세 경우 모두 end는 포함되지 않습니다. step은 다음 숫자를 얻기 위해 더하는 값입니다. 다음 코드는 10보다 작은 홀수를 출력합니다:

for i in range(1, 10, 2):
	print(i)
1
3
5
7
9

음수 단계는 거꾸로 셉니다. 따라서 시작 값은 끝 값보다 커야 합니다. 다음은 10부터 1까지 거꾸로 셉니다:

for i in range(10, 0, -1):
	print(i)

끝값은 여전히 포함되지 않으므로, 루프는 1에서 멈춥니다. range(20, 9, -2)를 사용하면 숫자는 20, 18, 16, 14, 12 및 10입니다. 10은 여전히 9보다 크므로 포함됩니다.

시작값이 이미 끝값을 지난 경우, 예를 들어 range(1, 5, -1)처럼 범위가 비어 있으므로 루프가 실행되지 않습니다.

GDScript에서는 in 뒤에 숫자 하나만 써도 됩니다. for i in 3:은 for i in range(3):처럼 작동하며, i는 0부터 2까지 증가합니다.

challenge icon

챌린지

쉬움

프로그램은 세 개의 정수 start, end 및 step을 읽습니다.

for 루프와 range(start, end, step)을 사용하여 해당 범위의 모든 숫자를 한 줄에 하나씩 출력하세요.

입력이 1, 10 및 2이면 출력은 다음과 같습니다.

1
3
5
7
9

단계는 음수일 수도 있습니다. 10, 0 및 -3의 경우 10, 7, 4 및 1을 출력하세요.

직접 해보기

extends Node

func _ready():
	var start := int(OS.read_string_from_stdin())
	var end := int(OS.read_string_from_stdin())
	var step := int(OS.read_string_from_stdin())
	# 여기에 for 루프를 작성하세요
quiz icon실력 점검

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

기초의 모든 레슨

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