Raku kurss / Funkcionālā, paralēlā, reaktīvā un tīmekļa programmēšana / Paralēlā programmēšana / hyper un race 🆕 / Exercises / hyper ar filtru
Risinājums: hyper ar filtru
Šeit ir iespējams risinājums uzdevumam.
Kods
say (1..20).hyper.grep(* > 10).map(*²);🦋 Atrodiet programmu failā hyper-filter.raku.
Izvade
(121 144 169 196 225 256 289 324 361 400)Komentāri
*²ir tikai Raku augšraksta pieraksts izteiksmei* ** 2:²ir postfiksais pakāpes operators, tāpēc*²irWhateverCode, kas savu argumentu kāpina kvadrātā. Rakstiet* ** 2, ja tā patīk labāk..hyperparalelizē visu ķēdi —grep, kas patur skaitļus virs10, unmap, kas tos kāpina kvadrātā —, saglabājot secību.Tā kā secība tiek saglabāta, kvadrāti atgriežas tādā pašā kārtībā kā to ievaddati (
11²,12², …,20²), dodot(121 144 169 196 225 256 289 324 361 400).