ciao a tutti
Allora mi sono un pò impanato in un programma che stò facendo in C, in pratica sto creando una funzione che data una matrice con 15 per 10 composta da numeri, mi dovrebbe trovare i gruppi di numeri uguali sia sulla colonna sia sulla riga, e mettermeli nella stessa posizione in cui erano in un altra matrice sempre 10 x 15 composta da 0(eccetto per i gruppi).
Ho scritto la funzione, il compilatore non mi da alcun errore ma mi stampa su schermo una semplice matrice composta da soli zeri, vi allego il codice:
#include<stdlib.h>
#include<stdio.h>
int read_matrix (char *file,int matrice[15][10])
{
FILE *ifp;
int i=0 ,j=0 ;
ifp = fopen(file, "r");
for(i=0; i<15; i++)
{
for(j=0; j<10; j++)
{
fscanf(ifp,"%1d",&matrice[i][j]);
}
}
return(matrice[15][10]);
}
int search_groups (int matrice[15][10])
{
int i,j,x,k,z;
int matrix[15][10];
for (i=0; i<15; i++)
{
for (j=0; j<10; j++)
{
x=matrice[i][j];
for(k=i-1; k<i; k++)
{
if(matrice[k][j]==x)
{
matrix[k][j]==matrice[k][j];
}
for (z=j-1; z<j+1; z++)
{
if (matrice[i][z]==x)
{
matrix[i][z]==matrice[i][z];
}
}
}
}
}
return matrix[15][10];
}
int main(int argc, char *argv[])
{
int l,m,i,j;
int matrice[15][10]= {0};
int matrix[15][10]= {0};
char *s=argv[2];
if(argv[1][0] == '-' && argv[1][1]== 't')
{
matrice[10][15]=read_matrix(s,matrice);
for (l=0; l<15; l++)
{
for (m=0; m<10; m++)
{
if(m==0)
{
printf("\n");
}
printf("%1d ", matrice[l][m]);
}
}
printf("\n \n \n");
matrix[15][10]=search_groups(matrice);
for(i<0; i<15; i++)
{
for (j=0; j<10; j++)
{
printf("%1d", matrix[i][j]);
}
}
}
else
{
printf("errore \n");
}
return 0;