Jump to content

Problema Cu #include <fstream> In Si Out


Courage

Recommended Posts

  • Moderators

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?

Link to comment
Share on other sites

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

 

Link to comment
Share on other sites

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
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • 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.