ورود

View Full Version : مشکل در محاسبات اعداد اعشاری



samiasoft
دوشنبه 11 خرداد 1394, 18:50 عصر
سلام دوستان

برای گرد کردن اعداد اعشاری تا 2 رقم من از کد زیر استفاده میکردم

Text1.Text = Replace(Text1.Text, "/", ".")
X = InStr(1, Text1.Text, ".")
If X <> 0 Then Text2.Text = Left$(Text1.Text, X + 2)



مشکل بزرگی که در این حالت من بعد انجام کلی کد نویسی متوجه شدم این بود که برای مثال در تقسیم عدد 325/5 بر 5455/86 جواب بصورت 5/966E-02 می آید.

همانطور که میبنید با دستوربالایی بدین صورت گرد میشود : 5.96 در حالی که جواب درست باید بصورت 0.05 نمایش داده بشه.

به نظر شما برای حل این مشکل چه کاری میشه کرد؟ که مثلا در محاسبات همین E- یا E+ حاصل نشه و بطور معمولی اعداد نمایش داده بشوند.

یا این که به حالت دیگری عدد را گرد کنیم.

vbhamed
دوشنبه 11 خرداد 1394, 22:51 عصر
سلام
از تابع Format استفاده کنید، نمونه :
Print Format$(325.5/5455.86, "#.################################")

samiasoft
جمعه 15 خرداد 1394, 11:24 صبح
ممنون
من برای حل مشکل از متغیر Currency استفاده کردم که تا 4 رقم اعداد اعشاری رو قبول میکنه.

به نظرتون چطوری یه متغیر سراسری تعریف کنیم مثل همین Currency ؟بطوری که تا 3 رقم اعداد اعشاری رو گرد کنه.

vbhamed
دوشنبه 18 خرداد 1394, 15:12 عصر
سلام
گفتم که با تابع Format می‌تونید هر طوری بخواین تنظیم کنین