Generiranje naključnega števila v območju v C
Kako ustvariti naključno število v danem območju v C. Primeri:
Input : Lower = 50, Upper = 100, Count of random Number = 5 Output : 91 34 21 88 29 Explanation: lower is the lower limit of the range and upper is the upper limit of the range. Output contains 5 random numbers in given range.
C nima vgrajene funkcije za generiranje števila v območju, vendar jo ima funkcija rand ki generira naključno število od 0 do RAND_MAX. S pomočjo rand () je mogoče ustvariti število v območju kot num = (rand() % (zgornji – spodnji + 1)) + spodnji
C
// C program for generating a> // random number in a given range.> #include> #include> #include> // Generates and prints 'count' random> // numbers in range [lower, upper].> void> printRandoms(> int> lower,> int> upper,> > int> count)> {> > int> i;> > for> (i = 0; i int num = (rand() % (upper - lower + 1)) + lower; printf('%d ', num); } } // Driver code int main() { int lower = 5, upper = 7, count = 1; // Use current time as // seed for random generator srand(time(0)); printRandoms(lower, upper, count); return 0; }> |
Izhod:
7
Časovna zapletenost : O(N), kjer je N število naključnih števil, ki jih je treba generirati
Pomožni prostor: O(1)
Opomba: Izhod, ustvarjen pri vsakem zagonu, je lahko drugačen, ker je število ustvarjeno naključno.