1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
int main()
{
register unsigned int i,j,k;
int nrow=4,ncol=4;
unsigned int size_tab=nrow*ncol,size_tri;
int *p_temp=NULL,p[2];
double *tri=NULL,tab[4][4]={{1,2,4,6},{9,1,8,6},{3,2,1,5},{5,6,7,8}};
Fifo *file;
/* ranger les element du tableau dans un vecteur */
tri=Malloc(size_I,double);assert(tri!=NULL);
file=fifo_empty(); /*initialisation de la file */
/* trier les éléments du vecteur par ordre croissant puis enlever les doublons */
quicksort(tri,0,size_I-1);
size_tri=suprime_doublon(tri,size_tab); /* tri est sans doublons */
/* Parcour et recherche dans le tableau */
for(k=0;k<size_tri;++k){
for(i=0;i<nrow;++i){
for(j=0;j<ncol;++j){
if(tab[i][j]==tri[k]){
p[0]=i;p[1]=j; /* coordonnee du pixel courant */
p_temp=Malloc(2,int);
p_temp[0]=p[0]; p_temp[1]=p[1];
fifo_add(&file,p_temp);
}}}
}
return(1);
} |
Partager