Изменение массивов
Часть раздела Основы путешествия по Ruby на Coddy. Урок 60 из 88.
Теперь, когда ты знаешь, как обращаться к элементам массива, давай научимся изменять их. Ты можешь изменить любой элемент, присвоив его индексу новое значение:
fruits = ["apple", "banana", "cherry"]
fruits[1] = "mango"
puts fruits # Выводит: apple, mango, cherryЧтобы добавлять элементы в массив, используй метод push или оператор добавления <<. Оба добавляют элементы в конец:
colors = ["red", "blue"]
colors.push("green")
colors << "yellow"
puts colors # Выводит: red, blue, green, yellowДля удаления элементов Ruby предоставляет несколько вариантов. Метод pop удаляет и возвращает последний элемент, а shift удаляет первый:
numbers = [1, 2, 3, 4]
numbers.pop # Удаляет 4
numbers.shift # Удаляет 1
puts numbers # Выводит: 2, 3Вы также можете удалить определённое значение с помощью delete:
letters = ["a", "b", "c", "b"]
letters.delete("b")
puts letters # Выводит: a, cОбратите внимание, что delete удаляет все вхождения указанного значения из массива.
Задание
ЛегкоВам предоставлен следующий массив:
tasks = ["email", "meeting", "lunch", "report", "call"]Считайте три значения:
- Индекс (целое число) — позиция для изменения
- Новое значение (строка) — значение, которое заменит элемент в этой позиции
- Значение для удаления (строка) — элемент, который нужно удалить из массива
Выполните следующие операции по порядку:
- Замените элемент с заданным индексом новым значением
- Добавьте
"review"в конец массива с помощьюpush - Добавьте
"planning"в конец массива с помощью оператора shovel<< - Удалите последний элемент с помощью
pop - Удалите первый элемент с помощью
shift - Удалите все вхождения указанного значения с помощью
delete
Выведите итоговый массив с помощью puts.
Например, если входные данные — 2, break и call, результат должен быть таким:
meeting
break
report
reviewЕсли входные данные — 0, standup и report, результат должен быть таким:
meeting
lunch
call
reviewЕсли входные данные — 4, demo и lunch, результат должен быть таким:
meeting
report
demo
reviewПопробуйте сами
# Исходный массив
tasks = ["email", "meeting", "lunch", "report", "call"]
# Считайте входные данные
index = gets.chomp.to_i
new_value = gets.chomp
value_to_delete = gets.chomp
# TODO: Напишите свой код ниже
# 1. Замените элемент по заданному индексу новым значением
# 2. Добавьте в конец точный текст из инструкции с помощью push
# 3. Добавьте "planning" в конец с помощью оператора «лопата» <<
# 4. Удалите последний элемент с помощью pop
# 5. Удалите первый элемент с помощью shift
# 6. Удалите все вхождения указанного значения с помощью delete
# Выведите итоговый массив
puts tasksВ этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
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Преобразование типовИтоги — Калькулятор возрастаИтоги — Истина или ложьПотренируйтесь самостоятельно: Онлайн-компилятор Ruby