Cod sursa(job #1217574)

Utilizator raztviVoicu Razvan raztvi Data 7 august 2014 19:19:55
Problema Jocul Flip Scor 30
Compilator c Status done
Runda Arhiva de probleme Marime 1.28 kb
#include <stdio.h>
#include <stdlib.h>
FILE *f;
FILE *g;
void citeste(int a[16][16],int m,int n)
{int i,j;
for(i=0;i<n;i++)
    for(j=0;j<m;j++)
    fscanf(f,"%d",&a[i][j]);

}

int linie(int a[16][16],int m,int n)
{int i,j,k,s;
    //suma maxima pe linie
for(i=0;i<n;i++)
    {s=0;
   for(j=0;j<m;j++)
       s=s+a[i][j];

    if(s<0) for(k=0;k<=j;k++) a[i][k]=-a[i][k];
    }

}

int coloana(int a[16][16],int m,int n)
{int i,j,k,s;
    //suma maxima pe coloana
for(j=0;j<m;j++)
    {s=0;
   for(i=0;i<n;i++)
       s=s+a[i][j];

    if(s<0) for(k=0;k<=i;k++) a[k][j]=-a[k][j];
    }

}

/*void printeaza(int a[10][10],int m,int n)
{int i,j;
    for(i=0;i<n;i++)
    {fprintf(g,"\n");
    for(j=0;j<m;j++)
fprintf(g,"%d ",a[i][j]);
    }
*/

int sum(int a[16][16],int m,int n)
    {int i,j; long s=0;
        for(i=0;i<n;i++)
    {
   for(j=0;j<m;j++)
       s=s+a[i][j];
    }
    fprintf(g,"%d",s);
}

int main()
{int a[10][10],n,m;


    f = fopen("flip.in","rb");
if (!f) {
        perror("Eroare la deschiderea fisierului");
        exit(EXIT_FAILURE);}
    fscanf(f,"%d%d",&n,&m);


citeste(a,m,n);
fclose(f);
g=fopen("flip.out","wb");
coloana(a,m,n);

linie(a,m,n);

//printeaza(a,m,n);
sum(a,m,n);
fclose(g);




}