Raku kurss / Padziļināti / Izpildes plūsma / gather un
take / Exercises / Kvadrāti
Risinājums: Kvadrāti
Šeit ir iespējams risinājums uzdevumam.
Kods
my @squares = gather for 1..6 {
take $_ ** 2 if $_ %% 2;
};
say @squares;🦋 Atrodiet programmu failā squares.raku.
Izvade
[4 16 36]Komentāri
Nosacījums
if $_ %% 2izlemj, vai ņemt, bet$_ ** 2izlemj, ko ņemt. Nosacījumu iztur tikai pāra skaitļi2,4,6.To kvadrāti
4,16,36ir vienīgās vērtības, kas nodotastake, tāpēcgathersavāc tieši tās. Filtrēšanu un pārveidošanu apvienot vienātakeir kaut kas tāds, ko vienkāršsmaptik tīri izteikt nespēj.
Kursa navigācija
← Kvadrāti | Vākt līdz pilnam →