Доступ к элементам массива
Часть раздела Основы путешествия по Ruby на Coddy — урок 59 из 88.
Каждый элемент в массиве имеет позицию, называемую индексом. В Ruby индексация начинается с 0, что означает, что первый элемент находится под индексом 0, второй — под индексом 1 и так далее.
Чтобы получить доступ к элементу, используйте квадратные скобки с индексом:
fruits = ["apple", "banana", "cherry"]
puts fruits[0] # Выводит: apple
puts fruits[1] # Выводит: banana
puts fruits[2] # Выводит: cherryRuby также поддерживает отрицательную индексацию, которая ведет отсчет с конца массива. Индекс -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)Задание
ЛегкоВам предоставлен следующий массив:
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Шпаргалка
Доступ к элементам массива осуществляется с помощью индекса, который начинается с 0:
fruits = ["apple", "banana", "cherry"]
puts fruits[0] # Выводит: apple
puts fruits[1] # Выводит: banana
puts fruits[2] # Выводит: cherryОтрицательная индексация ведет отсчет с конца массива (-1 — это последний элемент):
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Обращение к несуществующему индексу возвращает nil:
letters = ["a", "b", "c"]
puts letters[10] # Выводит: (ничего - nil)Попробуйте сами
# Массив планет
planets = ["Mercury", "Venus", "Earth", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune"]
# Чтение индекса из ввода
index = gets.chomp.to_i
# TODO: Напишите свой код ниже
# 1. Получите доступ и выведите элемент по заданному индексу
# 2. Выведите первый элемент, используя метод first
# 3. Выведите последний элемент, используя метод lastВ этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Операторы. Часть 2
Логические операторы. Часть 1Логические операторы. Часть 2Повторение — простая логикаЛогические операторы. Часть 3Логические операторы. Часть 47Калькулятор разделения счета
Приветственное сообщениеПолучение пользовательского ввода13Продвинутая работа с массивами
Срезы массивов через диапазоныСрезы массивов через индексыОператоры массивовМетод include?2Переменные и типы данных
Числа и переменныеСтроковый тип данныхЛогический тип данныхТип данных SymbolПроверка типов данныхПравила именованияПовторение: создание переменных5Принятие решений
Оператор IfКонструкция If - ElseПовторение — Простой калькуляторВложенные конструкции If - ElseОператор Unless8Циклы
Цикл For с диапазонамиЦикл WhileОператор BreakОператор NextПовторение: ФакториалЦикл TimesЦикл UntilВложенные циклыПовторение: Динамический ввод3Операторы. Часть 1
Арифметические операторыОператор остатка от деленияСокращенная арифметикаИтоги: простая математикаОператоры сравнения6Основы ввода-вывода
Вывод с помощью putsВывод с помощью print и pВывод с переменнымиВвод с помощью getsМетод chompПреобразование типовИтоги — Калькулятор возрастаИтоги — Истина или ложь