abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 23:00 | IT novinky

    Společnost Pebble představila (YouTube) chytré hodinky Pebble Round 2. S kulatým e-paper displejem, s open source PebbleOS a vydrží baterie přibližně dva týdny. Předobjednat je lze za 199 dolarů s plánovaným dodáním v květnu.

    Ladislav Hagara | Komentářů: 0
    včera 14:22 | Humor

    Na novoroční inauguraci starosty New Yorku Zohrana Mamdaniho bylo zakázáno si s sebou přinést Raspberry Pi anebo Flipper Zero. Raspberry Pi i Flipper Zero jsou explicitně uvedeny v seznamu zakázaných věcí jak na na veřejné pozvánce, tak i na oficiálních stránkách města.

    NUKE GAZA! 🎆 | Komentářů: 18
    včera 11:33 | Nová verze

    OpenTTD (Wikipedie), tj. open source klon počítačové hry Transport Tycoon Deluxe, byl vydán v nové stabilní verzi 15.0. Přehled novinek v seznamu změn a také na YouTube. OpenTTD lze instalovat také ze Steamu.

    Ladislav Hagara | Komentářů: 2
    včera 11:11 | Nová verze

    Správce oken IceWM byl vydán ve verzi 4.0.0, která např. vylepšuje navigaci v přepínání velkého množství otevřených oken.

    |🇵🇸 | Komentářů: 4
    včera 01:33 | Zajímavý projekt

    Od 1. ledna 2026 jsou všechny publikace ACM (Association for Computing Machinery) a související materiály přístupné v její digitální knihovně. V rámci této změny je nyní digitální knihovna ACM nabízena ve dvou verzích: v základní verzi zdarma, která poskytuje otevřený přístup ke všem publikovaným výzkumům ACM, a v prémiové zpoplatněné verzi, která nabízí další služby a nástroje 'určené pro hlubší analýzu, objevování a organizační využití'.

    NUKE GAZA! 🎆 | Komentářů: 5
    1.1. 16:44 | IT novinky

    S koncem roku 2025 skončila standardní podpora operačního systému HP-UX (Hewlett Packard Unix).

    Ladislav Hagara | Komentářů: 10
    1.1. 14:33 | Nová verze

    K 1. lednu 2026 končí 70leté omezení majetkových autorských práv děl autorů zesnulých v roce 1955, viz 2026 in public domain. V americkém prostředí vstupují do public domain díla z roku 1930, viz Public Domain Day.

    |🇵🇸 | Komentářů: 2
    31.12. 15:00 | Nová verze

    Všem vše nejlepší do nového roku 2026.

    Ladislav Hagara | Komentářů: 12
    31.12. 13:33 | Zajímavý software

    Crown je multiplatformní open source herní engine. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT a GPLv3+. Byla vydána nová verze 0.60. Vyzkoušet lze online demo.

    Ladislav Hagara | Komentářů: 0
    31.12. 12:11 | Zajímavý článek

    Daniel Stenberg na svém blogu informuje, že po strncpy() byla ze zdrojových kódů curlu odstraněna také všechna volání funkce strcpy(). Funkci strcpy() nahradili vlastní funkcí curlx_strcopy().

    Ladislav Hagara | Komentářů: 6
    Které desktopové prostředí na Linuxu používáte?
     (0%)
     (3%)
     (0%)
     (18%)
     (32%)
     (13%)
     (5%)
     (5%)
     (13%)
     (34%)
    Celkem 62 hlasů
     Komentářů: 1, poslední včera 06:15
    Rozcestník

    Dotaz: PERL - odstranění duplicit v poli a jejich spočítání

    5.12.2010 13:36 Pirkil
    PERL - odstranění duplicit v poli a jejich spočítání
    Přečteno: 594×
    Ahoj, učím se základy programování v PERLu a mám problém. Potřebuju napsat program na počítání písmen v textovém souboru. Došel jsem do fáze, kdy mám všechna písmena uložená v poli @abcd. (Je jich mnoho a opakují se.) Nyní potřebuju z pole dostat frekvenci jednotlivých písmen a uložit každé písmeno s jeho frekvencí do hashe. (Můžu to sice udělat tak, že dám vypsat prvky pole po řádcích, uložím výstup programu do textového souboru a potom zadám v shellu:

    sort soubor.txt | uniq -c

    ale, já bych chtěl posléze setřídit klíče hashe a udělat to celé v Perlu.)

    Díky moc za pomoc!

    Řešení dotazu:


    Odpovědi

    5.12.2010 14:17 Ondřej Kopka | skóre: 19 | blog: ondrejk
    Rozbalit Rozbalit vše Re: PERL - odstranění duplicit v poli a jejich spočítání
    to by melo resit neco v tomto smyslu:
    my $hash = {};
    foreach my $item (@array) {
     $hash->{$item}->{count}++;
    }
    
    Řešení 1× (buff)
    5.12.2010 14:18 Ondřej Kopka | skóre: 19 | blog: ondrejk
    Rozbalit Rozbalit vše Re: PERL - odstranění duplicit v poli a jejich spočítání
    vlastne by stacilo i $hash->{$item}++
    wamba avatar 6.12.2010 18:20 wamba | skóre: 38 | blog: wamba
    Rozbalit Rozbalit vše Re: PERL - odstranění duplicit v poli a jejich spočítání
    nemá to být $hash{$item}++ ?
    This would have been so hard to fix when you don't know that there is in fact an easy fix.
    wamba avatar 6.12.2010 18:22 wamba | skóre: 38 | blog: wamba
    Rozbalit Rozbalit vše Re: PERL - odstranění duplicit v poli a jejich spočítání
    odpovím si sám nemá, muselo by být my %hash místo my $hash
    This would have been so hard to fix when you don't know that there is in fact an easy fix.
    Řešení 1× (Pirkil (tazatel))
    5.12.2010 14:23 Ondřej Kopka | skóre: 19 | blog: ondrejk
    Rozbalit Rozbalit vše Re: PERL - odstranění duplicit v poli a jejich spočítání
    5.12.2010 19:35 Pirkil
    Rozbalit Rozbalit vše Re: PERL - odstranění duplicit v poli a jejich spočítání
    Nakonec jsem to udělal pomocí funkce map. Četl jsem o ní už dřív, ale nevěděl jsem, jak se používá. Souvisí to s tím, že moc neznám funkci operátoru $_ . Experimentální cestou jsem na to přišel. :) Díky za pomoc!
    5.12.2010 21:50 Jirka P
    Rozbalit Rozbalit vše Re: PERL - odstranění duplicit v poli a jejich spočítání
    Když už si hrát s mapem, proč to neudělat takto:
    my %counts=(map {($_, 0)} @arr);
    keys %counts;
    6.12.2010 01:21 Pirkil
    Rozbalit Rozbalit vše Re: PERL - odstranění duplicit v poli a jejich spočítání
    ...chtěl jsem říct funkci speciální proměnné... :)

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.