PIC : OBTENIR UN NOMBRE ALÉATOIRE AVEC LA FORMULE XN+1=(137XN+187) MOD 2^8

Signaler
Messages postés
37
Date d'inscription
mercredi 25 octobre 2000
Statut
Membre
Dernière intervention
7 août 2006
-
AhmedMRBT
Messages postés
1
Date d'inscription
vendredi 4 juillet 2008
Statut
Membre
Dernière intervention
16 mai 2011
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/38826-pic-obtenir-un-nombre-aleatoire-avec-la-formule-xn-1-137xn-187-mod-2-8

AhmedMRBT
Messages postés
1
Date d'inscription
vendredi 4 juillet 2008
Statut
Membre
Dernière intervention
16 mai 2011

en informatique il n'y a pas que les génération des nombres pseudo aléatoires, il existe aussi les nombres aléatoires générés pas une formule paramétrée par la valeur de l'horloge système à un instant donné donc c'est un nombre aléatoire à 100%
marc_pl
Messages postés
10
Date d'inscription
dimanche 11 avril 2004
Statut
Membre
Dernière intervention
13 septembre 2009

Salut!

Merci pour le code mais il me semble qu'il y a une erreur à la ligne 49, au lieu de:
"btfss STATUS, C"
il faudrait mettre:
"btfsc STATUS, C"

Bonne continuation!
warezpsx
Messages postés
37
Date d'inscription
mercredi 25 octobre 2000
Statut
Membre
Dernière intervention
7 août 2006

Salut !

Ben à cette réponse je dis... Snif ! Je ne programme qu'en assembleur pour l'instant sur les PICs.
Cela dit, merci quand même et n'hésitez pas à laisser un petit commentaire. (ca fait plaisir de voir que mon code a intéressé des personnes)
nightlord666
Messages postés
746
Date d'inscription
vendredi 17 juin 2005
Statut
Membre
Dernière intervention
23 mai 2007
6
Tu pourrait aussi utiliser la méthode de la CRT (C Runtime) qui est celle çi en C :

void __cdecl srand (
unsigned int seed
)
{
holdrand = (long)seed;
}

int __cdecl rand (
void
)
{
return (((holdrand = holdrand * 214013L + 2531011L) >> 16) & 0x7fff);