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í
×
    dnes 13:44 | Nová verze

    Byla vydána beta verze Linux Mintu 22.2 s kódovým jménem Zara. Podrobnosti v přehledu novinek a poznámkách k vydání. Vypíchnout lze novou XApp aplikaci Fingwit pro autentizaci pomocí otisků prstů nebo vlastní fork knihovny libAdwaita s názvem libAdapta podporující grafická témata. Linux Mint 22.2 bude podporován do roku 2029.

    Ladislav Hagara | Komentářů: 0
    dnes 13:00 | IT novinky

    Provozovatel internetové encyklopedie Wikipedie prohrál v Británii soudní spor týkající se některých částí nového zákona o on-line bezpečnosti. Soud ale varoval britského regulátora Ofcom i odpovědné ministerstvo před zaváděním přílišných omezení. Legislativa zpřísňuje požadavky na on-line platformy, ale zároveň čelí kritice za možné omezování svobody slova. Společnost Wikimedia Foundation, která je zodpovědná za fungování

    … více »
    Ladislav Hagara | Komentářů: 1
    dnes 12:55 | Nová verze

    Byla vydána verze 2.0.0 nástroje pro synchronizaci dat mezi vícero počítači bez centrálního serveru Syncthing (Wikipedie). Přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 2
    dnes 12:33 | IT novinky

    Americký prezident Donald Trump se v pondělí osobně setkal s generálním ředitelem firmy na výrobu čipů Intel Lip-Bu Tanem. Šéfa podniku označil za úspěšného, informují agentury. Ještě před týdnem ho přitom ostře kritizoval a požadoval jeho okamžitý odchod. Akcie Intelu v reakci na schůzku po oficiálním uzavření trhu zpevnily asi o tři procenta.

    Ladislav Hagara | Komentářů: 9
    včera 04:55 | Nová verze

    Byl vydán Debian GNU/Hurd 2025. Jedná se o port Debianu s jádrem Hurd místo obvyklého Linuxu.

    Ladislav Hagara | Komentářů: 5
    včera 02:44 | Komunita

    V sobotu 9. srpna uplynulo přesně 20 let od oznámení projektu openSUSE na konferenci LinuxWorld v San Franciscu. Pokuď máte archivní nebo nějakým způsobem zajímavé fotky s openSUSE, můžete se o ně s námi podělit.

    lkocman | Komentářů: 5
    9.8. 21:11 | Nová verze

    Byl vydán Debian 13 s kódovým názvem Trixie. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 8
    9.8. 15:55 | Zajímavý software

    WLED je open-source firmware pro ESP8266/ESP32, který umožňuje Wi-Fi ovládání adresovatelných LED pásků se stovkami efektů, synchronizací, audioreaktivním módem a Home-Assistant integrací. Je založen na Arduino frameworku.

    Indiánský lotr | Komentářů: 0
    8.8. 15:33 | Nová verze

    Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.8.

    Ladislav Hagara | Komentářů: 11
    8.8. 14:22 | IT novinky

    Herní studio Hangar 13 vydalo novou Mafii. Mafia: Domovina je zasazena do krutého sicilského podsvětí na začátku 20. století. Na ProtonDB je zatím bez záznamu.

    Ladislav Hagara | Komentářů: 1
    Kolik tabů máte standardně otevřeno ve web prohlížeči?
     (47%)
     (21%)
     (4%)
     (5%)
     (3%)
     (1%)
     (1%)
     (18%)
    Celkem 339 hlasů
     Komentářů: 23, poslední 4.8. 13:01
    Rozcestník

    Dotaz: Hledání slov v text. souboru

    22.1.2014 00:39 Dan
    Hledání slov v text. souboru
    Přečteno: 274×
    Zdravím, chtěl bych poprosit o pomoc při vytváření tohoto programu:

    Chci udělat program, kde uživatel zadá 4-7 náhodných písmen a program ukáže ty slova ve kterém jsou ta písmena.

    Mám k tomu textový soubor, který vypadá nějak takhle (je tam několik tisíc slov): KSF KHG ZTGH LOKIU KJSNVM KSJFNTM MKSJNVI

    takže například když zadám písmena KSJV, tak se mi má zobrazit slova KJSNVM a MKSJNVI

    Zatím jsem došel tak daleko:

    http://pastebin.com/SarQrCrj

    Řešení dotazu:


    Odpovědi

    22.1.2014 09:46 Aleš Kapica | skóre: 52 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Hledání slov v text. souboru
    Panenko skákavá...
    for i in $(<text.txt); do echo $i | grep a | grep b | grep c | grep d ; done
    To je domácí úkol na ZŠ?
    22.1.2014 09:55 potato
    Rozbalit Rozbalit vše Re: Hledání slov v text. souboru
    Panenko skákavá, zase někdo označuje vlastní odpovědi za řešení, i když vůbec není jasné, zda s řešením jakkoli souvisejí (například to není program v C).
    22.1.2014 09:54 potato
    Rozbalit Rozbalit vše Re: Hledání slov v text. souboru
    Předpokládám, že to píšeš jako cvičení, takže nebudu popisovat, jak celý program nahradit triviálním skriptem s grepem...

    Nepoužívat gets() ani funkce Xscanf() s normálním %s, to je akorát recept na padající program. Namísto toho použít getline(), Xscanf() se zadanou délkou řetezce %.123s nebo ještě lépe automatickou alokací výsledku %ms.

    Vnitřní prohledávací cyklus je nějaký podivný a printf() vypisuje kus slova od nalezené posice... Neejednodušší (ne nutně nejefektivnější) postup je projít pro každé slovo zadaná písmena, pro každé otestovat, zda je ve slově přítomno (např. tím strchr()). Když není, tak nastavit nějaký flag a nechat procházení. Pokud projdeš všechna a flag zůstane nenastavený, tak poté to slovo vypsat.
    22.1.2014 15:03 MadCatX
    Rozbalit Rozbalit vše Re: Hledání slov v text. souboru
    Hodně "manuální" možností je použít fgetc(), znaky ukládat do dynamicky alokovaného řetězce a je-li slovo příliš dlouhé, použít realloc(). Výhodou je, že to půjde zkompilovat a tam, kde "%ms" není dostupné. Písmena k otestování bych uložil do řetězce a postupně volal strchr() nad jednotlivými znaky v něm:
    void check_word(const char* word)
    {
      size_t idx;
      size_t letters_len = strlen(letters);
    
      for (idx = 0; idx < letters_len; idx++) {
        if (strchr(word, letters[idx]) == NULL)
          return;
      }
    
      printf("Word %s contains all letters\n", word);
    }
    

    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.