Afişează mesaje
|
Pagini: [1]
|
2
|
infoarena - concursuri, probleme, evaluator, articole / Arhiva educationala / Răspuns: De ce nu-mi merge programul din topic in C++?
|
: Octombrie 19, 2013, 20:32:53
|
if(n%i!=0) prim=1; fout<<"Numarul este prim"; else fout<<"Numarul nu este prim";
Primul if nu prea are sens , tu ai facut verificarea in primul for , deci trebuie eliminat. Iti da eroarea pentru ca else-ul tau nu e corespondent niciunui if. Tu trebuie sa verifici daca variabila prim este egala cu 1.In caz afirmativ afisezi ca nr e prim altfel afisezi mesajul ca nu e prim. deci : if (prim==1) fout<<"Numarul este prim"; else fout<<"Numarul nu este prim";
P.S nu e nevoie sa testezi divizorii decat pana la radical din n si e si mult mai rapid. Am incercat cum mi-ai spus tu si tot mi-a dat aceeasi eroare cum ca trebuie sa adaug if in fata lui else
|
|
|
3
|
infoarena - concursuri, probleme, evaluator, articole / Arhiva educationala / De ce nu-mi merge programul din topic in C++?
|
: Octombrie 19, 2013, 19:15:52
|
Acesta este programul, mai exact algorimtul fundamental de primalitate
#include <fstream>
using namespace std; ifstream fin("primalitate.in"); ofstream fout("primalitate.out"); int n,i,prim;
int main() { fin>>n; prim=1; if(n==0||n==1) prim=0; else for(i=2;i<=n/2;i++) if(n%i==0) prim=0; if(n%i!=0) prim=1; fout<<"Numarul este prim"; else fout<<"Numarul nu este prim"; fin.close(); fout.close(); return 0; }
Vreau sa stiu de ce nu merge, deoarece de randul cu else fout imi apare o eroare spunandu-mi ca trebuie sa scriu in fata lui else if. Cand fac acest lucru imi spune ca este incorect ceea ce am scris. Va rog mult daca ar putea cineva sa ma ajute si pe mine ca sa inteleg si eu unde am gresit
|
|
|
5
|
infoarena - concursuri, probleme, evaluator, articole / Arhiva educationala / Răspuns: probleme cu programul C++
|
: Octombrie 05, 2013, 17:55:22
|
Ziceam de calea fisierului "date.in" o_O Adica trebuie sa fie acolo unde e si "date.out". Daca esti pe Windows, du-te la Control Panel -> Folder options -> View si debifeaza "Hide extensions for known file types" si apoi mai verifica odata numele fisierului.
Ti-am urmat pasii, si cand am deschis problema am vazut ca scrie date.in.c Tu ce zici e corect numele fisierului sau nu? Si daca nu e corect, cum as putea sa schimb configuratia fisierului, adcica sa nu scrie c, ci altceva? stima
|
|
|
6
|
infoarena - concursuri, probleme, evaluator, articole / Arhiva educationala / Răspuns: probleme cu programul C++
|
: Octombrie 05, 2013, 13:12:30
|
Da, functioneaza asa cum e. Greselile cele mai frecvente sunt ori numele fisierului gresit, ori calea gresita. Vezi sa nu fie ceva gen "date.in.txt".
Numele fisierului este corect. Cum sa fie calea gresita cand mie imi cere sa fac perimetrul si aria unui dreptunghi. Inainte de a incepe un proiect pe console application, ultima intrebare este compiler. La mine scrie GNU GCC Compiler. trebuie sa o schimb sau sa o las asa? O alta intrebare tu faci programul pe console application sau folesesti altul? stima
|
|
|
7
|
infoarena - concursuri, probleme, evaluator, articole / Arhiva educationala / Răspuns: probleme cu programul C++
|
: Octombrie 05, 2013, 12:40:54
|
Poti sa faci asta, dar n-are niciun sens sa o faci. Poate ai inteles gresit. Mie imi compileaza programul tau.
Tie ti-a mers programul excat cum l-am facut eu? Ce ciudat pt ca la mine cand apas pe F9 sa vad rezultatul imi apare 0 chiar daca pun valori. Oare de ce? Tu ai dat valorile inainte sa faci programul sau dupa? Eu am dat inainte valori. Ai scris numerele in date.in pe orizontala sau pe verticala pt ca eu ma chinui de cateva ore si nu-mi iese programul incercand sa-i fac orice.
|
|
|
9
|
infoarena - concursuri, probleme, evaluator, articole / Arhiva educationala / probleme cu programul C++
|
: Octombrie 05, 2013, 07:13:43
|
De ce nu merge sa adaug valori in date.in din C++?
Scriu programul corect, iar in date.in imi apare o eroare spunandu-mi ca trebuie sa adaug o paranteza in fata numarului. Asta mi se intampla cand scriu numerele si pe orizontala cat si pe verticala.
Oare de ce? Poate ma ajuta si pe mine cineva? Uita-ti programul scris de mine in C++: #include <fstream>
using namespace std; ifstream fin("date.in"); ofstream fout("date.out"); int a,b,P,A;
int main() { fin>>a>>b; P=2*(a+b); A=a*b; fout<<P<<"\n"<<A; fin.close(); fout.close(); return 0; }
P.S. sunt incepator in folosirea C++.
|
|
|
|