static void coef_binomiale(int **tab, int *data, int classe) { double *coef; double *loi; double res; int k; int nb; int i; nb = 0; for (i = 0 ; i < 9 ; i++) nb += i * data[i]; coef = (double *)malloc(sizeof(double) * 9); loi = (double *)malloc(sizeof(double) * 9); for (i = 0 ; i < 9 ; i++) { if (i == 8) { coef[i] = 100; for (k = 0 ; k < 8 ; k++) coef[i] -= coef[k]; } else coef[i] = 100 * (fact(100) / (fact(i) * fact(100 - i))) * pow(((float)nb/10000), i) * pow(1 - ((float)nb/10000), 100 - i); } loi_binomiale(&loi, coef, data); afficher_tableau(tab, loi); afficher_recap(tab, loi, nb, classe); free(loi); free(coef); }
int main( int ac, char **av ) { char c; partie_t *partie; int largeur; int hauteur; int score; static int pos; if ( ac ) { if ( av[1] ) { if ( ft_check_location( av[1] ) ) { if (ft_check_extension( av[1] )) ft_sokoban( av[1] ); else ft_putendl("invalid extension"); } else ft_putendl("invalid location"); } else if ( av[1] == NULL ) { largeur = 10; hauteur = 10; score = 1; alloc_memoire_partie( partie ); partie->score = score; alloc_memoire_plateau( partie->p ); alloc_memoire_plateau( partie->tampon ); partie->p->largeur = largeur; partie->p->hauteur = hauteur; alloc_memoire_tableau( partie->p ); partie->tampon->largeur = partie->p->largeur; partie->tampon->hauteur = partie->p->hauteur; alloc_memoire_tableau( partie->tampon ); plateau( partie->p ); tableau_tampon( partie->p, partie->tampon ); afficher_tableau( partie->p ); while( partie->p->tab[A] != 'C' ) { printf("Rentrez i pour aller en haut , k pour aller en bas ,"); printf(" j pour aller a gauche , l pour aller a droite , "); printf("r pour revenir au coup precedent\n"); scanf(" %c",&c); printf("\n\n"); deplacement( c, partie->p, partie->tampon ); tableau_tampon( partie->p, partie->tampon ); system( "clear" ); printf( "COUP N'%d\n\n\n\n",partie->score ); afficher_tableau( partie->p ); partie->score++; } printf( "Vous avez reussi\n" ); endgame( partie ); } } return ( 0 ); }