Menu
Coddy logo textTech

Ввод с помощью gets

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

До сих пор вы узнали, как выводить данные. Теперь давайте научимся получать ввод от пользователя. Метод gets считывает строку текста, которую вводит пользователь.

name = gets
puts "Hello, #{name}"

Когда Ruby встречает gets, он ожидает, пока пользователь что-нибудь введет и нажмет Enter. Все, что он введет, сохраняется в переменной. Если пользователь введет "Alice", вывод будет следующим:

Hello, Alice

Здесь важно заметить одну деталь. Когда пользователь нажимает Enter, этот символ новой строки включается в ввод.

Вот почему «Alice» отображается с лишней пустой строкой после неё. Переменная на самом деле содержит "Alice\n", где \n представляет собой символ новой строки.

Вы можете использовать p, чтобы ясно это увидеть:

name = gets
p name

Если пользователь введет "Ruby", результат будет следующим:

"Ruby\n"

Этот завершающий символ новой строки может вызвать неожиданное поведение в ваших программах. В следующем уроке вы узнаете, как его удалить.

challenge icon

Задание

Легко

Прочитайте имя пользователя с помощью gets и сохраните его в переменной с именем name.

Затем используйте p для вывода переменной name, что позволит отобразить необработанную строку, включая завершающий символ новой строки.

Например, если на вход подается Ruby, ваш вывод должен отображать строку с кавычками и видимым символом \n.

Шпаргалка

Метод gets считывает ввод пользователя из консоли:

name = gets
puts "Hello, #{name}"

Когда gets выполняется, программа ожидает, пока пользователь что-нибудь введет и нажмет Enter. Ввод сохраняется в переменной.

Метод gets включает символ новой строки (\n), когда пользователь нажимает Enter:

name = gets
p name
# Если пользователь вводит "Ruby", выводит: "Ruby\n"

Используйте p для отображения сырого представления строки, которое явно показывает символ новой строки.

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

# TODO: Прочитать имя пользователя с помощью gets и сохранить его в переменной с именем name


# TODO: Использовать p для вывода переменной name
quiz iconПроверьте себя

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

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