|
Titlul: Intrebare de streamuri Scris de: Andrei Grigorean din Iunie 08, 2008, 12:53:10 Recent m-am hotarat sa scriu o clasa de numere mari in C++. Voi posta intr-un articol pe infoarena codul sursa dupa ce voi termina pentru ca toata lumea sa poata folosi codul meu. Voi incerca sa o fac sa mearga cat mai repede posibil, astfel incat sa nu mai existe batai de cap la problemele de numere mari (doar in concursurile onsite :evil:).
O problema peste care am dat este ca vreau sa supraincarc functia << de scriere. Daca folosesc baza 10, e ok. Insa daca am baza mai mare, sa zicem 10000, lucrurile devin naspa. In C as fi facut asa: Cod: printf("%d", A[A[0]]);Cum fac asta cu streamuri? Titlul: Răspuns: Intrebare de streamuri Scris de: Stefan-Alexandru Filip din Iunie 08, 2008, 13:09:35 Cu streamuri ai face asa:
Cod: #include <iomanip> Apropo, eu am implementate o parte din operatiile cu numere mari in clase. Sunt curios sa vad cu ai de gand sa le implementezi, pentru ca si eu am avut mai multe tentative, si sunt curios sa vad si ce operatii o sa implementezi. In orice caz, de cele mai multe ori, ineficienta implementarilor se tragea de la initializarile pe care le faceam, de genul memset(X, 0x00, sizeof(X)), alfel avand nevoie de multe if-uri; uneori merge si X[0] * sizeof(X[0]), dar nu tot timpul. Si daca nu vrei sa implementezi cu vectori statici, poti sa derivezi clasa vector, din STL, numai ca scrii ceva mai mult. Titlul: Răspuns: Intrebare de streamuri Scris de: Adrian Diaconu din Iunie 08, 2008, 13:15:36 O problema peste care am dat este ca vreau sa supraincarc functia << de scriere. << nu e operator ? :) Titlul: Răspuns: Intrebare de streamuri Scris de: Stefan Istrate din Iunie 08, 2008, 13:16:06 Vrei si sa o proiectezi bine? Sau doar sa mearga repede? Pentru proiectare o sa ai multe aspecte de urmarit.
Titlul: Răspuns: Intrebare de streamuri Scris de: Andrei Grigorean din Iunie 08, 2008, 13:32:12 O problema peste care am dat este ca vreau sa supraincarc functia << de scriere. << nu e operator ? :) Eh, ai prins ideea :P. Vreau sa o proiectez bine. Si nu vreau sa folosesc vectori statici, si nici sa mostenesc vector. O sa am un int* in care o sa retin cifrele, si o sa fac resize-uri la fel ca vectorul. O sa vedem ce iese :). Oricum, probabil ca voi face asta in timpul vacantei deoarece acum sunt destul de ocupat. Titlul: Răspuns: Intrebare de streamuri Scris de: Simionescu Andrei din August 21, 2008, 23:43:40 a trecut ceva timp, dar succes!
http://infoarena.ro/lucrul-cu-nr-mari mi se pare facut cam neglijent, avea cateva erori in text si cod, si functia de scadere cred ca e busita ??? Titlul: Răspuns: Intrebare de streamuri Scris de: Stefan Istrate din August 22, 2008, 08:42:06 Articolul nu e finalizat, motiv pentru care nici nu apare in pagina de articole. Am aruncat un ochi pe functia de scadere si nu mi se pare deloc gresita, doar scrierea e mai compactata.
Titlul: Răspuns: Intrebare de streamuri Scris de: Simionescu Andrei din August 22, 2008, 16:01:32 am priceput compactarea, dar aveam impresia ca da "erori" in anumite situatii, probabil m-am inselat :-'
Titlul: Răspuns: Intrebare de streamuri Scris de: Valentin Stanciu din Septembrie 19, 2008, 10:18:19 Articolul explica mai bine, dar tot prefer varianta lui Berinde din articolul http://infoarena.ro/multe-smenuri-de-programare-in-cc-si-nu-numai (dupa ce elimini anumite "buguri" care sunt compiler-dependent)
|