Доступ к элементам массива
Часть раздела Основы путешествия по GDScript на Coddy. Урок 63 из 92.
У каждого элемента массива есть индекс — его позиция в массиве. Индексы начинаются с 0, поэтому последний индекс равен размеру минус один:
var letters := ["a", "b", "c", "d"]"a"находится по индексу 0"b"находится по индексу 1"d"находится по индексу 3
Чтобы прочитать элемент, укажи его индекс в квадратных скобках после массива:
var scores := [10, 20, 30, 40, 50]
print(scores[2])30Отрицательный индекс отсчитывается с конца: scores[-1] — это последний элемент (50), а scores[-2] — предыдущий (40).
В цикле по range(scores.size()) переменная принимает каждый индекс массива, поэтому ты можешь по очереди считывать каждый элемент:
for i in range(scores.size()):
print(scores[i])Чтение несуществующего индекса, например scores[5] в массиве из 5 элементов, останавливает программу с ошибкой.
Задание
ЛегкоМассив inventory содержит 6 элементов. Программа считывает из ввода число count (от 1 до 6).
- Выведи первые
countэлементов, по одному в строке. Используй цикл по индексам. - Затем выведи
Last:, а после него — последний элемент, считанный с помощью отрицательного индекса.
Для ввода 3 вывод будет таким:
sword
shield
potion
Last: ropeПопробуйте сами
extends Node
func _ready():
var inventory := ["sword", "shield", "potion", "map", "torch", "rope"]
var count := int(OS.read_string_from_stdin())
# Выведите первые count элементов, каждый с новой строки
# Затем выведите "Last: " и последний элемент
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Операторы. Часть 1
Арифметические операторыЦелочисленное делениеОператор остатка от деленияСокращённая запись арифметических операцийПовторение — простая математикаОператоры сравнения7Основы ввода и вывода
ВыводВывод с переменнымиФорматирование строкВводПреобразование типовПовторение — до 120Повторение — истина или ложь5Операторы, часть 2
Логические операторы, часть 1Логические операторы, часть 2Повторение: простая логикаЛогические операторы, часть 3Тернарный оператор8Калькулятор для разделения счёта
Приветственное сообщениеВвод данных11FizzBuzz с неожиданным поворотом
Обзор игрыФункция FizzBuzz14Массивы: продвинутый уровень
Срезы массивовОператоры последовательностейПринадлежностьСортировка и обратный порядок3Переменные. Часть 2
Объявление типаВывод типаКонстантыПовторение — инициализация переменныхПреобразование типов6Принятие решений
Оператор ifЕсли — иначеПовторение: простой калькуляторВложенные условия if — elseОператор match9Циклы
Цикл forЦикл whileBreakContinueПовторение — факториалФункция rangeВложенный циклПовторение — динамический ввод12Основы массивов
Объявление массиваДоступ к элементам массиваИзменение массивовМетоды массивовПовторение — массив произведенийПовторение — перевёрнутый массивТипизированные массивыПотренируйтесь самостоятельно: Онлайн-компилятор GDScript