C++ tableaux, aléatoire
Résolu
lanaën
Messages postés
15
Date d'inscription
Statut
Membre
Dernière intervention
-
lanaën Messages postés 15 Date d'inscription Statut Membre Dernière intervention -
lanaën Messages postés 15 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je souhaite programmer un petit jeu, le treasure hunt(chasse au trésor).
Cependant, je bloque sur une partie.
Je dois généré un nombre aléatoire
int hasard()
{
return (rand());
}
Ensuite je dis que cette valeur doit etre mis dans un tableau
for (i=1; i<=MAX_LIGNE-1; i++)
for (j=1; j<=MAX_COLONE-1; j++)
tab[i][j] = hasard();
Et en fonction du chiffre je lui dit d'afficher une image
if(tab[i][j] == 1)
applySurface(20,20,source01,ecran,&case_vide);
if(tab[i][j] == 2)
applySurface(40,40,source01,ecran,&case_vide);
Le programme compile, mais je n'ai aucune image qui s'affiche, j'utilise la SDL. Est ce que je dois mettre des limites sur le rand() ? Si oui comment ?
Il y a t 'il autre chose que j'ai oublié ?
Merci d'avance
Je souhaite programmer un petit jeu, le treasure hunt(chasse au trésor).
Cependant, je bloque sur une partie.
Je dois généré un nombre aléatoire
int hasard()
{
return (rand());
}
Ensuite je dis que cette valeur doit etre mis dans un tableau
for (i=1; i<=MAX_LIGNE-1; i++)
for (j=1; j<=MAX_COLONE-1; j++)
tab[i][j] = hasard();
Et en fonction du chiffre je lui dit d'afficher une image
if(tab[i][j] == 1)
applySurface(20,20,source01,ecran,&case_vide);
if(tab[i][j] == 2)
applySurface(40,40,source01,ecran,&case_vide);
Le programme compile, mais je n'ai aucune image qui s'affiche, j'utilise la SDL. Est ce que je dois mettre des limites sur le rand() ? Si oui comment ?
Il y a t 'il autre chose que j'ai oublié ?
Merci d'avance
A voir également:
- C++ tableaux, aléatoire
- Tableaux croisés dynamiques - Guide
- Fusionner deux tableaux excel - Guide
- Les tableaux word - Guide
- Tirage au sort excel aléatoire sans doublon - Forum LibreOffice / OpenOffice
- Barbara veut calculer automatiquement son budget dans un tableau. citez un des logiciels lui permettant de faire des calculs sur des tableaux de nombres (tableur). ✓ - Forum Excel
2 réponses
Bonjour,
tu peux accéder à la documentation de la fonction rand ici :
http://www.linux-france.org/article/man-fr/man3/rand-3.html
rand renvoit un entier entre 0 et RAND_MAX, je ne sais pas quel est le contexte de ta fonction, mais comme expliqué dans l'exemple si tu désires un nombre entre 1 et 10 tu dois faire appel au modulo :
tu peux accéder à la documentation de la fonction rand ici :
http://www.linux-france.org/article/man-fr/man3/rand-3.html
rand renvoit un entier entre 0 et RAND_MAX, je ne sais pas quel est le contexte de ta fonction, mais comme expliqué dans l'exemple si tu désires un nombre entre 1 et 10 tu dois faire appel au modulo :
int hasard() { return (1+(int) (10.0*rand()/(RAND_MAX+1.0))); }
Comme dit "Char Snipeur" il ne faut pas faire appel au modulo, mais plutôt utiliser la division.
Merci pour la correction !