infoarena

infoarena - concursuri, probleme, evaluator, articole => Informatica => Subiect creat de: Iacob Eduard din Septembrie 22, 2006, 23:35:45



Titlul: ajutati-ma
Scris de: Iacob Eduard din Septembrie 22, 2006, 23:35:45
Eu nu m-am apucat de mult sa invat C++,de vreo 2 luni,si acum abia am trecut in clasa a 9a.nu am mai trimis solutii niciodata,si nu inteleg de ce imi da eroare de compilare la monitorul de evaluare,la problema adunare ](*,),ca eu cand compilez in borlandC imi merge foarte bine,imi creaza si fisierul adunare.in si adunare.out.Sa nu credeti ca nu stiu cum sa fac un program care sa adune 2 numere,dar nu stiu cum sa fac sa mearga pe site-ul acesta ,ca e prima oara.Dati-mi un cod va rog,ca pt voi asta e un fleac.


Titlul: Raspuns: ajutati-ma
Scris de: nivan din Septembrie 23, 2006, 00:48:13
daca folosesti:

void main()
{
 .....
}

nu o sa-ti mearga din cauza compilatorului de pe site (gcc sau g++, nu chiar BORLAND)

incearca:

int main()
{
 ......

 return 0;
}

Daca nu merge nici asa..... mai vedem atunci.


Titlul: Raspuns: ajutati-ma
Scris de: Bondane Cosmin din Septembrie 23, 2006, 08:22:41
a si incearca sa folosesti :
#include <fstream>
using namespace std; // asta nu iti merge in borland C [instaleaza dev c++ de ex sa mearga]


Titlul: Raspuns: ajutati-ma
Scris de: u-92 din Septembrie 23, 2006, 10:37:52
aici gasesti mai multe informatii despre modul in care se evalueaza: http://infoarena.devnet.ro/index.php?page=Despre_Regulament


Titlul: Raspuns: ajutati-ma
Scris de: Sima Mihai Cotizo -vechi din Septembrie 23, 2006, 19:35:01
a si incearca sa folosesti :
#include <fstream>
using namespace std; // asta nu iti merge in borland C [instaleaza dev c++ de ex sa mearga]
sau
Cod:
#include <stdio.h>
fara "using namespace std" ca sa mearga si in borland C . ;)...  probabil ti se va parea mai greoaie folosirea comenzilor scanf() si printf(), dar dupa cum ai zis ".Sa nu credeti ca nu stiu cum sa fac un program care sa adune 2 numere" inseamna ca poti gasi usor si o documentatie la aceste proceduri... sau pentru fstream, dupa cum a zis cos_min


Titlul: Raspuns: ajutati-ma
Scris de: Iacob Eduard din Septembrie 23, 2006, 20:14:23
Tot nu am reusit.Acesta este codul:
#include <fstream.h>

int main()
{
int a,b;
cin>>a;
cin>>b;
ofstream in;
in.open("adunare.in");
in<<a;
in<<"\n";
in<<b;

ofstream out;
out.open("adunare.out");
out<<a+b;

return 0;
}
Deci ce este gresit?


Titlul: Raspuns: ajutati-ma
Scris de: Andrei Grigorean din Septembrie 23, 2006, 20:22:44
#include <stdio.h>

int main()
{
      freopen("adunare.in", "r", stdin);
      freopen("adunare.out", "w", stdout);

     int a, b;

    scanf("%d %d", &a, &b);
    printf("%d\n", a+b);

   return 0;
}


Titlul: Raspuns: ajutati-ma
Scris de: Iacob Eduard din Septembrie 23, 2006, 22:09:28
Multumesc,am reusit. :yahoo:


Titlul: Raspuns: ajutati-ma
Scris de: u-92 din Septembrie 23, 2006, 22:11:32
in legatura cu greselile din codul care l-ai postat, se foloseste " ifstream " pentru a citi si " >> " (la fel ca la cin)
edit: nu merge si din cauza ca ai lasat "cin" acolo care citeste de la tastatura


Titlul: Raspuns: ajutati-ma
Scris de: nivan din Septembrie 23, 2006, 23:38:45
oricum e mai bine sa foloseasca scanf() si printf() ....

[last Edit] Sunt curios in Borland cum iti merge cu greselile enumerate mai sus de u-92 .....


Titlul: Raspuns: ajutati-ma
Scris de: Savin Tiberiu din Septembrie 24, 2006, 08:01:48
programul e corect in borland, dar numai acolo


Titlul: Raspuns: ajutati-ma
Scris de: u-92 din Septembrie 24, 2006, 10:30:48
printf si scanf sunt mult mai rapide.. dar lucrul cu stream-urile merge si in g++, nu numai in borland


Titlul: Raspuns: ajutati-ma
Scris de: nivan din Septembrie 24, 2006, 10:40:29
dap  :) stiam asta. Eu m-am referit ca programul lui citea de la tastatura doua numere. El cand il rula in borland .... nu trebuia sa astepte programul sa introduca el 2 numere?  :-'      sau poate nu inteleg eu ceva pacolo (cum nu prea lucrez cu streamuri).


Titlul: Raspuns: ajutati-ma
Scris de: cristi8 din Septembrie 24, 2006, 13:58:37
k_ounu_eddy, nu cred ca ai inteles ca din fisierul de intrare (cel cu extensia .in) trebuie sa CITESTI numerele. Nu trebuie sa-l creezi tu. il presupui deja creat cu niste valori in el, si il deschizi si citesti din el, rezolvi problema si afisezi resultatul in fisierul .out (doar pe acesta il creaza programul tau).
De la tastatura NU CITESTI NIMIC


Titlul: Raspuns: ajutati-ma
Scris de: Savin Tiberiu din Septembrie 24, 2006, 15:58:02
Citat
printf si scanf sunt mult mai rapide.. dar lucrul cu stream-urile merge si in g++, nu numai in borland

mie cu dev-cpp nu mi-a compilat.


Titlul: Raspuns: ajutati-ma
Scris de: nivan din Septembrie 24, 2006, 16:06:05
nici mie pe linux... da' in fine, in mod teoretic ar trebui sa mearga si pe gcc/g++


Titlul: Raspuns: ajutati-ma
Scris de: Iacob Eduard din Septembrie 25, 2006, 23:29:59
Am inteles ,multumesc de sfaturi baieti(si fete daca ati postat  :D)


Titlul: Raspuns: ajutati-ma
Scris de: nivan din Septembrie 26, 2006, 00:24:31
Eventual intre timp incearca sa te mai documentezi despre gcc/g++ si despre standardul ANSI. O sa te ajute mult pe viitor sa scapi(ba chiar sa eviti) de faze naspa... cum a fost asta.