logo

rand () C

Funkcija rand() C programavimo kalboje naudojama pseudoatsitiktiniams skaičiams generuoti. Jis naudojamas C, kad generuotų atsitiktinius skaičius nuo 0 iki RAND_MAX.

Funkcija rand() yra standartinės C bibliotekos dalis taigi, norėdami naudoti šią funkciją, turime įtraukti biblioteką.



rand() sintaksė

int rand (void)>

Parametrai

  • Ši funkcija nepriima jokių parametrų.

Grąžinimo vertė

  • Ši funkcija grąžina reikšmę nuo 0 iki RAND_MAX, kur RAND_MAX yra bibliotekoje apibrėžta makrokomanda.

Pastaba: Funkcija rand() pagal numatytuosius nustatymus naudoja reikšmę 1 kaip sėklą atsitiktiniams skaičiams generuoti, todėl generuojama ta pati atsitiktinių skaičių seka. Norėdami to išvengti, galime naudoti srand () funkcija, kad nurodytumėte naują rand() funkcijos pradžią.

Rand() pavyzdžiai C

1 pavyzdys: funkcijos rand() iliustracija

C




kas yra mac os





// 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;> }>

>

js pakeitimas

>

Išvestis

The Random Value is: 1804289383>

Laiko sudėtingumas : O(1)
Erdvės sudėtingumas: O(1)

2 pavyzdys: sugeneruokite 10 atsitiktinių skaičių

C




// 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;> }>

>

>

konvertuojant į eilutę
Išvestis

1804289383 846930886 1681692777 1714636915 1957747793 424238335 719885386 1649760492 596516649 1189641421>

Bet jei norime sugeneruoti kai kuriuos atsitiktinius skaičius diapazone nuo 0 iki N, turime modifikuoti, atspausdindami (N+1) skaičių, kuriuos sugeneruoja funkcija rand(), modulį.

Pavyzdys: generuokite atsitiktinius skaičius, mažesnius nei 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;> }>

>

>

kas yra klasterizacija
Išvestis

897 802 765 992 1 521 220 380 729 969>

Tokiu būdu galime lengvai sugeneruoti atsitiktinį skaičių nuo 0 iki N.

Be to, jei norime atsitiktinio skaičiaus, kuris egzistuos tarp a apatinė riba ir viršutinė_riba , tai galime padaryti naudodami paprastą matematiką atsitiktiniam skaičiui, kurį sugeneruoja funkcija rand().

Pavyzdys: generuokite atsitiktinius skaičius diapazone

C


paprasta java programa



// 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;> }>

>

>

Išvestis

943 897 704 678 132 783 902 760 689 765>