Nombre aléatoire

toyia Messages postés 158 Date d'inscription   Statut Membre Dernière intervention   -  
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

je souhaiterais savoir comment faire pour générer un nombre aléatoire comme si on lançait un dé. Par contre si vous savez, essayer de m'expliquer ca simplment car je n'y connais rien.
Merci d'avance:)
Toyia

6 réponses

KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Avec quel langage de programmation ?
0
michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 314
 
Bonjour,

Sans parler de tel ou tel langage, précise de quel logiciel tu disposes sur ta bécane
par exemple microsoft office Word, Excel... ou open office ou...
si tu n'as pas d'icones sur le bureau: demarrer, tout les programmes
0
Utilisateur anonyme
 
en c++:
#include <cstdlib>
#include <time.h>
int main()
{

int nballeatoire(0); //on crée un type de donné qui enregistreras le nombre
const int max = 6 , min = 1; //on dit au pc de generer un nombre au hasard entre 1 et 6

srand(time(NULL));
nballéatoire = (rand() % (max - min + 1)) + min;

return 0;
}
0
KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Sur le principe je suis d'accord, mais cependant
1) ton code ne compilera pas à cause des erreurs
2) même s'il marchait il n'afficherait rien donc l'intérêt est nul
3) ce n'est pas du C++ mais du C

#include <stdlib.h>
#include <stdio.h>
#include <time.h>

int alea(int min,int max)
{
	return min+rand()%(max-min+1);
}

int main() 
{
	srand(time(NULL));

	printf("%d\n",alea(1,6));

	system("PAUSE");
	return 0; 
}
0
nicocorico Messages postés 799 Date d'inscription   Statut Membre Dernière intervention   138
 
C'est en fait très simple, tous les compilateurs intègrent une fonction du type 'Random', 'Randomize', etc...
Mais c'est du pseudo-aléatoire, c'est à dire que pour la même initialisation, la suite sera identique.
Quant à l'aléa 'réel', lui, est très compliqué à obtenir...
-1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Profil bloqué
 
Le code depend du langage utilisé, exmple en Pascal

Program Nombres_Aleatoires;
var X, R : Integer;
begin
X := 100;
Randomize;
R := Random(X);
Write(R);
ReadLn;
// Le nombre R est generé dans l'etendue 0..99
end.

Pour afficher une serie de nombres il suffit de faire l'appel dans une boucle
toutefois le genérateur ne prend pas en compte si un nombre generé est recurrent, pour n'afficher que des nombres distincts il faut recourir à une technique de memorisation et d'exclusion.

Program Nombres_Aleatoires;
Const Cycle = 7;
var X, R, I : Integer;
begin
X := 100;
Randomize;
for I := 1 to Cycle do begin
R := Random(X);
Write(R, ', ');
end;
// La serie de nombres R generés peut contenir des doublons
ReadLn;
end;
-1
toyia Messages postés 158 Date d'inscription   Statut Membre Dernière intervention  
 
comment on fait pour créer le programme? dsl je n'y connais rien du tout
0
nicocorico Messages postés 799 Date d'inscription   Statut Membre Dernière intervention   138
 
On utilise un compilateur...
0
toyia Messages postés 158 Date d'inscription   Statut Membre Dernière intervention  
 
pourrais-tu m'en citer un svp?
0
nicocorico Messages postés 799 Date d'inscription   Statut Membre Dernière intervention   138
 
En citer qu'un serait très réducteur, et je te conseille plutôt de poser une nouvelle question sur le sujet, ce qui vaudra une déferlante de réponses...
Perso j'utilise Delphi 6.0, en langage pascal, que tu peux trouver gratuitement à cette adresse :
https://www.commentcamarche.net/telecharger/developpement/langages/
mais bon, on a tendance à préconiser ce que l'on maitrise le mieux, d'où l'intérêt de poser une nouvelle question et obtenir des avis variés...
0
toyia Messages postés 158 Date d'inscription   Statut Membre Dernière intervention  
 
merci
0
John
 
En programmation, peut importe le type de langage, il est presque impossible de faire des sélections de nombre réellement aléatoires.
Tu peux essayer de tricher avec des algorithmes permettant d'éviter que la sélection soit la même à chaque lancement du programme, et éviter de revenir trop souvent sur le même nombre pour rendre plus aléatoire ta sélection. Mais c'est pas avec la fonction Random que tu vas t'en sortir :p
John
-1