logo

rand() v C

Funkce rand() v programovacím jazyce C se používá ke generování pseudonáhodných čísel. Používá se v C ke generování náhodných čísel v rozsahu 0 až RAND_MAX.

Funkce rand() je součástí standardní knihovny C takže k použití této funkce musíme zahrnout knihovnu.



Syntaxe rand()

int rand (void)>

Parametry

  • Tato funkce nepřebírá žádné parametry.

Návratová hodnota

  • Tato funkce vrací hodnotu mezi 0 a RAND_MAX, kde RAND_MAX je makro, které je definováno v knihovně.

Poznámka: Funkce rand() ve výchozím nastavení používá hodnotu 1 jako zdroj pro generování náhodných čísel, což vede ke generování stejné sekvence náhodných čísel. Abychom tomu zabránili, můžeme použít srand() funkce k určení nového zdroje pro funkci rand().

Příklady rand() v C

Příklad 1: Ilustrace funkce rand().

C








// C program to illustrate the use of rand() function> #include> #include> > int> main()> {> >// Generate a random number using the rand() function> >int> value =>rand>();> > >// Print the generated random value> >printf>(>'The Random Value is: %d'>, value);> > >return> 0;> }>

python snížit
>

>

Výstup

The Random Value is: 1804289383>

Časová složitost : O(1)
Prostorová složitost: O(1)

Příklad 2: Vygenerujte 10 náhodných čísel

C

latexový seznam




// C program to generate 10 random number using rand()> // function> #include> #include> > int> main()> {> >int> i = 0;> >// Loop through 10 times> >for> (; i <10; i++) {> >// Generate a random number using the rand()> >// function> >int> value =>rand>();> > >// Print the generated random value> >printf>(>'%d '>, value);> >}> > >return> 0;> }>

>

>

java matematická třída
Výstup

1804289383 846930886 1681692777 1714636915 1957747793 424238335 719885386 1649760492 596516649 1189641421>

Ale pokud chceme vygenerovat nějaká náhodná čísla v rozsahu 0 až N, musíme upravit vytištěním modulo (N+1) čísel, která jsou generována funkcí rand().

Příklad: Generujte náhodná čísla menší než N

C




// C program to generate random numbers smaller than a> // particular number n> #include> #include> int> main()> {> >// Set a constant 'N' to 1000> >int> N = 1000;> > >// Loop through 10 times> >for> (>int> i = 0; i <10; i++) {> >// Generate a random number between 0 and N using> >// the rand() function> >int> value =>rand>() % (N + 1);> >// Print the generated random value> >printf>(>'%d '>, value);> >}> > >return> 0;> }>

>

>

centrování obrázků v css
Výstup

897 802 765 992 1 521 220 380 729 969>

Tímto způsobem můžeme snadno vygenerovat náhodné číslo od 0 do N.

Také, pokud chceme náhodné číslo, které bude existovat mezi a dolní_mez a horní hranice , můžeme to udělat pomocí jednoduché matematiky na náhodné číslo, které je generováno funkcí rand().

Příklad: Generování náhodných čísel v rozsahu

C


zkontrolujte verzi Java na linuxu



// C program to illustrate how to generate random number> // withing a range> #include> #include> int> main()> {> >// Set the upper bound for random numbers> >int> upper_bound = 1000;> >// Set the lower bound for random numbers> >int> lower_bound = 100;> > >// Loop through 10 times> >for> (>int> i = 0; i <10; i++) {> >// Generate a random number within the specified> >// bounds> >int> value =>rand>() % (upper_bound - lower_bound + 1)> >+ lower_bound;> >// Print the generated random value> >printf>(>'%d '>, value);> >}> > >return> 0;> }>

>

>

Výstup

943 897 704 678 132 783 902 760 689 765>