IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

Génération de nombre aléatoire


Sujet :

C

  1. #1
    Futur Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 13
    Points : 8
    Points
    8
    Par défaut Génération de nombre aléatoire
    Bonjour,

    j'aurais besoin de générer un réel aléatoire qui soit compris entre deux réels.
    Existe-t-il une fonction en C qui fait ceci ?

    Merci

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    191
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2008
    Messages : 191
    Points : 200
    Points
    200
    Par défaut
    Salut,

    bien sûr qu'il est possible de générer un nombre aléatoire en C. Tu dois d'abord inclure le header C <stdlib.h>. Puis, la fonction rand() te retourne un nombre aléatoire (ou plutôt pseudo-aléatoire) entre 0 et RAND_MAX). Tu peux donc aisément manipuler ces informations à l'aide d'opérations telles que :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    nombreAleatoire = rand() % NBRE_MAX  //retourne un nombre pseudo-aléatoire entre 0 et NBRE_MAX
    pour obtenir les nombres désirés.

    Si tu veux un nombre "plus aléatoire", utilise la racine srand() qui peut générer des nombres aléatoires à partir de l'horloge de ton ordinateur par exemple.

    Pour plus de détails, jette un coup d'oeil ici :

    http://c.developpez.com/faq/?page=no..._random_bornes

  3. #3
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Points : 50 367
    Points
    50 367
    Par défaut
    ATTENTION, ce que tu vas générer avec ces fonctions sont des nombres pseudo aléatoires.

    Il sont générés à l'aide d'une formule mathématique (congruence) et donc peuvent être prédictibles.

    Question : que veut tu faire avec ces nombres aléatoires :
    • pour un jeu et avoir des déplacements aléatoires, cela peut suffire
    • pour de la cryptographie, il sont définitivement pas assez aléatoires, il va falloir te tourner vers d'autres choses

  4. #4
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Points : 13 017
    Points
    13 017
    Par défaut
    Pour la crypto, les nombres aléatoires possèdent aussi des contraintes de 'forme'. Je n'ai vu dans les applis indus que l'utilisation de hard dédié et jamais de soft pour générer de l'aléatoire fiable par rapport des problématiques de crypto.

  5. #5
    Expert éminent
    Avatar de PRomu@ld
    Homme Profil pro
    Ingénieur de Recherche
    Inscrit en
    Avril 2005
    Messages
    4 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 4 155
    Points : 6 486
    Points
    6 486
    Par défaut
    Dans les applications hors industrie, on peut utiliser le Mersenne Twister qui a l'avantage d'une grande période et est souvent dans bien des cas plus rapide que drand48().

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 10
    Dernier message: 19/01/2012, 12h56
  2. Génération de nombres aléatoires
    Par nono_31 dans le forum Collection et Stream
    Réponses: 3
    Dernier message: 05/07/2008, 21h06
  3. défaut des fonctions de génération de nombres aléatoire type rand()
    Par Christophe30 dans le forum Langages de programmation
    Réponses: 3
    Dernier message: 17/02/2008, 20h21
  4. Génération de nombre aléatoires
    Par rebaudo dans le forum Smalltalk
    Réponses: 1
    Dernier message: 29/11/2007, 12h54
  5. recherche algo de génération de nombre aléatoire
    Par Pascale38 dans le forum MFC
    Réponses: 2
    Dernier message: 26/01/2004, 14h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo