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 15:00 | Nová verze

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

    Ladislav Hagara | Komentářů: 6
    dnes 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
    dnes 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ářů: 1
    dnes 03:00 | Nová verze

    Byla vydána nová verze 25.12.30 svobodného multiplatformního video editoru Shotcut (Wikipedie) postaveného nad multimediálním frameworkem MLT. Shotcut je vedle zdrojových kódů k dispozici také ve formátech AppImage, Flatpak a Snap.

    Ladislav Hagara | Komentářů: 0
    včera 18:55 | IT novinky

    Společnost Valve publikovala přehled To nej roku 2025 ve službě Steam aneb ohlédnutí za nejprodávanějšími, nejhranějšími a dalšími nej hrami roku 2025.

    Ladislav Hagara | Komentářů: 0
    včera 16:11 | Komunita

    Byly publikovány výsledky průzkumu mezi uživateli Blenderu uskutečněného v říjnu a listopadu 2025. Zúčastnilo se více než 5000 uživatelů.

    Ladislav Hagara | Komentářů: 0
    včera 03:33 | Bezpečnostní upozornění

    V dokumentově orientované databázi MongoDB byla nalezena a v upstreamu již opravena kritická bezpečností chyba CVE-2025-14847 aneb MongoBleed.

    Ladislav Hagara | Komentářů: 0
    29.12. 23:11 | IT novinky

    Při úklidu na Utažské univerzitě se ve skladovacích prostorách náhodou podařilo nalézt magnetickou pásku s kopií Unixu V4. Páska byla zaslána do počítačového muzea, kde se z pásky úspěšně podařilo extrahovat data a Unix spustit. Je to patrně jediný známý dochovaný exemplář tohoto 52 let starého Unixu, prvního vůbec programovaného v jazyce C.

    NUKE GAZA! 🎆 | Komentářů: 11
    29.12. 15:55 | Komunita

    FFmpeg nechal kvůli porušení autorských práv odstranit z GitHubu jeden z repozitářů patřících čínské technologické firmě Rockchip. Důvodem bylo porušení LGPL ze strany Rockchipu. Rockchip byl FFmpegem na porušování LGPL upozorněn již téměř před dvěma roky.

    NUKE GAZA! 🎆 | Komentářů: 7
    29.12. 15:44 | Zajímavý software

    K dispozici je nový CLI nástroj witr sloužící k analýze běžících procesů. Název je zkratkou slov why-is-this-running, 'proč tohle běží'. Klade si za cíl v 'jediném, lidsky čitelném, výstupu vysvětlit odkud daný spuštěný proces pochází, jak byl spuštěn a jaký řetězec systémů je zodpovědný za to, že tento proces právě teď běží'. Witr je napsán v jazyce Go.

    NUKE GAZA! 🎆 | Komentářů: 1
    Kdo vám letos nadělí dárek?
     (31%)
     (1%)
     (25%)
     (1%)
     (1%)
     (1%)
     (11%)
     (10%)
     (18%)
    Celkem 212 hlasů
     Komentářů: 22, poslední dnes 15:34
    Rozcestník

    Dotaz: Python, program na variace

    3.10.2010 20:28 Milan Horacek
    Python, program na variace
    Přečteno: 986×
    Dobry den,

    nevi prosim nekdo kde bych nasel, anebo je nekdo schopny napsat v pythonu nasledujici program:

    1) Program bude generovat 8-miste retezce (co radek to retezec)

    2) Retezce budou obsahovat pouze znaky a-z (mala pismena) a 0-9 (cisla)

    3) V kazdem retezci se bude vyskytovat prave jedno cislo, zbytek budou male znaky

    4) Program v libovolnem poradi vygeneruje VSECHNY mozne retezce splnujici body 1-3

    Napadlo me to nejdriv resit tak, ze si vytvorim program na generovani permutaci bez opakovani s tim, ze budu generovat osmice z prvku a-z a 0-9 a kazdy vygenerovany retezec pote otestuji na podminku 3 a v pripade uspechu ho vypisu.

    Myslite, ze takto by to slo udelat?

    Potreboval bych tento problem vyresit v Pythonu, ale me programatorske schopnosti jsou nedostatecne. Nasla by se nejaka dobra duse, ktera by v ramci procviceni se v pythonu dany problem vyresila? Byl bych velice vdecny.

    Jeste poznamka, nejedna se o zadani zadneho skolniho projektu, pouze se s kamaradem nemuzeme shodnout kolik takovych retezcu existuje a timto zpusobem si to chceme programove overit.

    Odpovědi

    3.10.2010 20:52 chrono
    Rozbalit Rozbalit vše Re: Python, program na variace
    Spočítať to je oveľa jednoduchšie, ako urobiť program. :)
    3.10.2010 21:01 Milan Horacek
    Rozbalit Rozbalit vše Re: Python, program na variace
    Na to jsem prave taky prisel, proto pisu sem:) Ten program bych potreboval jak pro overeni vysledku tak pro inspiraci a dalsi upravy.
    3.10.2010 20:53 Milan Horacek
    Rozbalit Rozbalit vše Re: Python, program na variace
    Zapomnel jsem tam jeste napsat jednu podstatnou podminku. Znaky se v ramci retezce nesmi opakovat.
    4.10.2010 07:31 Petr Drlik | skóre: 26 | Bernartice nad Odrou
    Rozbalit Rozbalit vše Re: Python, program na variace
    V pythonu nedelam, ale umysl generovat neco a potom kontrolovat zdali, je scestny. Ja bych to pojal tak, ze bych generoval osmice znaku postupne. Prvni znak napr. cislo 0 a dalsi a, potom b atd. V podmince generovani kontrola na vyskyt pismena, ktere ale uz dopredu znam. Nedovedu si ale predstavit tu radu retezcu(jsem uz hodne, hodne dlouho ze skoly). Jen nevim, jak by to splnovalo podminku o libovolnem poradi. Potom se ale domnivam, ze zadavatel musel vedet, ze najiti vsech retezcu timto zpusobem by byla sysifovska prace. Ke konci generovani by trvalo nekonecne dlouho, nez by narazil na retezec, ktery jeste vygenerovan neni.
    Kdyby se bříza nestyděla, tak hoří i pod vodou !
    4.10.2010 10:52 NdrU | skóre: 10
    Rozbalit Rozbalit vše Re: Python, program na variace
    Není potřeba nic kontrolovat. Můžeme vzít množinu písmen a-z (python má přímo datový typ set) a v sedmi zanořených for cyklech vždy vzít jedno písmeno z množiny, přidat ho do slova, a vytvořit novou množinu, která bude menší o to konkrétní písmeno. Přes tuto novou množinu bude iterovat další for a tak dále (případně by se to dalo samozřejmě udělat rekurzí, takhle je zřejmější, jak to funguje).
    V těle posledního foru by se potom na všechna možná místa vzniklého slova vložila čísla 0-9 (což si vyžádá nejspíš další dva fory).
    4.10.2010 11:44 chrono
    Rozbalit Rozbalit vše Re: Python, program na variace
    Nechce sa mi to skúšať, ale podľa mňa by takéto generovanie tých reťazcov trvalo strašne dlho.
    4.10.2010 11:46 l4m4
    Rozbalit Rozbalit vše Re: Python, program na variace
    To je jedno. Bude to trvat věčnost, protože možností je 9 (vyberu číslo) * 8 (vyberu polohu čísla) * 26^7 (do zbytku umístím libovolně a-z), což je něco přes půl bilionu.
    4.10.2010 14:40 chrono
    Rozbalit Rozbalit vše Re: Python, program na variace
    Tých reťazcov bude o niečo menej. Síce je tých čísel 10 a nie len 9, ale asi si si nevšimol tú doplňujúcu informáciu, že sa znaky nesmú opakovať (ale aj tak bude tých možností veľmi veľa).
    4.10.2010 14:47 l4m4
    Rozbalit Rozbalit vše Re: Python, program na variace
    Teda, ať to čtu, jak to čtu, v
    1) Program bude generovat 8-miste retezce (co radek to retezec)

    2) Retezce budou obsahovat pouze znaky a-z (mala pismena) a 0-9 (cisla)

    3) V kazdem retezci se bude vyskytovat prave jedno cislo, zbytek budou male znaky
    žádnou podmínku o neopakování nevidím.
    4.10.2010 14:48 chrono
    Rozbalit Rozbalit vše Re: Python, program na variace
    4.10.2010 18:20 l4m4
    Rozbalit Rozbalit vše Re: Python, program na variace
    Aha. V tom případě je jich 10 * 8 * 26!/19!, což je něco přes čtvrt bilionu...
    4.10.2010 16:54 detto
    Rozbalit Rozbalit vše Re: Python, program na variace
    A čo itertools ? Konkrétne permutations() a combinations().

    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.