Получение пользовательского ввода
Часть раздела Основы путешествия по Ruby на Coddy — урок 35 из 88.
Задание
ЛегкоВ предыдущем уроке вы создали приветственное сообщение для калькулятора разделения счета (Bill Split Calculator). Теперь добавьте функциональность для сбора пользовательского ввода для расчета счета.
После существующего приветственного сообщения считайте три значения, введенных пользователем:
- Общую сумму счета
- Процент чаевых (как целое число, например,
15для 15%) - Количество человек, разделяющих счет
Считывайте каждый ввод с помощью gets.chomp и преобразуйте их в числовые значения с помощью .to_f. Сохраните их в переменных с именами bill, tip_percent и people.
После чтения входных данных выведите подтверждающее сообщение, показывающее, что было введено, в следующем формате:
Bill: $[bill]
Tip: [tip_percent]%
People: [people]Используйте puts для всего вывода и форматируйте числа, используя оператор форматирования строк Ruby % со спецификатором %g, который удаляет лишние нули в конце (например, 75.50 отображается как 75.5, а 100.0 — как 100).
Оператор % работает следующим образом: "format string" % value. Например:
puts "Bill: $%g" % 75.5 # => Bill: $75.5
puts "Bill: $%g" % 100.0 # => Bill: $100Чтобы включить литеральный символ % в вывод (например, для процента чаевых), используйте %% в строке формата — двойной процент используется для экранирования литерального знака процента:
puts "Tip: %g%%" % 18.0 # => Tip: 18%Например, если входные данные равны 120, 18 и 4, полный вывод должен быть таким:
Welcome to the Bill Split Calculator!
Let's split your bill fairly.
Bill: $120
Tip: 18%
People: 4Попробуйте сами
# TODO: Write your code below
# Use puts to display the welcome message
# Remember to use \n for new lines
puts "Welcome to the Bill Split Calculator!\nLet's split your bill fairly."Все уроки раздела Основы
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Преобразование типовИтоги — Калькулятор возрастаИтоги — Истина или ложь