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
Bonjour,

jai un problème avec la dernière parie de mon programme en c:
je dois regarder si les nombres entier par l'utilisateur est divisible par l'un des nombre du vecteur.

si c'est le cas mettre le premier nombre dans la colonne a la première place libre du tableau 7X7, qui a le même indice que le diviseur dans le vecteur!! puis on doit afficher le tableau a chaque opération et le programme doit s'arrêter quand on a compléter une colonne!!
aidez moi , SVP!!!!

merco bcp!

#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,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*/




for(i=0;i<MAX;i++)
{

nbr =( rand () % 2)+ 8;
vec[i]= nbr;
printf("%d\n",vec[MAX]);

}
/* 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*/

1 réponse

mype Messages postés 2435 Date d'inscription jeudi 1 novembre 2007 Statut Membre Dernière intervention 16 août 2010 436
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);
    }
}
}
0