Tirage au sort en langage C (aléatoire)

Résolu
patchouramria Messages postés 17 Date d'inscription mardi 30 septembre 2014 Statut Membre Dernière intervention 21 janvier 2015 - Modifié par cptpingu le 15/10/2014 à 12:14
patchouramria Messages postés 17 Date d'inscription mardi 30 septembre 2014 Statut Membre Dernière intervention 21 janvier 2015 - 15 oct. 2014 à 14:35
Bonjour.

J'ai besoin d'un programme qui faire le tirage au sort d'un entier à partir d'un tableau d'entiers.
Je suis débutant en programmation avec le langage C.

Merci :)
A voir également:

6 réponses

cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
15 oct. 2014 à 14:15
C'est un problème mathématique simple. Il suffit de faire un modulo.
Exemple: pour un tableau de 3 élément: rand() % 3, retourne un nombre compris entre 0 et 2.

Un simple "rand() % N", devrait résoudre ton souci.

__________________________________________________________________________________________________

Améliorez votre expérience CodeS-SourceS avec ce plugin:
http://codes-sources.commentcamarche.net/forum/affich-10000111-plugin-better-cs-2#cptpingu-signature
1
cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
Modifié par cptpingu le 15/10/2014 à 12:12
Bonjour.

Je rappelle que l'on ne fait ni les recherches, ni le travail à la place du demandeur. On corrige en revanche avec plaisir toutes solutions proposées.
Je t'invite donc à poster ton code (dans des balises de code) et à indiquer ce qui te bloque *précisement*.


PS: Une petite lecture pour toi, à lire attentivement: http://www.gnurou.org/writing/smartquestionsfr

__________________________________________________________________________________________________

Améliorez votre expérience CodeS-SourceS avec ce plugin:
http://codes-sources.commentcamarche.net/forum/affich-10000111-plugin-better-cs-2#cptpingu-signature
0
patchouramria Messages postés 17 Date d'inscription mardi 30 septembre 2014 Statut Membre Dernière intervention 21 janvier 2015 1
Modifié par cptpingu le 15/10/2014 à 12:35
Voici mon essai:

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

int main()
{
  int A[3],i,N;
  do
  {
    printf("Donnez la taille effective\n");
    scanf("%d",&N);
 }
 while(N<=0||N>3);

 for(i=0;i<N;i++)
{
   printf("Donnez A[%d]",i);
   scanf("%d",&A[i]);
}

 int i=Math.round(math.random()*(2));
 int r=A[i];
 printf("%d",r);

  return 0;
}
0
cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
Modifié par cptpingu le 15/10/2014 à 12:41
1) Merci à l'avenir d'ajouter des balises de code !
2) As-tu essayé de compiler ton code ? Il ne compile même pas ! C'est tout de même la moindre des choses...
3) As-tu cherché le nom de la fonction qui fait de l'aléatoire en C, sur internet ? http://fr.lmgtfy.com/?q=al%C3%A9atoire+en+C

__________________________________________________________________________________________________

Améliorez votre expérience CodeS-SourceS avec ce plugin:
http://codes-sources.commentcamarche.net/forum/affich-10000111-plugin-better-cs-2#cptpingu-signature
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
patchouramria Messages postés 17 Date d'inscription mardi 30 septembre 2014 Statut Membre Dernière intervention 21 janvier 2015 1
15 oct. 2014 à 13:20
Le probléme que sur internet,je trouve seulement comment la fonction rand() et srand() qui retourne un nombre aléatoire,mais mon probléme que j'ai un tableau des entiers T[3]={2,5,7},et je cherche un programme qui me retourne un des ces 3 valeurs par hazard(soit 5 ou 2 ou 7),merci de m'aider par une idée :)
0
patchouramria Messages postés 17 Date d'inscription mardi 30 septembre 2014 Statut Membre Dernière intervention 21 janvier 2015 1
15 oct. 2014 à 14:35
merci ;)
0
Rejoignez-nous