Raku kurss / Pielikums 🆕 / Darbs ar datiem / Teksts un virknes / Exercises / Vārdu biežums

Risinājums: Vārdu biežums

Šeit ir iespējams risinājums uzdevumam.

Kods

my $text = 'the cat sat on the mat the cat';

my %freq;
%freq{$_}++ for $text.words;

for %freq.sort({ -.value, .key }) -> $pair {
    say "{$pair.key}: {$pair.value}";
}

🦋 Atrodiet programmu failā word-frequency.raku.

Izvade

the: 3
cat: 2
mat: 1
on: 1
sat: 1

Komentāri

  1. $text.words dod vārdus; %freq{$_}++ katram palielina skaitītāju, pirmajā reizē atslēgu izveidojot.

  2. Kārtošana pēc -.value liek biežāko pa priekšu; pievienojot .key kā otro kārtošanas lauku, vienādi skaiti tiek sašķirti alfabētiski, tāpēc secība ir pilnīgi noteikta.

Kursa navigācija

Vārdu biežums   |   Apgrieziet vārdu secību