PDA

View Full Version : سوال: نمایش کامل double



amir4015
شنبه 09 اسفند 1393, 00:00 صبح
سلام دوستان
من یک متغیر double دارم که مقدار زیر رو بهش دادم
double qwq=53452352353532523452345234523452352354.0;
اما به صورت زیر نمایشش می ده
5.34523523535325E+37
که این کار باعث می شه در محاسبات بعدی خطا بده
(من در برنامم لازم که عبارت رو به صورت استرینگ ذخیره کنم بعد دوباره ازش استفاده کنم)
از این روش هم استفاده کردم
MessageBox.Show("" +qwq.ToString("####"));
که این جواب رو می ده
53452352353532500000000000000000000000

حالا نمی دونم باید چکار کرد.

SabaSabouhi
شنبه 09 اسفند 1393, 08:23 صبح
سلام دوستان
من یک متغیر double دارم که مقدار زیر رو بهش دادم
double qwq=53452352353532523452345234523452352354.0;
اما به صورت زیر نمایشش می ده
5.34523523535325E+37
که این کار باعث می شه در محاسبات بعدی خطا بده
(من در برنامم لازم که عبارت رو به صورت استرینگ ذخیره کنم بعد دوباره ازش استفاده کنم)
از این روش هم استفاده کردم
MessageBox.Show("" +qwq.ToString("####"));
که این جواب رو می ده
53452352353532500000000000000000000000

حالا نمی دونم باید چکار کرد.

سلام
بجای double از decimal استفاده کن، حدود 28 عدد رو می‌تونه نگهداری کنه.

صبا صبوحی

amir4015
شنبه 09 اسفند 1393, 12:01 عصر
من اعدادم حدود دویستاست که double فقط این اعداد رو نگه می داره اعداد من اعشار نداره

plus
شنبه 09 اسفند 1393, 18:09 عصر
double که این تعداد عدد رو نگه میداره اونها رو Round میکنه وگرنه از نظر حافظه از decimal کوچکتر هست. بنابراین شما نمی‌تونی با double یا decimal عدد 200 رقمی رو به صورت Round نشده و دقیق نگه داری. شما میتونی ازLibrary های مربوط به این کار استفاده کنی. برای مثال BigInteger (http://www.codeproject.com/Articles/2728/C-BigInteger-Class) رو ببین البته نمی‌دونم ظرفیت 200 رقم رو داره یا...
البته اگه به محاسبات احتیاج نداری به صورت رشته بگیر از اول...!