Написал таки
Для моих задач подходит
Выдаёт разные ряды случайных чисел в промежутки запуска программы не
менее миллисекунды#include <stdlib.h>
#include <stdio.h>
main(int argc, char **argv[])
{
static int randx=1; //Zavedomo zadannoe zerno
FILE *uptime;
float time;
long int t;
int i; /* Dlina ryada sluchainyh chisel */
int a,b; /*Granicy diapazona, mojno budet zadavat' iz shella v args*/
a=10;
b=100;
/*Vychislenie sluchainogo zerna*/
uptime=fopen("/proc/uptime","r");
fscanf(uptime,"%f",&time);
fclose(uptime);
time*=randx;
t=time;
time=time-t;
randx=time*10000; /*chem bolshe mnojitel tem sluchainee zerno*/
printf("Randx = %d; Time = %f\n",randx,time);
/*Raspechatka ryada sluchainyh chisel*/
for(i=0;i<10;i++)
{
t=a + ((randx * 25173 + 13849)%65536) % ((b-a) + 1);
randx = (randx * 25173 + 13849)%65536;
printf("%d\n",t);
}
}
повторений не замечено