Générer un nombre aléatoire

Il existe plusieurs méthodes.

Celle que j'utilise utilise la bibliothèque time pour initialiser le générateur de nombre.

Attention : un générateur de nombre réellement aléatoire n'existe pas. Il s'agit toujours de codes pseudos aléatoire avec une périodicité plus ou moins grande.


Exemple de code

les codes spécifique à la génération sont en couleur, le reste est en gris

Mainwindow.cpp


#include "mainwindow.h"

#include "ui_mainwindow.h"

#include <time.h>


MainWindow::MainWindow(QWidget *parent) :

   QMainWindow(parent),

   ui(new Ui::MainWindow)

{

   ui->setupUi(this);

      statusLbl = new QLabel(); //créé le Label

      statusBar()->addWidget( statusLbl, 1 );

      statusLbl->setText("Score = 0");

       srand(time(NULL));//on initialise le générateur


}


MainWindow::~MainWindow()

{

   delete ui;

}

//---------------------------------------------------

........

//---------------------------------------------------

   int MainWindow::aleatoireUnATrois()

   { //rend une valeur entre 1 et 3

       return (rand() % 3) + 1;

   }

//----------------------------------------------------

 void MainWindow::moteur(int joueur,int ordi)

 {

     QString resultat;

     bool joueurGagne=false;

  switch (ordi)

//----------------------------------------------------

void MainWindow::afficher()

{

 statusLbl->setText("nombre aleatoire = "+QString::number(aleatoireUnATrois()));

]