Курс языка программирования Raku / Приложение 🆕 / Работа с данными / Списки, массивы и хеши / Exercises / Второе по величине значение

Решение: Второе по величине значение

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

Код

my @numbers = 3, 9, 4, 9, 1, 7;

my @distinct = @numbers.Set.keys.sort;

say @distinct[*-2];

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

Вывод

7

Комментарии

  1. Превращение списка в Set методом .Set отбрасывает повторную 9, поскольку множество хранит каждое значение лишь однажды.

  2. .keys возвращает различные значения — по-прежнему Int, а не строки, — поэтому обычный .sort упорядочивает их численно. Второе по величине оказывается на одну позицию раньше конца: [*-2].

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

Второе по величине значение   |   Разделите на чётные и нечётные