Menu
CoddyTech

Доступ к элементам массива

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

Каждый элемент массива имеет позицию, которая называется индексом. В Ruby индексация начинается с 0, то есть первый элемент находится по индексу 0, второй — по индексу 1 и так далее.

Чтобы получить доступ к элементу, используйте квадратные скобки с индексом:

fruits = ["apple", "banana", "cherry"]
puts fruits[0]  # Выводит: apple
puts fruits[1]  # Выводит: banana
puts fruits[2]  # Выводит: cherry

Ruby также поддерживает отрицательную индексацию, при которой отсчёт ведётся от конца массива. Индекс -1 соответствует последнему элементу, -2 — предпоследнему и так далее:

colors = ["red", "green", "blue"]
puts colors[-1]  # Выводит: blue
puts colors[-2]  # Выводит: green

Для быстрого доступа к началу и концу массива можно также использовать методы first и last:

numbers = [10, 20, 30, 40]
puts numbers.first  # Выводит: 10
puts numbers.last   # Выводит: 40

Если попытаться обратиться к несуществующему индексу, Ruby вернёт nil вместо того, чтобы вызвать ошибку:

letters = ["a", "b", "c"]
puts letters[10]  # Вывод: (ничего — nil)
challenge icon

Задание

Легко

Вам предоставлен следующий массив:

planets = ["Mercury", "Venus", "Earth", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune"]

Прочитайте из ввода одно целое число, обозначающее индекс. Получите элемент с этим индексом и выведите его.

Используйте отрицательную индексацию, если введено отрицательное число. Ввод всегда будет допустимым индексом этого массива (от -8 до 7).

После вывода элемента с заданным индексом выведите первый и последний элементы массива в отдельных строках, используя методы first и last.

Например, если введено 2, вывод должен быть таким:

Earth
Mercury
Neptune

Если введено -1, вывод должен быть таким:

Neptune
Mercury
Neptune

Если введено 4, вывод должен быть таким:

Jupiter
Mercury
Neptune

Попробуйте сами

# Массив планет
planets = ["Mercury", "Venus", "Earth", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune"]

# Считайте индекс из входных данных
index = gets.chomp.to_i

# TODO: Напишите свой код ниже
# 1. Получите и выведите элемент с заданным индексом
# 2. Выведите первый элемент с помощью метода first
# 3. Выведите последний элемент с помощью метода last
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы

Потренируйтесь самостоятельно: Онлайн-компилятор Ruby