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 23:30 | Nová verze
Bylo vydáno LLVM 3.6. Nejnovější verze této kolekce nástrojů a knihoven určených k optimalizovanému překladu zdrojových kódů přináší výsledky práce za posledních 6 měsíců. Opraveno je mnoho chyb. Vylepšena je optimalizace. Clang získal experimentální podporu dalších očekávaných vlastností C++1z (C++17). Podrobnosti v poznámkách k vydání LLVM a Clang.
Ladislav Hagara | Komentářů: 0
včera 12:00 | Nová verze
Po roce a půl od vydání verze 0.63 (zprávička) byla vydána verze 0.64 populárního telnet a ssh klienta PuTTY. Nejnovější verze řeší bezpečnostní problém a přináší například možnost sdílení SSH spojení. Podrobnosti v seznamu změn.
Ladislav Hagara | Komentářů: 3
včera 12:00 | Komunita
Pořadatelé Libre Graphics Meeting 2015 jako každý rok tradičně žádají o finanční podporu. Vybrané finanční prostředky půjdou na snížení cestovních nákladů jednotlivých účastníků. Podpořit lze na pledgie.com.
xkomczax | Komentářů: 0
včera 01:11 | Nová verze
Po 2 letech a 10 měsících od vydání verze 4.10 (zprávička) vyšla verze 4.12 odlehčeného desktopového prostředí Xfce. Přehled nových vlastností i s náhledy v Xfce 4.12 tour. Podrobnosti v Changelogu. Finančně lze Xfce podpořit na Bountysource.
Ladislav Hagara | Komentářů: 13
28.2. 17:20 | Nová verze
Vyšla verze 2.2.0 multiplatformního multimediálního přehrávače VLC s kódových jménem WeatherMax. VLC vyšlo poprvé současně, i když v jiných verzích, také pro iOS, Android (včetně Android TV), WinRT (Windows RT a x86) a Windows Phone. Z novinek lze zmínit automatickou rotaci videí natočených mobilním telefonem vertikálně (Vertical Video Syndrome, YouTube), možnost pokračování přehrávání od místa, kde bylo předchozí přehrávání ukončeno, podporu nových HD kodeků, VP9, opus a H.265/HEVC nebo stahování rozšíření a titulků přímo z VLC.
Ladislav Hagara | Komentářů: 11
27.2. 10:05 | Pozvánky
Ahojte kóderi, všimli sme si, že mnohí z vás chcú ísť aj na Rubyslavu, ktorá sa koná v rovnakom termíne ako sme pôvodne zvolili aj my. Aby ste nič nezmeškali, rozhodli sme sa posunúť termín prednášky. Radi vás všetkých uvidíme na prednáške AMD: Alebo ako som sa prestal báť a naučil milovať JavaScript 11. marca o 19:00 v Spote. … více »
Vacuumlabs | Komentářů: 19
27.2. 10:00 | Zajímavý článek
Dan Gillmor, americký publicista, autor knih We the Media a Mediactive, uvádí v článku na Medium důvody, proč dává sbohem Applu, Googlu a Microsoftu a proč používá GNU/Linux a CyanogenMod. Přiznává ale také, že Google Maps i Windows občas použije.
Ladislav Hagara | Komentářů: 11
27.2. 09:55 | Pozvánky
Vážení přátelé, zveme vás na nekonvenční hackathon, který jsme připravili ve spolupráci s ČSOB. Půjde o první hackathon v Praze na kterém si budete moci zblízka osahat téma počítačové bezpečnosti, respektive toho, jak ji monitorovat. A to netradiční formou, kterou, jak věříme, udeříme na strunu toho, co vás zajímá. ČSOB připravilo jedinečné REST JSON API, které poskytuje informace o aktuálně probíhajících kyberútocích po celé ČR. V čase … více »
Honza Kopecký | Komentářů: 0
26.2. 17:00 | Nová verze
Byla vydána verze 2.9 bitmapového grafického editoru Krita. Podrobnosti a videoukázky v poznámkách k vydání. Kódové jméno nejnovější verze je "the Kickstarter Release". Kampaň na Kickstarteru přinesla nadaci Krita 19955 €.
Ladislav Hagara | Komentářů: 0
26.2. 11:11 | Zajímavý článek
Na crowdsourcingovém portálu Crowd Supply probíhala do konce ledna kampaň na podporu výkonného notebooku Librem 15 respektujícího svobodu a soukromí uživatelů. Kampaň byla úspěšná na 170 %. Notebook lze objednat i po skončení kampaně. Aktuálně je vybráno přes 426 tisíc dolarů. Dle společnost Purism stojící za notebookem byly hardwarové komponenty vybrány tak, aby bylo možné používat pouze svobodný software. Článek na blogu vývojářů … více »
Ladislav Hagara | Komentářů: 31
Disketu jsem naposledy použil během
 (38%)
 (3%)
 (12%)
 (43%)
 (3%)
Celkem 2308 hlasů
 Komentářů: 64, poslední 22.2. 06:31
Rozcestník
Reklama
Autoškola testy online Levný benzín

Dotaz: c++ - generator nahodnych cisel.

25.2.2006 20:53 riggs
c++ - generator nahodnych cisel.
Přečteno: 18945×
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.