Raku kurss / Funkcionālā, paralēlā, reaktīvā un tīmekļa programmēšana / Funkcionālā programmēšana / Lambdas un slēgumi / Exercises / Uzkrājējs

Risinājums: Uzkrājējs

Šeit ir iespējams risinājums uzdevumam.

Kods

sub make-accumulator {
    my $sum = 0;
    return -> $x { $sum += $x };
}

my &acc = make-accumulator;
acc(10);
say acc(5);

🦋 Atrodiet programmu failā accumulator.raku.

Izvade

15

Komentāri

  1. Slēgums satver $sum, kas izdzīvo starp izsaukumiem.

  2. acc(10) padara summu par 10; acc(5) pieskaita piecus un atgriež 15.

Kursa navigācija

Uzkrājējs   |   Samazināšana