Курс Raku / Додаток 🆕 / Робота з даними / Текст і рядки / Вправи / Шифр Цезаря

Розв’язання: Шифр Цезаря

Ось одне з можливих розв’язань задачі.

Код

my $text = 'HELLO';

$text ~~ tr/A..Z/D..ZA..C/;

say $text;

🦋 Знайдіть програму у файлі caesar-cipher.raku.

Вивід

KHOOR

Коментарі

  1. Оператор транслітерації tr/// відображає символи з першого набору на другий, позиція за позицією. A..Z вишиковується проти D..ZA..C, тож A стає D, B стає E, а хвіст X Y Z загортається назад до A B C.

  2. tr/// змінює рядок на місці, тож $text після зіставлення сам містить зашифроване слово.

Навігація курсом

Шифр Цезаря   |   Кодування довжин серій