Menu
CoddyTech

Функция range

Часть раздела Основы путешествия по GDScript на Coddy. Урок 48 из 92.

range() может принимать одно, два или три числа:

  • range(end): от 0 до end
  • range(start, end): от start до end
  • range(start, end, step): от start до end, каждый раз увеличиваясь на step

Во всех трёх случаях end никогда не включается. Шаг — это величина, которая прибавляется, чтобы получить следующее число. Этот код выводит нечётные числа меньше 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