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 12:11 | IT novinky

    Open source router Turris Omnia NG Wired je v prodeji. Jedná se o Turris Omnia NG bez Wi-Fi. Je připraven pro zamontování do racku.

    Ladislav Hagara | Komentářů: 0
    dnes 11:44 | Pozvánky

    Sníh roztál a roztávají i bastlíři. Žene se na nás celá řada konferencí a seminářů technického rázu. Zajímá vás, jaké? Pak se připojte k 60. Virtuální Bastlírně, tedy k veřejné diskuzi bastlířů, techniků, učitelů i vědců. Jako vždy přijde na přetřes spousta novinek ze světa hardwaru, softwaru i bizáru. Na začátek lze očekávat hardwarová témata, tedy například nový KiCAD 10, nové akcelerátory LLM s nízkou spotřebou, nejvíce fosforeskující

    … více »
    bkralik | Komentářů: 0
    dnes 11:22 | Zajímavý článek

    IuRe (Iuridicum Remedium) v rámci programu Digitální svobody zveřejnila analýzu dopadů a efektivity systémů ověřování věku v digitálním prostoru, která srovnává implementace ověřování věku v Austrálii, Velké Británii a Evropské unii.

    |🇵🇸 | Komentářů: 0
    dnes 04:22 | Nová verze

    Multiplatformní emulátor terminálu Ghostty byl vydán ve verzi 1.3 (𝕏, Mastodon). Přehled novinek a vylepšení v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    dnes 03:55 | Nová verze

    Byla vydána nová verze 14.4 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 5
    včera 23:22 | Nová verze

    Databáze DuckDB (Wikipedie) byla vydána ve verzi 1.5.0. S kódovým názvem Variegata (husice rajská). Přináší řadu vylepšení, včetně nového ergonomičtějšího CLI klienta nebo podporu pro typ VARIANT a vestavěný typ GEOMETRY.

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | Zajímavý software

    V pátek 6. a sobotu 7. března proběhl v pražském sídle Nejvyššího kontrolního úřadu (NKÚ) Hackathon veřejné správy 7.1. Publikovány byly vytvořené aplikace. V kategorii projektů rozvíjených z krajského kola zvítězil tým „Mackokládi“. Čtyři středoškoláci ze Dvora Králové uspěli s aplikací KompaZ. Jde o digitálního průvodce, který pomůže s rychlou a srozumitelnou orientací v životních i krizových situacích „krok za krokem“. Aplikace

    … více »
    Ladislav Hagara | Komentářů: 12
    včera 13:33 | Nová verze

    QGIS, svobodný desktopový GIS, byl vydán v nové hlavní verzi 4.0. Změny zahrnují několik nových analytických a editačních funkcí, rozšíření podpory 3D, více možností úprav uživatelského rozhraní či mnoho dalších zlepšení použitelnosti. Řada 3.44 má aktualizace plánovány do září.

    |🇵🇸 | Komentářů: 0
    včera 05:11 | Komunita

    Dan Blanchard vydal knihovnu pro Python chardet v nové verzi 7.0.0. S novou verzí byla knihovna přelicencována z LGPL na MIT. Souhlasili s tím všichni přispěvatelé? Dan Blanchard souhlasy vůbec neřešil. Zaúkoloval umělou inteligenci (Claude), aby knihovnu zcela přepsala a výslovně jí nařídil, aby nepoužila žádný LGPL kód. Dan Blanchard tvrdí, že se jedná o clean room design. Protistrana argumentuje, že umělá inteligence byla trénována

    … více »
    Ladislav Hagara | Komentářů: 23
    8.3. 18:44 | Komunita

    Andy Nguyen si na svou herní konzoli PlayStation 5 (PS5) pomocí exploitu Byepervisor nainstaloval Linux (Ubuntu). V Linuxu si spustil Steam a PS5 tak proměnil v Steam Machine. Na PS5 může hrát hry, které jsou vydané pouze pro PC a jsou na Steamu [Tom's Hardware].

    Ladislav Hagara | Komentářů: 13
    Které desktopové prostředí na Linuxu používáte?
     (16%)
     (6%)
     (0%)
     (11%)
     (29%)
     (2%)
     (5%)
     (2%)
     (13%)
     (25%)
    Celkem 1047 hlasů
     Komentářů: 25, poslední 3.2. 19:50
    Rozcestník

    Dotaz: Rand v C++

    7.4.2012 12:46 MarF
    Rand v C++
    Přečteno: 570×
    Dobrý den,

    chtěl bych vytvořit fci, která bude mít tři vstupní proměnné: spodní a horní limit a počet des. míst.

    int generuj(int a, int b) //generuje int cislo v rozsahu od a do b, d=pocet des. míst { float c; c=(rand()%99(b-a))+a;

    return c; }

    Jak ovládat počet míst za des. tečkou?

    Odpovědi

    7.4.2012 13:36 lacik
    Rozbalit Rozbalit vše Re: Rand v C++
    C++ neznám, ale asi výrazem:

    x=již vygenerované náhodné číslo

    d=počet desetinných míst

    intVal - fce odřízne desetinnou část: intVal(12.34)=12

    x=(intVal(x*d))/d
    7.4.2012 14:15 MarF
    Rozbalit Rozbalit vše Re: Rand v C++
    A ta fce intVal je ve které knihovně?
    7.4.2012 15:07 MadCatX
    Rozbalit Rozbalit vše Re: Rand v C++
    Nevím, jestli jste to myslel právě takto, nicméně tohle by mělo fungovat
    #include <cmath>
    #include <cstdio>
    #include <cstdlib>
    #include <iostream>
    
    double generuj(int min, int max, int prec)
    {
       long ex = pow(10, prec);
       double r = rand()%((max - min) * ex) + (min * ex);
       return r / ex;
    }
    
    int main(int argc, char** argv)
    {
       srand(time(NULL));
       for (int i = 0; i < 10; i++)
          printf("%.10f\n", generuj(1, 10, 5));
    
       return 0;
    }
    
    Dává výstup
    7.1701900000
    3.3656600000
    9.9872200000
    7.2741900000
    9.9646100000
    8.9658100000
    5.6601800000
    4.9083500000
    6.8956500000
    2.4416500000
    
    Funkce bude fungovat rozumně samozřejmě jen tehdy, pokud se nebudete blížit k limitům přesnosti zvoleného datového typu.
    7.4.2012 16:42 MarF
    Rozbalit Rozbalit vše Re: Rand v C++
    Díky. Mám ale problém s fcí pow

    Error 1 error C2668: 'pow' : ambiguous call to overloaded function c:\documents and settings\ibm r50e\dokumenty\visual studio 2008\projects\pokusy\pokusy\h1.cpp 42 pokusy

    knihovnu math jsem nahrál.

    7.4.2012 17:23 oiufoj
    Rozbalit Rozbalit vše Re: Rand v C++
    7.4.2012 17:25 oiufoj
    Rozbalit Rozbalit vše Re: Rand v C++
    Pokud teda nemas C++11 prekladac, nemuzes v pow pouzit cela cisla.
    7.4.2012 17:52 MarF
    Rozbalit Rozbalit vše Re: Rand v C++
    Můžeš to laikovi blíže vysvětlit? C++11 je verze? Když nemohu použít int, znamená to, že float ano?
    7.4.2012 18:10 MarF
    Rozbalit Rozbalit vše Re: Rand v C++
    Jo, už to mám, double...

    Díky
    8.4.2012 02:26 l4m4
    Rozbalit Rozbalit vše Re: Rand v C++
    Funkce bude fungovat rozumně samozřejmě jen tehdy, pokud se nebudete blížit k limitům přesnosti zvoleného datového typu.
    Budou-li se výsledky např. nějak kumulovat, tak může fungovat zcela nepoužitelně, protože různá čísla budou mít různé pravděpodobnosti.

    Je zapotřebí

    (1) Spočíst, kolik různých čísel to může generovat - N.

    (2) Při generování čísla zahodit ta, která jsou větší než (RAND_MAX/N)*N.

    (3) Pokud číslo není zahozeno, vzít ho modulo N a pak ho přepočíst na možný výsledek (to už je mapování 1:1).

    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.