[ laki_srt @ 10.08.2008. 23:01 ] @
Ovako, imam dva pitanja:
1: Kojim tipom mogu da definisem broj sa npr 10000 cifara?
2: Kako je moguce definisati niz sa npr 1000000 elemenata?

Unapred hvala!!!
[ X Files @ 11.08.2008. 08:42 ] @
Ukratko:
Citat:
1: Kojim tipom mogu da definisem broj sa npr 10000 cifara?

Ne postoji ugrađeni C/C++ tip za tako velike brojeve. Problem se rešava:
- pravljenjem sopstvene klase/funkcije za manipulaciju velikim brojevima, pri čemu se na primer čuvanje broja može vršiti fizički u nizu znakova
- korišćenjem gotovih klasa/funkcija kojih ima dosta po netu

Citat:
2: Kako je moguce definisati niz sa npr 1000000 elemenata?

Prvo se zapitaj da li taj sistem koji modeluješ ima baš tačno toliko elemenata. Možda ima manje, a možda će imati i više.

U principu:
char niz[1000000];
... će možda završiti posao, ali verovatmo i prepuniti stack šro može dovesti do pucanja programa.

Bolje je:
char *niz;
if ( (niz = (char*)malloc(1000000) ) == NULL )
{
// nema dovoljno memorije
exit( 1 ); // neki exit ili return
}
// ...
free( str );

Konačno, najbolje je koristiti neku konejnersku strukturu (koja je zasnovana na listama) gde će se za svako dodavanje elementa po potrebi i alocirati parče memorije. Tako da nema bespotrebnog rezervisanja prostora.

Svakako, najbolje rešenje zavisi od konkretnog problema koji rešavaš, tako da ćeš najtačniji odgovor dobiti ako izneseš šta tačno želiš da uradiš.
[ laki_srt @ 11.08.2008. 13:20 ] @
Citat:
Svakako, najbolje rešenje zavisi od konkretnog problema koji rešavaš, tako da ćeš najtačniji odgovor dobiti ako izneseš šta tačno želiš da uradiš.

trenutno nemam nikakav konkretan problem...malo sam zapostavio programiranje,pa sam poceo da vezbam i onda sam se setio da sam uvek imao problema sa zadatcima u kojima se traze veliki nizovi... ako naletim na neki zodatak gde mi je ovo potrebno postavicu ga...
hvala!