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 22:44 | IT novinky

    Skriptovací programovací jazyk PHP (PHP: Hypertext Preprocessor, původně Personal Home Page) dnes slaví 30 let. Přesně před třiceti lety, 8. června 1995, oznámil Rasmus Lerdorf vydání PHP Tools (Personal Home Page Tools) verze 1.0.

    Ladislav Hagara | Komentářů: 0
    7.6. 23:55 | Humor

    Ve středu v 17:00 byl ve Francii zablokován přístup k PornHubu a dalším webům pro dospělé. K 17:30 došlo k nárůstu počtu registrací Proton VPN o 1 000 % [𝕏]. Dle nového francouzského zákona jsou provozovatelé těchto webů povinni ověřovat věk uživatelů prostřednictvím průkazu totožnosti nebo platební karty.

    Ladislav Hagara | Komentářů: 25
    6.6. 19:44 | Zajímavý článek

    Před 32 lety, 6. června 1993, byl spuštěn první český WWW server (ještě pod TLD .cs), pro potřeby fyziků zabývajících se problematikou vysokých energií.

    Ladislav Hagara | Komentářů: 5
    6.6. 16:11 | Zajímavý software

    Střílečku Borderlands 2 lze v rámci výprodeje série Borderlands na Steamu získat zdarma napořád, když aktivaci provedete do 8. června 19:00.

    Ladislav Hagara | Komentářů: 11
    6.6. 15:11 | Nová verze

    Byla vydána nová verze 2.22 svobodného video editoru Flowblade (GitHub, Wikipedie). Přehled novinek v poznámkách k vydání. Videoukázky funkcí Flowblade na Vimeu. Instalovat lze také z Flathubu.

    Ladislav Hagara | Komentářů: 0
    5.6. 15:00 | Komunita

    Canonical Launchpad vypíná systém správy verzí Bazaar. Vývojáři mohou své repozitáře do 1. září přemigrovat na Git.

    Ladislav Hagara | Komentářů: 9
    5.6. 13:22 | Nová verze

    Byla vydána nová verze 2.53.21 svobodného multiplatformního balíku internetových aplikací SeaMonkey (Wikipedie). Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 3
    5.6. 12:33 | Komunita Ladislav Hagara | Komentářů: 25
    5.6. 11:22 | Komunita

    Na Indiegogo byla spuštěna kampaň na podporu linuxového telefonu Liberux NEXX s osmijádrovým procesorem Rockchip RK3588S, 32 GB LPDDR4x RAM a 6.34″ 2400×1080 OLED displejem. Cena telefonu je 1 310 eur.

    Ladislav Hagara | Komentářů: 5
    5.6. 11:11 | Komunita

    Miro Hrončok vyhrál volby do Fedora Council. Mezi sedmi kandidáty, kteří se ucházeli o dvě křesla, nakonec získal nejvíce hlasů - 1089. Česká komunita má tak po delší době opět zástupce v nejvyšším orgánu Fedory.

    Ladislav Hagara | Komentářů: 0
    Jaký je váš oblíbený skriptovací jazyk?
     (54%)
     (33%)
     (8%)
     (2%)
     (0%)
     (0%)
     (3%)
    Celkem 226 hlasů
     Komentářů: 16, poslední včera 21:05
    Rozcestník

    Dotaz: Python, program na variace

    3.10.2010 20:28 Milan Horacek
    Python, program na variace
    Přečteno: 954×
    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.