Jump to content

Recommended Posts

  • Moderators
Posted

Salut,

 

Cum se rezolvă problemele cu blablabla.in şi blablabla.out? Să luăm o banalitate: http://www.infoarena.ro/problema/adunare

 

Am făcut:

#include<fstream>
using namespace std;
int main()
{
     int a,b;
     ifstream f("adunare.in");
     ofstream g("adunare.out"); 
     f>>a>>b;
     g<<a+b;
     return 0;      
}

şi după ce trebuie să fac ca să verific codul?

Posted

Eu nu am facut niciodata problemele cu fisere pe PC, am verificat doar ce-mi cerea problema, fara ifstream/ofstream etc. Dar da, asa se face, ce anume nu intelegi? Cand iti spune spre exemplu "Se citeste de la tastatura un nr. nat. n si apoi n numere nat. din fisierul nr.txt" sau "Se citeste din fisierul bac.in un nr. nat n pe prima linie si n numere de pe a doua, sau tot de pe aceeasi"... marog, ti se spune destul de clar.

Daca aveai spre ex. prima linie a si a doua a numere, parcurgeai ca la vector, cu un for.

int a,b,s=0,i;
ifstream f("adunare.in");
ofstream g("adunare.out");
f>>a;
for(i=1;i<=a;i++) {f>>b; s=s+b;}

g<<s;

f.close();

g.close();

return 0;

 

Si ca verificare iei fara fisiere... . Si pui tu numerele din exemplu sa te verifici.

 

#include<iostream>

int a,b,s=0,i;
cin>>a;

i=1;

while(i<=a){cin>>b; s=s+b;i++;}

cout<<s;

return 0;

 

http://ler.is.edu.ro/~cex_is/Informatica/2013/teme/9/t3.pdf

  • Upvote 1

fWy1P.gif

 

Posted

Incearca sa pui ifstream si ofstream dupa using namespace std. Nu ai nevoie de f.close() si de g.close(); .

 

"şi după ce trebuie să fac ca să verific codul?"

 

Idea e ca tu ai un fisier .in ,iar programul tau creaza fisierul .out cu rezultatul potrivit.Daca nu ai erori in program si programul iti creaza fisierul.out in care ai rezultatul bun atunci e ok.(desigur  trebuie sa-ti dea rezultatul bun pe toate cazurile :) )

Ca sa te verifici incearca sa pui cat mai multe cazuri (spre exemplu pune cu numere mai mari ... sau chestii de genu ca sa nu ai exact acelas tip de exemple) , iar dupa acea te verifici sa vezi daca iti da bine in .out .

Daca ai un algoritm si o lista cu pasi in algoritm poti sa faci cu breakpoints si sa vezi cum programul iti urmeaza fiecare pas.(treaba asta o poti face mai ales cand nu ai erori ,dar nu primesti rezultatul bun in .out , te ajuta sa-ti dai seama un ai gresit)

 

Poti sa faci si cum a zis Lus. Asa vezi si diferenta dintre a lucra si a nu lucra cu fisiere.

  • Upvote 1

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.