Jai un probleme avec ma source!!!!! jai vérifeir et je ne trouve rien...pou

Signaler
Messages postés
286
Date d'inscription
jeudi 2 janvier 2003
Statut
Membre
Dernière intervention
16 juillet 2007
-
Messages postés
286
Date d'inscription
jeudi 2 janvier 2003
Statut
Membre
Dernière intervention
16 juillet 2007
-
alors jai veut faire un programme ki génére une suite de caractere d'un nombre donné...et sa marche po... je vous done ma source si vous pouvez m'aider...

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

// déclaration des fonctions et variables globales

enum randnm{a=1 ,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z};
static int max;
char intochar(int& conv);
char *nom_gen;
char generer(); //fonction ki génére
int endp;

//main

void main()
{

cout<<"bienvenue dans le generateur de prenoms:\nveuillez tapez une limite de caractere pour le nom:(0 pour aleatoire) ";
cin>>max;

if(max==0)
{
max=rand()%500;
}

nom_gen=new char[max];
for(int index=0;index<max;index++)
{
nom_gen[index]=generer();
}

cout<<nom_gen;
cout<<"\nprogrammer par retaks666\nappuyez sur une touche pour quitter";
endp=getch();
}//fin main

char generer()
{
static int srandv=(max/5*9/49*1569/45)%30; //pour valeur encore plus aleatoire :-)
srand(srandv);
int hasardnb=(rand()%max);
srandv++;
return(intochar(hasardnb));
}

char intochar(int& conv)
{
char tmp;
if(conv=1)tmp=a;
else if(conv=2)tmp=b;
else if(conv=3)tmp=c;
else if(conv=4)tmp=d;
else if(conv=5)tmp=e;
else if(conv=6)tmp=f;
else if(conv=7)tmp=g;
else if(conv=8)tmp=h;
else if(conv=9)tmp=i;
else if(conv=10)tmp=j;
else if(conv=11)tmp=k;
else if(conv=12)tmp=l;
else if(conv=13)tmp=m;
else if(conv=14)tmp=n;
else if(conv=15)tmp=o;
else if(conv=16)tmp=p;
else if(conv=17)tmp=q;
else if(conv=18)tmp=r;
else if(conv=19)tmp=s;
else if(conv=20)tmp=t;
else if(conv=21)tmp=u;
else if(conv=22)tmp=v;
else if(conv=23)tmp=w;
else if(conv=24)tmp=x;
else if(conv=25)tmp=y;
else if(conv=26)tmp=z;
return(tmp);
}

______________________
.----. /RETAKS666@wanadoo.fr /
_.'__ `. / /¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

4 réponses

Messages postés
286
Date d'inscription
jeudi 2 janvier 2003
Statut
Membre
Dernière intervention
16 juillet 2007

______________________
.----. /RETAKS666@wanadoo.fr /
_.'__ `. / /¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
Messages postés
455
Date d'inscription
mercredi 6 mars 2002
Statut
Membre
Dernière intervention
18 décembre 2003

salut,
tu veux générer des nombres aléatoires et leurs attribuer une lettre de l'alphabet puis les concatener pour faire des noms ? si c'est le cas ça ne fera qu'associer des lettres ensemble mais il est peut probable que tu obtiennes des noms comme pierre jacques ou sophie tu auras des jkzi pmzk

char intochar(int& conv) & pouquoi faire ? ce n'est pas indispensable
Messages postés
455
Date d'inscription
mercredi 6 mars 2002
Statut
Membre
Dernière intervention
18 décembre 2003

de plus <stdio.h> n'est pas utile
return(intochar(hasardnb)); retourne une valeur supérieures au nombres de combinaisons possibles puisqu'il y en a 26 de a à z
Messages postés
286
Date d'inscription
jeudi 2 janvier 2003
Statut
Membre
Dernière intervention
16 juillet 2007

jai corriger cela mais je ne sait pas comment changer l valeur retournée a cahk aprcours de la boucle... le programme ne retourne ke une seule valeur :-(
______________________
.----. /RETAKS666@wanadoo.fr /
_.'__ `. / /¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