Курс по 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].

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

Втората по големина стойност   |   Разделете на четни и нечетни