Jump to content

Rand.h


Recommended Posts

Posted

C'est ce qui permet de faire rentrer des carrés dans des ronds :chinois:

En clair, si tu as un float X, en faisant Y = (int) X , tu obtiens un Y qui est de type int. Le programme change le type à la volée (cast dynamique).

Par contre il aut faire très attention avec le cast, parce qu'évidemment quand les deux types ne sont pas les mêmes, il y a forcément des règles de conversion qui sont appliquées, et qui peuvent produire des résultats inattendus.

  • 3 weeks later...
Posted

Pour éviter les cast, tu peut aussi utiliser suivant les besoins round(), floor() et ceil().

Sinon je te conseille quelque chose comme :

1ere version : utiliser le modulo d'un très grand nombre. Vu la différence entre RANDMAX et 6, les approximations de la division euclidiènne sont négligeables.

random()%6+1;

2ieme version :

1 seule fois au début (le temps permet d'avoir une variable pseudo aléatoire).

srandom(time(NULL));

Dans ta boucle

x=(int)(6*(random())/RAND_MAX);

Ce qui permet de ne plus avoir d'approximation mais n'est utile que pour les grandes itérations en proba.

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...