PDA

View Full Version : سوال: بروز ارور در هنگام ضرب یک متغیر در یک عدد



mh.tavak
پنج شنبه 26 بهمن 1391, 21:27 عصر
با سلام میدونم من من موضوع بدی انتخاب کردم ولی واقعا نمیدونم چه موضوعی برای این مشکل انتخاب میکردم.
این یه نرم افزار ساده برای تبدیل سانتی متر به مایل هستش که من متغیر را بر حسب decimal تعریف کردم.
اینم کدهای این برنامه


decimal a, b;
if (tabControl1.SelectedIndex == 0)
{
{
a = Convert.ToDecimal(numericUpDown1.Value);
b = a * 0.000006214;
textBox1.Text = Convert.ToString(b);
}



بعدش این ارور را میدهد در قسمت ضرب a * 0.000006214
http://s3.picofile.com/file/7657514301/Untitl11ed_1.jpg

SHD.NET
پنج شنبه 26 بهمن 1391, 21:31 عصر
سلام . منظور ایشون اینه که وقتی میخوان یه عدد رو در 0.000006214 ضرب کنن با اررور مواجه میشن، منم قبلا با این مشکل مواجه شدم، اما راه حلشو نفهمیدم.
برای حل این مشکل باید چیکار کرد ؟؟

Mahmoud.Afrad
پنج شنبه 26 بهمن 1391, 21:47 عصر
راهش اینه که اون عدد ممیز رو به عنوان دسیمال معرفی کنید(یک m جلوش بزارید)
b = a * 0.000006214m;

اگر هم متغیر از نوع double باشه اول به دسیمال تبدیل کنید:

double c = 0.000006214;
b = a * Convert.ToDecimal(c);

docendo
جمعه 27 بهمن 1391, 00:12 صبح
این هم یک راهه

این کدی نوشته اید


textBox1.Text = Convert.ToString(b);


Stringاست و وخروجی شما عدد اعشاری است پس برای عدد اعشاری نباید از double استفاده کرد