Obtener numeros aleatorios en C++ (rand, srand)
Es algo muy frecuente, cuando ya dominas todo eso de pedir y almacenar datos, ahora tu profesor te pedirá que tus programas generen números aleatorios para automatizar el proceso de llenar arreglos y todo eso.
Así que lo primero que tenemos que hacer es incluir la librería:
#include<stdlib.h>
Luego inicializar los números aleatorios incluyendo esto:
srand(time(NULL));
Luego guardar el número aleatorio en alguna parte:
num=rand();
Eso es básicamente. Para ajustar el rango de número aleatorios podemos hacer varias cosas.
Número aleatorios entre 0 y 50:
num=rand()%51;
Número aleatorios entre 1 y 100:
num=1+rand()%50;
Número aleatorios entre 250 y 420:
num=250+rand()%(420-250);
De forma general es:
variable = limite_inferior + rand() % (limite_superior - limite_inferior) ;
Así que un programa que muestre 10 números aleatorios entre 1 y 10 quedaría así:
#include<stdlib.h> #include<iostream> using namespace std; int main() { int num,c; srand(time(NULL)); for(c=1;c<=10;c++) { num=1+rand()%(10-1); cout<<num<<" "; } cin.get(); }