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:11 | Zajímavý software

    Cloudflare představil open source redakční systém EmDash. Jedná se o moderní náhradu WordPressu, která řeší bezpečnost pluginů. Administrátorské rozhraní lze vyzkoušet na EmDash Playground.

    Ladislav Hagara | Komentářů: 0
    dnes 14:00 | Komunita

    Bratislava OpenCamp 2026 zverejnil program a spustil registráciu. Štvrtý ročník komunitnej konferencie o otvorených technológiách prinesie 19 prednášok na rôzne technologické témy. Konferencia sa uskutoční v sobotu 25. apríla 2026 v priestoroch FIIT STU v Bratislave.

    Ladislav Hagara | Komentářů: 0
    dnes 13:44 | Humor

    Na iVysílání lze zhlédnout všechny díly kultovního sci-fi seriálu Červený trpaslík.

    Ladislav Hagara | Komentářů: 3
    dnes 04:44 | IT novinky

    Společnost Valve aktualizovala přehled o hardwarovém a softwarovém vybavení uživatelů služby Steam. Podíl uživatelů Linuxu dosáhl v březnu 5,33 % (Windows -4,28 %, OSX +1,19 %, Linux +3,10 %). Nejčastěji používané linuxové distribuce jsou Arch Linux, Linux Mint a Ubuntu. Při výběru jenom Linuxu vede SteamOS Holo s 24,48 %. Procesor AMD používá 67,48 % hráčů na Linuxu.

    Ladislav Hagara | Komentářů: 3
    včera 23:22 | IT novinky

    Společnost Apple slaví padesáté narozeniny. Založena byla 1. dubna 1976.

    Ladislav Hagara | Komentářů: 1
    včera 22:33 | Nová verze

    FreeTube, desktopový klient pro YouTube využívající lokální API, byl vydán ve verzi 0.24.0. Toto velké opravné vydání implementuje SABR (Server-Based Adaptive Bit Rate), což řeší část nedávných problémů s načítáním videí z YouTube, a aktualizuje základní komponenty jako Electron nebo přehrávač Shaka Player.

    |🇵🇸 | Komentářů: 2
    včera 16:33 | Humor

    Je tu opět apríl. O víkendu zmizel kamion s 12 tunami tyčinek KitKat. Firmy to využívají k aprílovým žertům. Groupon má super akci. Koupíte 1 tyčinku a dostanete 100 zdarma. Ryanair si přelepil letadla. Šéf Outlooku se ptá, proč mají v baráku 14 beden tyčinek KitKat (𝕏). Prusa Research představuje Prusa Pro ACU a vysvětluje proč přílišné sušení škodí vaším filamentům. Telefon Sony Xperia má miliónnásobný zoom (𝕏). PC.net představil Super Ultrabox 2600 se zajímavými parametry. Další aprílové novinky například na April Fools' Day On The Web.

    Ladislav Hagara | Komentářů: 2
    včera 13:22 | IT novinky

    Společnost OpenAI, která stojí za chatovacím robotem s umělou inteligencí (AI) ChatGPT, získala od investorů 122 miliard USD (2,6 bilionu Kč). Hodnota společnosti tak dosáhla 852 miliard dolarů (více než 18 bilionů Kč). Nejnovější kolo investování se stalo největší, jaké zatím firma uskutečnila, a peníze mají posílit ambiciózní plány rozšíření výpočetní kapacity, datových center a nábor talentů.

    Ladislav Hagara | Komentářů: 13
    včera 13:11 | IT novinky

    Nástroj k identifikaci občanů v on-line komunikaci s úřady byl dnes dopoledne zhruba dvě hodiny částečně nedostupný. Problém se objevil kolem 09:00 a podařilo se ho vyřešit kolem 11:00. Částečně nedostupná byla služba Národní identitní autority (NIA), problémy podle DIA (Digitální a informační agentura) ovlivňovaly přihlašování například i přes bankovní identitu. „Dostupnost NIA byla plně obnovena, přihlášení k digitálním službám

    … více »
    Ladislav Hagara | Komentářů: 4
    včera 13:00 | IT novinky

    Eben Upton oznámil další zdražení počítačů Raspberry Pi kvůli růstu cen pamětí a představil Raspberry Pi 4 s 3 GB RAM za 83,75 dolarů.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (15%)
     (7%)
     (1%)
     (12%)
     (30%)
     (3%)
     (5%)
     (1%)
     (14%)
     (24%)
    Celkem 1204 hlasů
     Komentářů: 29, poslední 31.3. 11:17
    Rozcestník

    Dotaz: pole generátoru čísel

    21.1.2011 20:38 Grim
    pole generátoru čísel
    Přečteno: 470×
    Zdravím mám dotaz.

    1/ Mám generátor čísel a potřebuju aby se každé z nich zobrazilo jen xkrát, a pokud to překročí x aby to generovalo znovu.

    Pokud jste mě někdo nepochopil tak mám třeba generátor čísel od 1 do 10 a potřebuju aby se klasicky generovali čísla. Ale zároven chci aby se každé generovalo jen 4x. Takže pokud by se z generátoru znovu vyhodilo číslo 7 už po páté tak aby se generovalo znovu dokud o nenarazí na číslo které ještě nebylo 4x.

    Řešení dotazu:


    Odpovědi

    poky74 avatar 21.1.2011 20:42 poky74 | skóre: 36 | blog: Zápisník | Vrchlabí
    Rozbalit Rozbalit vše Re: pole generátoru čísel

    To je zase dotaz.

    Prozradíš nám alespoň jazyk v kterém to chceš udělat?

    Chcete Linuxové samolepky nebo Tuxe na klíče? ->
    21.1.2011 20:47 Grim
    Rozbalit Rozbalit vše Re: pole generátoru čísel
    Omlouvám se... v Javě, celý program v pohodě a toto je jen detail
    21.1.2011 21:21 l4m4
    Rozbalit Rozbalit vše Re: pole generátoru čísel
    V Javě neumím, ale pokud čísel není moc, nejjednodušší řešení vypadá takto (v Pythonu, což by mělo být stejně čitelné jako slovní popis):
    import random
    
    def generate():
        numbers = []
        while True:
            if not numbers:
                numbers = list(range(10))
                random.shuffle(numbers)
            yield numbers.pop()
    
    # And now simply generate the numbers
    for x in generate():
        print x
    
    Alternativně jde při každém kroku vygenerovat posici ve seznamu zbývajících čísel, odpovídající číslo vrátit, na tuto posici přesunout poslední číslo a seznam zbývajících čísel zkrátit.

    Má-li být rozsah generovaných čísel tak velký, že toto jednoduché řešení nelze použít, jsou jiné možnosti, ale to chce znát něco o zamýšlené aplikaci.
    21.1.2011 21:41 Grim
    Rozbalit Rozbalit vše Re: pole generátoru čísel
    Python vůbec neznám a moc jsem z toh zápisu ani nepobral, ale pokud bych to dokázal převézt do kdu v javě tak si myslím že fungovat by to mohlo
    21.1.2011 21:45 l4m4
    Rozbalit Rozbalit vše Re: pole generátoru čísel
    V Javě to bude asi hrozně ukecané... Prostě si vždy držíš seznam čísel, která jsi tentorkát ještě nevrátil. Vrátíš jedno z nich a ze seznamu zahodíš. Když je seznam prázdný, naplníš ho znovu. Randomizaci lze provést buď při plnění seznamu, nebo při vybírání, jak jsem popsal.
    21.1.2011 22:25 Grim
    Rozbalit Rozbalit vše Re: pole generátoru čísel
    vůbec tě takhle nedokážu pochopit nejspíš by to chtělo stručný návod krok od kroku a nebo od někoho jiného ale díky za snahu
    21.1.2011 22:46 Dejv | skóre: 37 | blog: Jak ten blog nazvat ... ? | Ostrava
    Rozbalit Rozbalit vše Re: pole generátoru čísel

    Ahoj.

    Ten python jsem taky moc nepobral, takze spis odhaduju z toho slovniho popisu, ze to probiha zhruba takto:

    1. Napln Pole o velikosti 4*Pocet_Cisel (napr. hodnotami 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5 ... atd.)
    2. Vygeneruj si Nahodne_Cislo v rozsahu Dolni_Index_Pole - Horni_Index_Pole. Toto Nahodne_Cislo tvori index do pole.
    3. Vyjmi z pole hodnotu na indexu Nahodne_Cislo a tuto hodnotu vrat jako vysledek.
    4. Opakuj kroky 2 a 3, dokud je v Poli alespon jedna hodnota

    Jestli jsem se netrefil, tak snad me autor opravi :-)

    Dejv

    Pevně věřím, že zkušenější uživatelé mě s mými nápady usměrní a pošlou tam, kam tyto nápady patří...
    21.1.2011 23:02 l4m4
    Rozbalit Rozbalit vše Re: pole generátoru čísel
    Jak jsem to původně napsal, to neřeší to čtyřnásobení (asi) podle zadání. Takže co píšeš, je nejjednodušší metoda. Předpokládá, že 4 (multiplicita) i 10 (rozsah) jsou přijatelně malá čísla.

    Bod 3 se provede přesunutím posledního prvku na posici vyňaté hodnoty, aby se pokaždé nepřesouvala půlka pole.

    Algoritmy použitelné, když jsou multiplicita či rozsah velké, nebudu řešit, protože to stejně zjevně nedovedu napsat, aby to tazatel pochopil...
    21.1.2011 23:18 Grim
    Rozbalit Rozbalit vše Re: pole generátoru čísel
    no tohle už chápu akorát nevím jak v Javě definovat pole a tu část s těma indexama jestli jsem pochopil dobře tak ty čísla nejdou všechny v polovině je mezera ale to už byse dořešilo
    22.1.2011 10:27 Grim
    Rozbalit Rozbalit vše Re: pole generátoru čísel
    nebo takhle pole mám ale jak z něho odečítat hodnoty pomocí asi tří generátorů, tím pádem ty čísla mi vycházej po třema proměnnýma
    22.1.2011 11:00 l4m4
    Rozbalit Rozbalit vše Re: pole generátoru čísel
    Každý generátor, který má generovat (nezávislou) sekvenci s předepsanými vlastnostmi, musí mít vlastní pole.

    I když spíš... WTF? Kde se tu najednou vzaly tři generátory?
    22.1.2011 12:29 Grim
    Rozbalit Rozbalit vše Re: pole generátoru čísel
    na počtu generátorů ted nezáleží, ale jak mám udělat pole čísel z kterých by se odebírali čísla a pokud by tam nebylo znovu vygenerovat další číslo, jen toto mě právě zajímá
    22.1.2011 12:55 moira | skóre: 30 | blog: nesmysly
    Rozbalit Rozbalit vše Re: pole generátoru čísel
    Řekl bych, že jsi nepochopil princip. Z generátoru neleze konkrétní čislo, ale index do pole. Vlastní hodnotu pak bereš z pole a zajistíš, aby už nebyla nikdy příště vybrána (vymazáním prvku a přerovnáním pole, změnou intervalu, ve kterém se může pohybovat index, variant je více...). Takže žádné "a případně vygenerovat další číslo". Jinak nemusí jít nutně o pole a o tom, jak se dělá a pracuje v Javě s polem najdeš netu x tisíc článků a tutoriálů.
    Překladač ti nikdy neřekne: "budeme kamarádi"
    wamba avatar 22.1.2011 12:17 wamba | skóre: 38 | blog: wamba
    Rozbalit Rozbalit vše Re: pole generátoru čísel
    v perlu by to mohlo vypadat třeba takhle
    use List::Util qw{shuffle};
    
    my @numbers = (1..10)x4; #do @numbers dej 4x čísla 1..10
    say join " ",shuffle(@numbers); #zamíchej tyto čísla a vytiskni je
    
    
    tedy pokud chce permutace s opakováním, pro variace stačí vzít prvních n prvků.

    popř. by šla použít přímo nějaká knihovna na permutace (variace) s opakováním

    This would have been so hard to fix when you don't know that there is in fact an easy fix.
    22.1.2011 12:23 l4m4
    Rozbalit Rozbalit vše Re: pole generátoru čísel
    A v shellu takhle:
    echo -n {1..10}{,,,}$'\n'|shuf
    ale to už se dostáváme off-topic ;)

    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.