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í
×
eParkomat, startup z ČR, postoupil mezi finalisty evropského akcelerátoru ChallengeUp!
Robot na pivo mu otevřel dveře k opravdovému byznysu
Internet věcí: Propojený svět? Už se to blíží...
dnes 15:15 | Bezpečnostní upozornění

Cloudová služba Dropbox minulý týden na svém blogu informovala, že uživatelům, kteří si od bezpečnostního incidentu v roce 2012 své heslo nezměnili, bylo toto heslo resetováno. Dropbox v roce 2012 tvrdil, že několik málo přihlašovacích jmen a hesel ukradených z jiné webové služby bylo použito pro přihlášení se k Dropboxu. Jednalo se bohužel také o účet jednoho ze zaměstnanců Dropboxu a útočník se prý dostal pouze k souboru s emailovými

… více »
Ladislav Hagara | Komentářů: 0
dnes 02:00 | Nová verze

Byla vydána alfa verze Fedory 25. Ke stažení je Workstation, Server, Cloud, Spiny i Laby. Stáhnout lze také verze pro počítače založené na ARM. Dle plánu by beta verze měla vyjít 11. října. Vydání Fedory 25 je plánováno na 15. listopadu 2016.

Ladislav Hagara | Komentářů: 0
včera 14:30 | Nová verze

Byla vydána verze 2.1 video editoru OpenShot. Představení nových vlastností na YouTube. Zdrojové kódy jsou k dispozici na GitHubu. Ke stažení je balíček ve formátu AppImage.

Ladislav Hagara | Komentářů: 0
29.8. 14:30 | Zajímavý projekt

April King z bezpečnostního týmu Mozilly představila novou službu Mozilly s názvem Observatory (GitHub). Uživatelé služby si mohou ověřit, jako jsou na tom konkrétní weby s bezpečností. Podrobnosti v často kladených dotazech (FAQ).

Ladislav Hagara | Komentářů: 4
29.8. 11:22 | Bezpečnostní upozornění

Společnost Opera upozorňuje, že její služba pro synchronizaci hesel ve webovém prohlížeči Opera byla kompromitována. Uživatelé služby by si měli změnit jak heslo k této službě, tak službou synchronizovaná hesla.

Ladislav Hagara | Komentářů: 0
29.8. 06:02 | Nasazení Linuxu

HackerBoards.com představuje nejnovější digitální přehrávač BDP-π (BDP-Pi) od společnosti Bryston. Přehrávač je postaven na jednodeskovém počítači Raspberry Pi, zvukové kartě HiFiBerry Digi+ a Raspbianu. Cena přehrávače je 1 295 dolarů.

Ladislav Hagara | Komentářů: 17
29.8. 06:01 | Zajímavý software

Byla vydána první stabilní verze 1.0 aplikace KDE Connect určené pro propojení chytrého telefonu s počítačem s nainstalovaným Linuxem. KDE Connect je potřeba nainstalovat jak na počítač, tak na chytrý telefon (F-Droid, Google Play). Komunikace je zabezpečena pomocí TLS a TOFU (Trust On First Use). Podporované jsou chytré telefony s Androidem 2.3 a novějším [reddit].

Ladislav Hagara | Komentářů: 6
29.8. 06:00 | Humor

Sylvia Ritter se několik posledních měsíců věnuje malování maskotů jednotlivých verzí linuxové distribuce Ubuntu. Pro velký zájem se rozhodla vytvořit tapety na plochu v rozlišení 1920 x 1080 pixelů a dát je k dispozici pro osobní a nekomerční použití.

Ladislav Hagara | Komentářů: 0
26.8. 17:15 | Pozvánky

Byl zveřejněn program LibreOffice Conference 2016 konané od 7. do 9. září na FIT VUT v Brně. V pátek 9. září dopoledne proběhnou přednášky také v češtině.

Ladislav Hagara | Komentářů: 2
26.8. 16:30 | Zajímavý článek

Bylo vydáno (pdf) devětačtyřicáté číslo stostránkového anglicky psaného časopisu MagPi věnovanému Raspberry Pi a projektům postaveným na tomto jednodeskovém počítači. K dispozici je také jako papírový časopis za 5,99 £.

Ladislav Hagara | Komentářů: 0
Jaké nejnižší rozlišení videa považujete za uspokojivé?
 (1%)
 (1%)
 (14%)
 (63%)
 (15%)
 (2%)
 (3%)
