ok estoy intentando hacer un dado virtual de 20 caras pero que me despliegue 50 resultados diferentes logre hacer el dado y logre hacer que me despliegue los 50 resultados pero todos son iguales #include<stdio.h>
#include<stdlib.h>
#include<math.h>
funcion_random()
{
int x=50;
do
{
srand(time(0));
printf("random: %i\n", rand()%21-1);
--x;
}while(x>=0);
return 0;
}
int main()
{
funcion_random();
}
El problema se debe a que defines la semilla para los números aleatorios dentro del bucle. Lo que debes hacer es colocar la llamada a "srand" justo al principio de la función "main".
Y para obtener un valor en el rango 1 .. 20 debes utilizar:
printf("random: %i\n", 1 + rand() % 20);
Un saludo
Esto me sirve para el foro de rol que estoy haciendo.
¡Gracias! (^w^)b