1 milyon basamagı normal degişkenlerle hesaplayamazsın, kendi degişkenini yaratıp, hesaplama için de kendi rutinlerini yazmalısın.
Delphi de kullanılan (diger diller için de geçerlidir) degişkenler işlemcinin registerlarına uyan degişkenlerdir. 32 bit altında programlıyorsan, 32 bitlik işlemcinin 32 bitlik registerlarini kullanırsın. İşlemcide floating point için de özel degişkenler vardır, bunları da extended, double gibi degişkenlerle kullanırsın.
Bunun dışında işlem yapacaksan, degişken türü yaratmalısın, bu degişkenin depolanmasını, hesabını, gösterimini herşeyi kendin kodlamalısın. Delphi de operator loading işlemi yapılabiliyor, ama bildigim kadarıyla bu işlemler c++ daki kadar rahat olmuyor. Type ile özel degişkenler tanımlayıp, bunlar üzerinde yapacagın işlemlerin operatorlerini overload edebilirsin.
Nette aşagıdaki sayfayı buldum, bu sayfadan operator overloadingi inceleyebilirsin.
http://www.diyezon.com/index.php/2007/0 ... erloading/
Aşagıdaki gibi bir sınıf yaratıp, hesaplamalar yapabilirsin.
Kod: Tümünü seç
type
Tcokbuyuksayi = array [0..65535] of integer;
THesap = class
buyuksayi : Tcokbuyuksayi;
class operator add(sayi1, sayi2 : TCokbuyuksayi);
....
end;
Epey ugraştırır, ama ögrenmen konusunda da faydası olur. Bu işlerle çok ugraşacaksan, c++ bu işleri daha güzel yapar. Toplama, çarpma vs yaparken eldeleri, taşmaları taşımayı unutma. Yoksa hesapların yanlış sonuç verir.