Vidéo: APPRENDRE LE JAVA #14 - LES CHRONOMETRES 2024
Dans le cadre de votre programmation avec Java, il se peut que vous cherchiez à créer un caractère aléatoire. Réaliser un réel aléatoire est étonnamment difficile. Le mathématicien Persi Diaconis dit que si vous lancez une pièce plusieurs fois, en commençant toujours par le côté tête en haut, vous risquez de lancer la tête plus souvent que la queue. Si vous lancez encore plusieurs fois, en commençant toujours par le côté de la queue, vous risquez de lancer les queues plus souvent que les têtes. En d'autres termes, lancer des pièces de monnaie n'est pas vraiment juste. *
* Diaconis, Persi. "La recherche de hasard. "Réunion annuelle de l'Association américaine pour l'avancement de la science. Seattle. 14 fév. 2004.
Les ordinateurs ne valent pas mieux que les pièces de monnaie et les pouces humains. Un ordinateur imite la génération de séquences aléatoires, mais à la fin l'ordinateur fait ce qu'il dit et fait tout cela de façon purement déterministe. Ainsi, lorsque l'ordinateur exécute
import java. util. Au hasard;
int randomNumber = new Aléatoire (). nextInt (10) + 1;
l'ordinateur semble donner un nombre généré aléatoirement - un nombre entier compris entre 1 et 10. Mais tout est faux. L'ordinateur ne suit que les instructions. Ce n'est pas vraiment aléatoire, mais sans plier l'ordinateur en arrière, c'est ce que tout le monde peut faire de mieux.
Encore une fois, vous devrez simplement prendre ce code sur une foi aveugle. Ne vous inquiétez pas de ce nouveau
aléatoire (). nextInt
signifie que vous avez plus d'expérience avec Java. Il suffit de copier ce code dans vos propres programmes et amusez-vous avec. Et si les chiffres de 1 à 10 ne sont pas dans vos plans de vol, ne vous inquiétez pas. Pour lancer un dé imaginaire, écrivez l'instruction
int rollEmBaby = nouveau Random (). nextInt (6 ) + 1;
Avec l'exécution de cette instruction, la variable
rollEmBaby
obtient une valeur comprise entre
1
et
6
.