Gros probléme en c
Fermé
melanie
-
7 déc. 2007 à 17:37
mype Messages postés 2435 Date d'inscription jeudi 1 novembre 2007 Statut Membre Dernière intervention 16 août 2010 - 7 déc. 2007 à 18:35
mype Messages postés 2435 Date d'inscription jeudi 1 novembre 2007 Statut Membre Dernière intervention 16 août 2010 - 7 déc. 2007 à 18:35
1 réponse
mype
Messages postés
2435
Date d'inscription
jeudi 1 novembre 2007
Statut
Membre
Dernière intervention
16 août 2010
435
7 déc. 2007 à 18:35
7 déc. 2007 à 18:35
essaye ça:
#include <stdio.h>
#include<stdlib.h>
#include <time.h>
#define MAX 7
#define MAXI 100
void main (void)
{
int tab[7][7];
int vec[MAX];
int nb[MAXI];
int i,j,c,l,k,ajout=0,col_no_rempli=0,nbr;
int limite,cpt;
printf("\n");
/* initialisation d'un tableau 7X7 avec des zero */
srand (time (NULL));
for (i=0;i<7;i++)
{
for (j=0;j<7;j++)
{
nbr = 0 ;
tab[i][j] = nbr;
printf ("%d\t", tab[i][j]);
}
printf ("\n");
}
/* initialisation vecteur 7 avec nbre aléatoire different*/
printf("\nvecteur\n");
for(i=0;i<MAX;i++)
{
nbr =(rand () % 10)+1;
vec[i]= nbr;
printf("%d\n",vec[i]);
}
/* demande de nombre entre 1 et 100*/
printf("entrez la limite de nombre a introduire\n");
scanf("%d",&limite);
for(cpt=0;cpt<limite;cpt++)
{
printf("entrez la valeur %d du vecteur :", cpt+1);
scanf("%d",&nb[cpt]);
/* si nombre entrer est divisible par l'un des nombre du vecteur*/
ajout=0;
for(j=0;j<7;j++)
{
if(nb[cpt]% vec[j]==0)
{
for(k=0;k<7;k++)
if(ajout==0)
if(tab[k][j]==0){
ajout++;
tab[k][j]=nb[cpt];}
}
}
for(c=0;c<7;c++)
{
for(l=0;l<7;l++)
{
printf("%d\t",tab[c][l]);
}
printf("\n");
}
for(j=0;j<7;j++)
{
col_no_rempli=0;
for(i=0;i<7;i++)
{
if(tab[i][j]==0)
col_no_rempli++;
}
if(col_no_rempli==0)
exit(-1);
}
}
}