Курс языка программирования Raku / Продвинутый уровень / Подробнее о встроенных типах / Перечисления / Exercises / Номера дней недели

Решение: Номера дней недели

Вот возможное решение задачи.

Код

enum Day (Mon => 1, Tue => 2, Wed => 3, Thu => 4, Fri => 5);

say Day(5);
say Day(1);

🦋 Исходный код можно найти в файле weekday-values.raku.

Вывод

Fri
Mon

Комментарии

  1. Запись констант в виде пар позволяет выбирать числа, здесь начиная с 1.

  2. Вызов типа перечисления как Day(5) выполняет обратный поиск: находит константу, значение которой равно 5, то есть Fri. Аналогично Day(1) дает Mon. Это обратная операция по отношению к Fri.value, которая переходит от имени к числу.

Навигация по курсу

Номера дней недели   |   Подсчёт и сумма