ورود

View Full Version : تعریف اعداد بزرگ و نمایش انها در دلفی



yaser.barati
یک شنبه 22 اسفند 1395, 03:00 صبح
با سلام و خسته نباشید.من میخوام وقتی درون edtBox عددی بزرگ وارد میکنم اون عدد رو در grid به من نشون بده مثلا اگر عدد 1 با 20 تا صفر رو زدم نشون بده 1E20
نمیدونم مقادیرم رو از چه نوعی تعریف کنم لطفا راهنمایی کنید با تشکر

persia_hrn
یک شنبه 22 اسفند 1395, 14:42 عصر
سلام
برای نمایش اعداد این دستور :

var CalcValue: Extended;

CalcValue:=1000000000000000000;

Label1.Caption:=Format('%0.3f', [CalcValue])

بهترین چیزی که من برای محاسبات اعداد بزرگ سراغ دارم و باهاشم خوب میشه کار کرد اینه :
http://www.delphiforfun.org/Programs/Library/bigfloat.htm



(http://www.delphiforfun.org/Programs/Library/bigfloat.htm)

yaser.barati
دوشنبه 23 اسفند 1395, 03:56 صبح
سلام
برای نمایش اعداد این دستور :

var CalcValue: Extended;

CalcValue:=1000000000000000000;

Label1.Caption:=Format('%0.3f', [CalcValue])

بهترین چیزی که من برای محاسبات اعداد بزرگ سراغ دارم و باهاشم خوب میشه کار کرد اینه :
http://www.delphiforfun.org/Programs/Library/bigfloat.htm



(http://www.delphiforfun.org/Programs/Library/bigfloat.htm)


ممنونم از ینکه جواب دادی ولی میشه یه توضیحی درموردش بدی من نتونستم تو برنامم پیادش کنم

persia_hrn
پنج شنبه 26 اسفند 1395, 15:12 عصر
شما تونستین این 2 تا فایل رو دانلود کنید ؟
ubigFloatV3.dcu
UBigIntsV3.dcu

اگر موفق به دانلودش شدین هر دوتا فایل رو کپی کنید توی پوشه Lib نرم افزار دلفی
بعد از این کار شما میتونید به شکل زیر ازش استفاده کنی :
Uses UBigFloatV3;

و بعد به صورت زیر ازش استفاده می کنید :

1 - جهت نمایش اعداد :

procedure TForm1.Button1Click(Sender: TObject);
var
A1: TBigFloat;
begin
A1:=TBigFloat.Create;
A1.SetSigDigits(100); {تعداد ارقام}
A1.Assign('999999999999999999999999999999');
Label1.Caption:=A1.ConvertToString(normal);
A1.Free;
end;

2 - جهت محاسبه :

procedure TForm1.Button1Click(Sender: TObject);
var
A1, B1, P: TBigFloat;
begin
A1:=TBigFloat.Create;
A1.SetSigDigits(100);
A1.Assign('999999999999999999999999999999');
B1:=TBigFloat.Create;
B1.SetSigDigits(100);
B1.Assign('999999999999999999999999999999');
A1.Add(B1); {عملیات جمع}
Label2.Caption:=A1.ConvertToString(normal);
A1.Free;
B1.Free;
end;