Cursus Raku / Addendum 🆕 / Cum datis laborare / Textus et catenae / Exercises / Codificatio per longitudinem seriei

Solutio: Codificatio per longitudinem seriei

Ecce solutio possibilis huius exercitationis.

Codex

my $text = 'aaabbbbcc';

my $encoded = '';
for $text ~~ m:g/ (.) $0* / -> $match {
    $encoded ~= $match[0] ~ $match.chars;
}

say $encoded;

🦋 Inveni codicem fontem in archivo run-length.raku.

Exitus

a3b4c2

Commentarii

  1. Exemplar (.) $0* unum signum capit deinde tot copias eius quot sequuntur congruit — unam totam seriem per congruentiam. m:g omnem seriem colligit.

  2. Pro unaquaque serie, $match[0] littera repetita est et $match.chars quam longa series sit, itaque duo simul elementa ut a3 dant.

  3. Congruentiam per -> $match nominare optionale est. Sine eo, unaquaeque congruentia thema $_ fit, et variabilem omittere et methodos in eo directe vocare potes:

    my $text = 'aaabbbbcc';
    my $encoded = '';
    
    for $text ~~ m:g/ (.) $0* / {
        $encoded ~= .[0] ~ .chars;
    }
    
    say $encoded;

Codificatio per longitudinem seriei   |   Indices, ordines et tabulae