begin process at 2012 05 29 04:59:58
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Divers

 > 

Débutant(e)

 > 

fonction rand()


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

fonction rand()

mercredi 2 décembre 2009 à 22:19:03 | fonction rand()

flowneo

Bonjour,

voila, je voudrais faire une fonction (ou procédure) qui génére par exemple 4 lettre que je placerais dans un tableau, j'ai regardé les référence du rand et j'ai vu comment faire pour générer 1 nombre mais pas pour générer des caractéres aléatoirement, comment-pourrais-je faire ? ? ? merci à ceux qui vont m'aider !
mercredi 2 décembre 2009 à 23:55:12 | Re : fonction rand()

TychoBrahe

Salut,

Un caractère n'est qu'un nombre. Il existe plusieurs jeux de caractères possibles pour associer un nombre à un caractère, tu peux te servir de l'ASCII sans soucis pour cela, il faudrait ne vraiment pas avoir de chance pour devoir supporter l'EBCDIC et autres jeux de caractères de ce genre.
jeudi 3 décembre 2009 à 00:01:03 | Re : fonction rand()

CptPingu

Administrateur CodeS-SourceS
Réponse acceptée !
Plusieurs solutions.

Tu sais que les caractères sont en fait des nombres, en C. Les caractères intéressant a afficher ont des valeurs allant de 40 à 176.

Donc tu génère un rand compris entre 40 et 176, que tu convertis en char.

Ex:
Code C/C++ :
#include <stdio.h>

/*!
** Get a random number between from and to
**
** @param from Range begin
** @param to Range end
**
** @return A random number
*/
int rangeRand(int from, int to)
{
  return rand () % (to - from + 1) + from;
}

int main(void)
{
  char c[5] = {0}; /* Une case en plus pour le 0 terminal */
  int i = 0;
  srand(time(0));

  for (i = 0; i < 4; ++i)
    c[i] = rangeRand(40, 176);

  printf("%s\n", c);

  return 0;
}

Ou alors, tu génères un tableau de caractères dans lequel tu mets tout ce qu'il te plait, et tu génères la position:
Code C/C++ :
#include <stdio.h>
#include <string.h>

const static char tab[] = "abcdefghiklmnopqrstuvxyz0123456789";

/*!
** Get a random number between from and to
**
** @param from Range begin
** @param to Range end
**
** @return A random number
*/
int rangeRand(int from, int to)
{
  return rand () % (to - from + 1) + from;
}

int main(void)
{
  char c[5] = {0};
  int i = 0;
  int size = strlen(tab);
  srand(time(0));

  for (i = 0; i < 4; ++i)
    c[i] = tab[rangeRand(0, size - 1)];

  printf("%s\n", c);

  return 0;
}


Cette discussion est classée dans : fonction, générer, rand


Répondre à ce message

Sujets en rapport avec ce message

[DEBUTANT] Fonction rand () [ par kojiro2 ] G un problème avec la fonction rand dans un pti jeuke je suis en train de faire.Je veux générer un nombre aléatoire (jusque là pas de pb).Ce nombre al Problème avec rand () [ par Samour25 ] Boujours a tous amis programmeur. Voilà mon prob , je dévoloppe une application qui utilise la fonction rand () pour générer des nombres aléatoire, to Rand() [ par StevenJLMunn ] J'ai besoin dans mon prog d'une fonction de chiffres aéolatoires plus puissante ke rand(). Je sais que la fonction random() de VB6 est très puissante Probleme de rand [ par Spacekiller ] Bonjour, voila j'ai un programme qui utilise la fonction rand(); a l'origine je devais generer un nombre aleatoirement entre 0 et 9 jai donc fait la f fonstion random [ par Teclis01 ] Voilà j'aimerais faire une fonction random qui renvoies 3 variables:1 long2 shortCes 3 variables de types different seront calculé de facon aléatoire probléme avec la fonction rand() en c!! [ par ammouna21 ] salut,j'ai un probléme avec rand et je ne sais pas comment la résoudre !l'exercice consiste a remplir une matrice[10][20] avec des valeurs aléatoires fonction rand() en c [ par anthonycosson ] j'ai besoin de recuperer un chiffre au hazard entre 1 et 100 donc je fais C=1+rand()%100;mais j'ai toujours les meme valeur qui sortent est normal et Fonction Rand pour démineur [ par pitidragon ] Bonjour à tous,je dois programmer un démineur en langage C pour mes études et j'ai besoin d'aide. Je dois utiliser la fonction Rand pour générer mes b Problème fonction rand() [ par Copyright83 ] Bonjour à tous,Je voudrais utiliser la fonction rand() en C, de façon à générer un nombre aléatoire.Pour le moment mon code ressemble à ceci :for(i=0; Générer un pass aléatoire [ par wineasy ] Bonsoir,Je souhaiterai que un password soit générer aussi bien avec des chiffres de des lettres majuscule/minuscule ainsi que plusieurs caractères 'sp


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,640 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales