Cursus Raku / Provectus / Subprogrammata / Multiplex dispatch / Exercises / Magnitudinem classificare

Solutio: Magnitudinem classificare

Hic est possibilis solutio ad munus.

Codex

multi sub size(Int $n where $n.abs < 10)  { 'small' }
multi sub size(Int $n where $n.abs < 100) { 'medium' }
multi sub size(Int $n)                    { 'large' }

say size(7);
say size(30);
say size(-250);

🦋 Inveni codicem fontem in archivo classify-sign.raku.

Exitus

small
medium
large

Commentarii

  1. Omnes tres candidati unum Int accipiunt, itaque sine clausulis where inter se confligerent. Condiciones in primis duobus eos distinctos faciunt, et tertius receptaculum omnium est.

  2. Clausulae where $n.abs probant, itaque sola magnitudo resultatum determinat et signum ignoratur. size(7) primo candidato congruit (small), dum size(-250) valorem absolutum 250 habet, qui ambabus condicionibus non satisfacit et ad receptaculum omnium cadit (large).

  3. Candidati a specificissimo ad generalissimum probantur — exacte eo ordine quo hic scripti sunt.

Magnitudinem classificare   |   Quiz — Dispatch cum where