hoy me levante con ganas de programar algo y bueno salio esto:
en caso de querer usar la hora usa los minutos y los segundos para generar el numero
el algoritmo es el de los cuadrados medios un poco modificado por los errores que poseia este en su momento
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <windows.h>
int aleatorio(int semilla);
int main()
{
int semilla=0; //si el valor de semilla es cero usara la hora para obtener numeros aleatorios
while(1==1)
{
semilla=aleatorio(semilla);
printf("aleatorio %i\n",semilla
); Sleep(1000);
}
}
int aleatorio(int semilla)
{
int ContarDigitos,contador,multiplicar;
if(semilla==0)
{
time_t FapTime;
struct tm * ptm;
semilla=(ptm->tm_min-5)*100+(ptm->tm_sec);
}
semilla+=1111;
semilla=semilla*semilla;
contador=0;
ContarDigitos=semilla;
while(ContarDigitos>0)
{
ContarDigitos=(int)ContarDigitos/10;
contador++;
}
if(contador<8)
{
for(multiplicar=contador;multiplicar<8;multiplicar++)
{
semilla=semilla*10;
}
}
semilla=(semilla/100)%10000;
return semilla;
}