Calcul de nombre d'occurence

Fermé
mb42 Messages postés 432 Date d'inscription vendredi 17 octobre 2008 Statut Membre Dernière intervention 14 janvier 2014 - 1 nov. 2009 à 08:28
 omarrrr - 12 nov. 2009 à 22:54
Bonjour,

le programe suivant donne l'emplacement d'une valeur saisie au clavier

dans une matrice selon le ligne et la colone

#include<stdio.h>
#include<conio.h>
main()
{
int M[50][50],i,j,taille1,taille2,s=0,p=1,trouve=0,ind_li,ind_col,val;
float moy;
do
{
printf("donnner les nomres de lignes :");
scanf("%d",&taille1);
}while((taille1<=0)&&(taille1>=50));
do
{
printf("donner les nombres de colones");
scanf("%d",&taille2);
}while((taille2<=0)&&(taille2>=50));
for(i=0;i<taille1;i++)
{for(j=0;j<taille2;j++)
{ printf("l'elemnt %d %d ",i,j);
scanf("%d",&M[i][j]);
}
}
for(i=0;i<taille1;i++)
{for(j=0;j<taille2;j++)
{ s+=M[i][j];
p*=M[i][j];
}
}
moy=(float)s/(taille1*taille2);
printf("la somme est %d\n",s);
printf("le produit est %d\n",p);
printf("la moyenne est %f\n",moy);
printf("\ndonner une valeur\n");
scanf("%d",&val);
for(i=0;(i<taille1)&&(trouve==0);i++)
{for(j=0;(j<taille2)&&(trouve==0);j++)
{if(M[i][j]==val)
{ind_li=i;
ind_col=j;
trouve=1;
}
}
}
if(trouve==1)
printf("la valeur %d se trouve a l'emplacement %d %d\n",val,ind_li,ind_col);

else
printf("la valeur saisie ne se trouve pas\n");

while(

printf(" matric resultat\n");
for(i=0;i<taille1;i++)
{for(j=0;j<taille2;j++)
{printf("%d",M[i][j]);
}
printf("\n");
}
getch();
}

mais mon but est d'afficher les nomres d'occurences d'une valeur saisie au clavier dans une matrice

c a dire si un matrice de cette format
1 3 4
5 7 7
4 0 7

et si on saisi la valeur" 7"

donc le nombre d'occurence est 3


merci d'avance
A voir également:

1 réponse

mb42 Messages postés 432 Date d'inscription vendredi 17 octobre 2008 Statut Membre Dernière intervention 14 janvier 2014 7
1 nov. 2009 à 08:42
desole pour l'ancien code

mais le code que je test pour calculer le nombre d'occrence est le suivant:

#include<stdio.h>
#include<conio.h>
main()
{
int M[50][50],i,j,taille1,taille2,trouve=0,comp=0,val;

do
{
printf("donnner les nomres de lignes :");
scanf("%d",&taille1);
}while((taille1<=0)&&(taille1>=50));
do
{
printf("donner les nombres de colones");
scanf("%d",&taille2);
}while((taille2<=0)&&(taille2>=50));
for(i=0;i<taille1;i++)
{for(j=0;j<taille2;j++)
{ printf("l'elemnt %d %d ",i,j);
scanf("%d",&M[i][j]);
}
}

printf("\ndonner une valeur\n");
scanf("%d",&val);
for(i=0;(i<taille1)&&(trouve==0);i++)
{for(j=0;(j<taille2)&&(trouve==0);j++)
{if(M[i][j]==val)
{comp++
}
}
}

printf("le nombre d'occurence de la valeur %d est %d",val,comp);

else
printf("la valeur saisie ne se trouve pas\n");

getch();
}



mais il ne donne pas le resultat juste

pouvez me corriger


merci d'avance
0
#include<stdio.h>
#include<conio.h>
main()
{
float t[50][50],val;
int li,co,i,j,cpt;

printf("ligne : ");
scanf("%d",&li);
printf("colone : ");
scanf("%d",&co);
printf("entrez les valeur du tableau :\n");
for(i=0;i<li;i++)
{for(j=0;j<co;j++)
{printf("element %d %d :",i,j);
scanf("%f",&t[i][j]);}}
printf("entrez la valeur : ");
scanf("%f",&val);
for(i=0;i<li;i++)
{for(j=0;j<co;j++)
{if(t[i][j]==val)
cpt++;
}}
printf("la valeur %f en a dans le tableau %d fois",val,cpt);
getch();
}
0