Qq suggestions
float puis(float a, float x)
{//fonction puissance
int i;
float r = 1.0f;
for(i = 1; i <= (int)x; i ++) // points virgule dans boucle
{ // virgule possible mais pas ici
r=r*a; // ou moins lisible r *= a;
}
return r;
}
long fact(int x)
{//fonction factorielle
int i;
long r = 1;
for(i = 1; i < x; i ++) // ; pr boucle , sert à séparer dans même "bloc"
{
r = r * i;
}
return r;
}
long comb(int n, int k)
{//fonction combinaison
long r;
r = fact(n)/(fact(k) * fact(n-k));
return r;
}
main()
{//fonction main
int a, b, k, n;
long R = 0;
printf("(a+b)^n" );
scanf("%d %d %d",&a, &b, &n);
for(k = 0; k <= n; k ++)
{
R += comb(n, k) * puis(a, k) * puis(b, n-k);
printf("%ld\n", R);
}
}
*Les float servent pas beaucoup ici.
*Si fact, un long est très utile.
*Si on a une variable int à retourner en float, on fait
return (float)variable_int; (transtypage je crois)
*Dans les for (;
, on sépare les "blocs" par ;. On peut mettre aussi des , pour, par exemple faire incrémenter deux variables en même temps
int k, m;
for (k = 0; k < x; k++, m++) // k et m sont incrémentés en "même temps"