Nombre aléatoire en C++

Le problème exposé dans ce sujet a été résolu.

Tu as essayé de l’exécuter plusieurs fois ? Tu as eu plusieurs 4 par malchance je pense, ton code fonctionne très bien chez moi (n’oublie pas d’ajouter un retour à la ligne par contre, mais c’est un détail).

+2 -0

J’ai compilé et testé (avec g++ et clang++), ça marche, c’est bien alétoire. En remplaçant distrib(1, 6) par distrib(1, 1000) tu diminues les chances d’avoir 2 fois de suite la même chose.

+0 -0

Tu es sûr de bien travailler sur la bonne version de ton code ?
J’ai déjà fait l’erreur de compiler mais d’exécuter un exécutable périmé en débutant.

C’est probablement une bête erreur.
Si ça ne prend pas trop de temps, recrée un nouveau projet vierge et teste le code en copiant-collant pour voir si l’erreur persiste.

Tu as essayé ce que suggère LaVirgule ? Pour savoir quel include mettre, Google est ton ami. La lib standard C++ est bien documentée, il faut en profiter.

+1 -0

Justement, c’est le moment d’apprendre. Si tu cherches std chrono et que tu ouvres le premier résultat (qui t’emmène sur cppreference), tu as un exemple tout en bas qui te montre comment ça marche.

+2 -0

J’ai besoin du

#include <chrono>

Oui

donc mon code serait

#include <chrono>
#include <iostream>

int main
{
     auto seed = std::chrono::system_clock::now().time_since_epoch().count();
     std::mt19937 engine {seed};
     
     return 0;
}

?

valerian.roura

Il t’en manque une partie là. Tu crées le générateur, mais tu ne t’en sers pas. Les deux lignes de LaVirgule remplacent les lignes 7 et 8 sur ce code.

Programmer, ce n’est pas juste copier/coller des trucs tout faits, il faut réfléchir au sens du code que l’on écrit. Sinon, on ne progresse pas.

+4 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte