Sinon la fonction random de la libc utiliser des tables de "hasard" pré-définie qu'il convient d'initialiser avec une valeur de timer système pour sélectionner l'emplacement de départ de parcours de la table.
voir
int rand(void);
void srand(unsigned seed);
Si tu veut faire une table toute prete toi meme en voici, tu peut mélangé tout ca pour en faire des customs
Le pseudo hasard pour l'utiliser tu peut croiser plusieurs informations temporelle (asynchrone) comme le temps de démarrage de ton programme, le temps système en milli-seconde et des tables (pointeur sur ton code par exemple) et une table et ton résultat est difficilement reproductible.
Par améliorer l'entropie du hasard le kernel linux utiliser les interruptions du matériel qui sont identifié pour être non-cyclique (comme le temps entre deux clics souris et les frappes au claviers).
# Si tu trouve
Posté par TheBreton . En réponse au message Générer un nombre pseudo aléatoire avec garantie d'unicité. Évalué à -1.
tu deviendra célébre.
D'habitue on as un morceau de hardware pour faire ca (voir extraire le bruit thermique d'une résistance http://fr.wikipedia.org/wiki/Bruit_thermique ).
Sinon la fonction random de la libc utiliser des tables de "hasard" pré-définie qu'il convient d'initialiser avec une valeur de timer système pour sélectionner l'emplacement de départ de parcours de la table.
voir
int rand(void);
void srand(unsigned seed);
Si tu veut faire une table toute prete toi meme en voici, tu peut mélangé tout ca pour en faire des customs
http://nte-serveur.univ-lyon1.fr/nte/immediato/math2001/tables/TABLAZAR.htm
http://www.mines.inpl-nancy.fr/~verdel/stat/tables/mod.php?id=t1.php
Le pseudo hasard pour l'utiliser tu peut croiser plusieurs informations temporelle (asynchrone) comme le temps de démarrage de ton programme, le temps système en milli-seconde et des tables (pointeur sur ton code par exemple) et une table et ton résultat est difficilement reproductible.
Par améliorer l'entropie du hasard le kernel linux utiliser les interruptions du matériel qui sont identifié pour être non-cyclique (comme le temps entre deux clics souris et les frappes au claviers).