Cursus Raku / Addendum 🆕 / Verloop en functies / Besturingsstructuren en logica / Exercises / Lettercijfers
Oplossing: Lettercijfers
Hier is een mogelijke oplossing voor de taak.
Code
for 95, 82, 71, 58 -> $score {
my $grade = do given $score {
when * >= 90 { 'A' }
when * >= 80 { 'B' }
when * >= 70 { 'C' }
when * >= 60 { 'D' }
default { 'F' }
}
say "$score -> $grade";
}🦋 Je kunt de broncode vinden in het bestand letter-grades.raku.
Uitvoer
95 -> A
82 -> B
71 -> C
58 -> FOpmerkingen
do givenmaakt van het helegiven/wheneen uitdrukking waarvan de waarde het matchende blok is — hier een cijferletter — die in$gradebewaard wordt.Elke
when * >= Nis een Whatever-vergelijking met het onderwerp. De eerste die slaagt wint, dus hebben de grenzen elk alleen een ondergrens nodig.