Srand, sur dev c++
moi411
-
Clownz -
Clownz -
Salut tout le monde.
Je développe sur dev c++ et j'ai besoin de choisir aléatoirement 10 nombres compris entre 65 et 122 (condition que le prof à donné).
J'utilise la fonction srand et tout, elle marche mais mes nombre sont choisi entre 0 et 187. Je voudrais donc savoir comment faire.
On m'a aussi dit qu'il fallait borné la fonction rand mais je ne sais pas comment faire.
Ma fonction est:
int main()
{
int a;
int cpt=0;
srand (time(NULL));
for(cpt=0; cpt<11; cpt++)
{
a=rand() %122+65;
printf("%d\n",a);
}
system("PAUSE");
return 0;
}
Je développe sur dev c++ et j'ai besoin de choisir aléatoirement 10 nombres compris entre 65 et 122 (condition que le prof à donné).
J'utilise la fonction srand et tout, elle marche mais mes nombre sont choisi entre 0 et 187. Je voudrais donc savoir comment faire.
On m'a aussi dit qu'il fallait borné la fonction rand mais je ne sais pas comment faire.
Ma fonction est:
int main()
{
int a;
int cpt=0;
srand (time(NULL));
for(cpt=0; cpt<11; cpt++)
{
a=rand() %122+65;
printf("%d\n",a);
}
system("PAUSE");
return 0;
}
A voir également:
- Srand, sur dev c++
- Dev c++ - Télécharger - Langages
- Massgrave dev - Accueil - Windows
- Dev home. - Télécharger - Développement
- Dev pascal - Télécharger - Édition & Programmation
- Comment garder le 0 devant les chiffres sur excel - Guide
6 réponses
Déjà merci pour ton aide et ensuite je voudrais savoir, pourquoi 58? C'est parce que 58 + 65 = 123 ?
A+
A+
salut!
exactement!
soit une borne inférieure de 65 et une marge de hasard de 58
en fait, quand tu fais rand()%58
tu obtiens une valeur qui peut être 0 mais n'atteindra jamais 58.
%58 signifie modulo 58
on peut dire que c'est le reste d'une division par 58,
et dans les nombres entiers, le reste maximum d'une division par 58
c'est 57 !
cordialement
¤
exactement!
soit une borne inférieure de 65 et une marge de hasard de 58
en fait, quand tu fais rand()%58
tu obtiens une valeur qui peut être 0 mais n'atteindra jamais 58.
%58 signifie modulo 58
on peut dire que c'est le reste d'une division par 58,
et dans les nombres entiers, le reste maximum d'une division par 58
c'est 57 !
cordialement
¤
1 / int n'est pas float ni double puisque 31 de ses bits sont consacrés
à la valeur en base 2, et 1 bit est consacré au signe.
2 / ici on est borné entre 65 et 123
==> les variables de type "int" comprises entre 65 et 123 appatiennent à l'ensemble des entiers positifs
¤
à la valeur en base 2, et 1 bit est consacré au signe.
2 / ici on est borné entre 65 et 123
==> les variables de type "int" comprises entre 65 et 123 appatiennent à l'ensemble des entiers positifs
¤
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question