Pourquoi, ça ne marche pas?

landry -  
 Bob -
salut
voici un devoir qui m'a été donné a l'école et qui me demande de calculer le nombre de chance de gagner au tiercé,avec en entre le nombre de chevaux partant(n) et le nombre de cheveaux joués(p)
1 chance sur x de gagner:x=n!/p!
1chance sur y de gagner:y=n!/(n-p)!p!
j'ai ecris ce code,mais il ne marche pas,pourquoi?

#include<stdio.h>

#include<math.h>
void main()
{int i,j,n,m,p;
float x,y,factp,factn,factnp;
printf("Donner le nombres de chevaux partant:");
scanf("%d",&n);
printf("Donner le nombres de chevaux joues:");
scanf("%d",&p);

factn=1; factp=1; factnp=1;

for(i=1;i<n+1;i++);

factn=factn*i;
printf("pour n %f\n",factn);

for(j=1;j<=p;j++)
factp=factp*j;
printf("pour p %f\n",factp);

for (m=1;m<=(n-p);m++)
factnp=factnp*m;
printf("pour n-p %f",factnp);

x=factn/factp; y=factn/(factp*factnp);
printf("Dans l'ordre:une chance sur %f de gagner\n",x);
printf("dans le désordre:une chance sur %f de gagner\n",y);
}

3 réponses

Bob
 
/* Quelques rectifications en ISO/IEC 9899:1999 */

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

signed int main()
{
signed int i, j, n, m, p;
float x, y, factp, factn, factnp;
printf("Donner le nombres de chevaux partant:");
scanf("%d", &n);
printf("Donner le nombres de chevaux joues:");
scanf("%d", &p);
factn = 1;
factp = 1;
factnp = 1;
for(i = 1; i < n + 1; i++); // ERREUR manque "{" puis "}"
factn = factn*i;
printf("pour n %f\n", factn);
for(j = 1; j <= p; j++)
factp = factp * j;
printf("pour p %f\n", factp);
for (m = 1; m <= (n-p); m++) //ERREUR idem que precedement
factnp = factnp * m;
printf("pour n-p %f", factnp);
x = factn / factp; y = factn / (factp * factnp);
printf("Dans l'ordre:une chance sur %f de gagner\n", x);
printf("dans le désordre:une chance sur %f de gagner\n", y);
return EXIT_SUCCESS;
}

/*
NB: Organise mieux ton code c'est un peu le fouilli pratiquement aucun espace
*/
0
lanocm Messages postés 63 Statut Membre 3
 
c'est ainsi parce,j'ai fais un copié/ collé
0
Bob
 
Finalement le problème est-il résolu?
0