
Envoyé par
BoBy9
NbSecret := ((10 +1)*Rand) mod (10 + 1));
ne sert pas a grand chose au contraire il desequilibre ton algo en excentrant tes stats. fait plutot :
NbSecret := (Integer)((11)*Rand);
il faut savoir que les fonctions Rand renvoient un nombre réel [0;1[ en les multipliant metont par 10 on obtient [0;9] ([0;10[) en rajoutant + 1 on décale les résultats d'un crant soit toujours avec un coef 10 : [1;10] ([1;11[)donc si on veux alle de 0 a n il faut donner au programme (n+1) comme coef et ne pas rajouter +1 apres le calcul. le generateur de nombres aleatoire doit logiquement donner autant de chance a tout les nombres mais certains generateurs sont plus aboutis que d'autres.
si par maleur ta calculatrice ne sortait jammais le 0 avec le code que je t'ai donné essaye :
NbSecret := (Integer)(((12)*Rand) - 1);
Ca voudrais dire que ton Rand ne sort tes intervales que dans ]0:1[ ce qui est bizare mais que j'ai déjà vu ailleur
Partager