Курс языка программирования Raku / Приложение 🆕 / Собираем всё вместе / Смешанные мини-проекты / Exercises / Текстовая гистограмма
Решение: Текстовая гистограмма
Вот один из возможных вариантов решения задачи.
Код
my %sales = apples => 5, pears => 3, plums => 8;
for %sales.sort -> $pair {
say "{$pair.key}\t{ '#' x $pair.value }";
}🦋 Исходный код можно найти в файле histogram.raku.
Вывод
apples #####
pears ###
plums ########Комментарии
Полосы строит оператор повторения строк
x:'#' x 5даёт#####. Значение попросту становится длиной полосы.\tмежду подписью и полосой — символ табуляции, благодаря которому полосы выстраиваются в столбец, а не начинаются сразу за именами разной длины.