Cursus Raku / Functioneel, concurrent, reactief en webprogrammeren / Functioneel programmeren / Reductie / Exercises / De langste string
Oplossing: De langste string
Hier is een mogelijke oplossing voor de taak.
Code
my @animals = 'cat', 'elephant', 'dog', 'fox';
say @animals.reduce(-> $a, $b { $b.chars > $a.chars ?? $b !! $a });🦋 Je kunt de broncode vinden in het bestand longest-string.raku.
Uitvoer
elephantOpmerkingen
Het blok houdt de langste van zijn twee argumenten:
$ais de langste string die tot nu toe gezien is,$bis de volgende, en de ternaire uitdrukking geeft degene met de meeste tekens terug.reducedraagt die winnaar bij de volgende aanroep als$amee, dus is na het doorlopen van de hele lijst de opgebouwde waarde de langste string van allemaal —elephant.