Celkem 234 hlasů
 Komentářů: 32, poslední dnes 17:09
Rozcestník
Reklama

Dotaz: c++ - generator nahodnych cisel.

25.2.2006 20:53 riggs
c++ - generator nahodnych cisel.
Přečteno: 20605×
Zdravim. Potreboval by som poradit. Ako sa da v C++ urobit funkcia, ktora by mi po kazdom zavolani vygenerovala nejake nahodne cislo, povedzme od 1 do 1000? Potrebujem na to nejaku kniznicu alebo sa to da napisat primao v C ? Pouzivam len kniznicu iostream pod linuxom, c++ sa zatial venujem len cca 6 mesiacov. dik

Odpovědi

25.2.2006 21:11 #Tom
Rozbalit Rozbalit vše Re: c++ - generator nahodnych cisel.
Knihovna jazyka C nabízí funkce rand a random, nejprve je však třeba nastavit počáteční hodnotu pomocí srand nebo srandom. Třeba takto:
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main() {
  srand(time(0));
  cout << "Náhodné číslo od nuly do deseti: " << rand() % 11 << endl;
}
Luboš Doležel (Doli) avatar 25.2.2006 21:15 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
Rozbalit Rozbalit vše Re: c++ - generator nahodnych cisel.
#include <cstdlib>

int genrand(int min, int max)
{
    return min+(rand()%(++max-min));
}
Jinak viz rand(3).
25.2.2006 21:22 Lukáš Rýdlo | skóre: 18 | blog: Silný kafe | Brno
Rozbalit Rozbalit vše Re: c++ - generator nahodnych cisel.
Nahodna cisla se generuji pomoci funkce rand(), ktera dava int, nebo random(), ktera dava long int. Pred pouzitim je vhodne inicializovat generator pseudonahodnych cisel pomoci srand(nejaky_unsigned_int), resp. srandom(nejaky_unsigned_int). Ten int v argumentu by mel byt pokud mozno nekonstatni, jinak bys asi dostaval porad stejna nahodna cisla ;-) (tim si ted nejsu zcela jist, protoze jsem to nezkousel a neznam pouzity algoritmus generovani, ale vetsinou to tak byva). Takze tam muzes hazet treba time().

Zbytek viz man 3 rand() nebo man 3 random().

A ten rozsah nejlepe osetris pomoci modula (zbytek po deleni). Pokud potrebujes rozsah mensi, nez je maximalni hodnota generovana prislusnou funkci, pak ji prozenes modulem. Napr. pro rozsah 0-100 pouzijes rand()%101 (101 je tam proto, ze delis modulo 101, abys dostal 0-100, tedy celkem 101 zbytkovou tridu). Tvuj problem 1-1000 je pak (rand()%1000)+1...

Uff, to byl vycerpavajici vyklad :-D
θηριον ειμι
25.2.2006 21:24 Lukáš Rýdlo | skóre: 18 | blog: Silný kafe | Brno
Rozbalit Rozbalit vše Re: c++ - generator nahodnych cisel.
To jsem to psal fakt 11 minut? ;-)
θηριον ειμι
Luboš Doležel (Doli) avatar 25.2.2006 21:25 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
Rozbalit Rozbalit vše Re: c++ - generator nahodnych cisel.
Já už to jen doplním o skupinu funkcí drand48, lrand48, mrand48, ... které generují např. desetinná čísla.
stativ avatar 26.2.2006 11:28 stativ | skóre: 54 | blog: SlaNé roury
Rozbalit Rozbalit vše Re: c++ - generator nahodnych cisel.
Na inicializaci generatoru napr. srand( (unsigned)time( NULL ) );
Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
elviin avatar 25.2.2006 23:03 elviin | skóre: 29 | blog: elviin | Plzeň-Praha
Rozbalit Rozbalit vše Re: c++ - generator nahodnych cisel.
Urcite bych pouzil boost::random.
//typ nahody
boost::ecuyer1988 genType;
 
//generator nahody s urcenim mezi
boost::variate_generator<boost::ecuyer1988, boost::uniform_int<> >
    mujGenerator(genType, boost::uniform_int<>(dolniMez,horniMez));

//generovani hodnot
for (int i = 0; i < 1000; ++i)
    cout << mujGenerator() << endl;

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   Powered by Hosting 90 Server hosting
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.