Курс по Raku / Напреднали / Оператори / Метаоператори / Exercises / Средна стойност на масив
Решение: Средна стойност на масив
Ето едно възможно решение на задачата.
Код
my @data = 10, 20, 30, 40;
say ([+] @data) / @data.elems;🦋 Можете да намерите пълния код във файла sum-of-array.raku.
Резултат
25Коментари
Метаоператорът за редукция
[+]поставя оператора+между всички елементи на@data, така че[+] @dataе еквивалентно на10 + 20 + 30 + 40, тоест100. Скобите са необходими, за да се извърши редукцията преди делението.Разделянето на сумата на
@data.elems, броя на елементите, дава средната стойност25. Ако резултатът не се делеше точно, Raku щеше да даде точна дроб от типRat, вместо да закръгля.