Afişează mesaje
Pagini: [1]
1  infoarena - concursuri, probleme, evaluator, articole / Arhiva de probleme / Răspuns: 824 Insule : Noiembrie 01, 2014, 12:49:08
Imi explica si mie cineva de ce scrie N,M <= 100 si solutia mea ia 10 puncte pt a[102][102] , 88 puncte pe a[150][150], 70 puncte pe a[300][300] si 100 pentru a[256][256] Huh? Si nu cumva o matrice de 256 pe 256 si o coada (cu 2 unsigned char-uri) depaseste 640 kbytes?
2  infoarena - concursuri, probleme, evaluator, articole / Informatica / Citire cu cstdio : Septembrie 16, 2014, 14:15:50
Salut, am observat ca anumite probleme necesita citire din fisier cu cstdio . De obicei folosesc fstream si as vrea sa-mi spuna cineva cum as putea scrie asta:

ifstream f("d.in");
ofstream g("d.out");
.
.
f>>n>>m;
g<<n<<m;

cu cstdio, folosind structura cu freopen

Si as dori ca sa-mi explice cineva care este diferenta dintre scrierea aceasta:

FILE *f,*g;
.
.
f=fopen("cod5.in","r");
g=fopen("cod5.out","w");
fscanf(f,"%d",&n);
..
fprintf(g,"%d",n);

si scrierea cu freopen, deoarece am vazut recent intr-un topic pe infoarena ca ar exista diferente.


Si ca sa nu mai deschid alt topic:



#include <cstdio>

using namespace std;
FILE *f,*g;
int n,i,j,a[100][100];
char x;
int main()
{
    f=fopen("cod5.in","r");
    g=fopen("cod5.out","w");
    fscanf(f,"%d",&n);
    for(i=1;i<=n;i++)
        for(j=1;j<=n;j++)
            {fscanf(f,"%c",&x);
            a[j]=x-'0';}
    for(i=1;i<=n;i++)
    {for(j=1;j<=n;j++)
            {fprintf(g,"%d",a]i][j]);fprintf(g," ");}
            fprintf(g,"\n");}
    return 0;
}

Daca am ca date de intrare
5
00000
01000
10100
01000
00000
imi afisaza:
-38 0 0 0 0
0 -38 0 1 0
0 0 -38 1 0
1 0 0 -38 0
1 0 0 0 -38
Am observat ca problema este de la  fscanf(f,"%c",&x); dar nu stiu sa corectez
Pagini: [1]
Powered by SMF 1.1.19 | SMF © 2006-2013, Simple Machines