Курс Раку / Основи / Позиційні типи даних / Вправи / Світлофори
Рішення: Світлофори
Ідея рішення полягає в тому, щоб «зациклити індексацію» масиву з чотирма станами світлофора:
my @lights = <yellow red yellow green>;
Протягом перших секунд, кількість секунд з початку можна безпосередньо використовувати як індекс у масиві. Коли вона перевищує 3, ви можете зациклити її на початок масиву за допомогою оператора модуло %
. Довжина масиву дорівнює @lights.elems
, але коли вона використовується як операнд %
, немає потреби викликати метод elems
, оскільки ім’я масиву буде перетворено на число, і це перетворення призначене для повернення кількості елементів.
Код
Ось рішення:
my @lights = <yellow red yellow green>;
say @lights[51 % @lights];
say @lights[102 % @lights];
say @lights[305 % @lights];
🦋 Знайдіть програму у файлі traffic-lights.raku.
Вивід
Запустіть програму. Додатково спробуйте інші значення в програмі.
$ raku exercises/positionals/traffic-lights.raku
green
yellow
red
Наступна вправа
Навігація по курсу
← Типізовані змінні / Аломорфи | Асоціативні типи даних →
Ця сторінка автоматично перекладена за допомогою ChatGPT 4o. Оригінальний текст англійською мовою.
Переклади цієї сторінки: English • Deutsch • Español • Italiano • Latviešu • Nederlands • Български • Русский • Українська