Курс языка программирования Raku / Основы / Строки / Упражнения / Таблица покупок
Решение: Таблица покупок
Код
Вот возможное решение:
my $chair-price = 20.57;
my $chairs = 4;
my $chairs-total = $chair-price * $chairs;
my $table-price = 50.18;
my $tables = 1;
my $tables-total = $table-price * $tables;
say "Item\tPrice\tN\tTotal";
say "Chairs\t\$$chair-price\t$chairs\t\$$chairs-total";
say "Tables\t\$$table-price\t$tables\t\$$tables-total";
Все числа заданы вручную и сохранены в переменных. Мы также используем оператор
умножения *
, чтобы посчитать результат. Мы узнаем больше об операторах в
следующих главах этого курса, но на данный момент конструкция $chair-price *
$chairs
не должна быть чем-то, что вызывает вопросы.
Три строки, которые производят вывод, печатают три ряда таблицы, включая
заголовки. Колонки отделены друг от друга символом таб \t
. В рядах с данными
мы также видим экранированный символ доллара \$
, как и другие переменные,
которые мы хотим интерполировать.
🦋 Вы можете найти исходный код в файле purchase-table.raku.
Вывод
Запустите программу, и она выведет таблицу:
$ raku exercises/strings/purchase-table.raku
Item Price N Total
Chairs $20.57 4 $82.28
Tables $50.18 1 $50.18
Комментарии
Вы заметили дефисы в именах переменных, таких как $chair-price
или
$tables-total
? Это вполне приемлемый способ именования переменных в Raku.
Не позвольте себя смутить двумя последовательными знаками доллара. Raku читает
их по-отдельности. Например, в подстроке \$$price
первый знак доллара
экранирован и поэтому представляет сам себя, тогда как второй является частью
переменной $price
.
Все строки заключены в двойные кавычки, чтобы позволить интерполяцию переменных и специальных символов.
Давайте еще раз вернемся к этому заданию, когда мы познакомимся с массивами и словарями.
Следующее упражнение
Навигация по курсу
← Скалярные переменные / Имена переменных | Числа →
Эта страница переведена с английского человеком. Оригинальный текст на английском языке. О переводе.
Переводы этой страницы: English • Deutsch • Español • Italiano • Latviešu • Nederlands • Български • Русский • Українська