Eroare de compilare:
In file included from /usr/include/c++/3.3/backward/fstream.h:31,
from user.cpp:1:
/usr/include/c++/3.3/backward/backward_warning.h:32:2: warning: #warning This file includes at least one deprecated or antiquated header. Please consider using one of the 32 headers found in section 17.4.1.2 of the C++ standard. Examples include substituting the <X> header for the <X.h> header for C++ includes, or <sstream> instead of the deprecated header <strstream.h>. To disable this warning use -Wno-deprecated.
user.cpp: In function `int main()':
user.cpp:20: error: name lookup of `i' changed for new ISO `for' scoping
user.cpp:18: error: using obsolete binding at `i'
user.cpp:29:2: warning: no newline at end of file
Eroare de compilare
Proababil sunt eu foaaarte greu de cap, dar chiar n-am inteles ce am gresit!
Acesta e programul:
#include <fstream.h>
int m,n,r,c,a[100][100],loc;
ifstream f ("elimin.in");
ofstream g ("elimin.out");
void citeste()
{f>>m>>n>>r>>c;
for (int x=0;x<m;x++)
for (int y=0;y<n;y++)
f>>a[x][y];
}
void elimlin()
{int suma=0;
for (int j=0;j<n;j++)
suma=suma+a[0][j];
int minim=suma;
for (int i=0;i<m;i++)
{suma=0;
for (j=0;j<n;j++)
suma=suma+a[i][j];
if (suma>=0)
if (suma<=minim) {minim=suma;loc=i;}
}
for (i=loc;i<m-1;i++)
for (j=0;j<n;j++)
a[i][j]=a[i+1][j];
m--;
}
void elimcol()
{int suma=0;
for (int j=0;j<m;j++)
suma=suma+a[j][0];
int minim=suma;
for (int i=0;i<m;i++)
{suma=0;
for (j=0;j<n;j++)
suma=suma+a[j][i];
if (suma>=0)
if (suma<=minim) {minim=suma;loc=i;}
}
for (i=loc;i<n-1;i++)
for (j=0;j<m;j++)
a[j][i]=a[j][i+1];
n--;
}
int main()
{citeste();
for (int i=0;i<r;i++) elimlin();
for (i=0;i<c;i++) elimcol();
int suma=0;
for (i=0;i<m;i++)
for (int j=0;j<n;j++)
suma=suma+a[i][j];
g<<suma;
return 0;
}
Nu ma intereseaza faptul ca programul isi indeplineste sau nu cerintele... vreau sa stiu ce am gresit, pentru a nu mai repeta greseala [de compilare]!