PDA

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



zarabela
شنبه 23 اسفند 1393, 19:30 عصر
سلام دوستان
خسته نباشید...من با کد زیر قراره مقدار A و B رو بدست بیارم

double A,B;
A=Nroot((-q/2)+Math.sqrt(d), 3);
B=Nroot((-q/2)-Math.sqrt(d), 3);

تابع Nroot هم اینه :
double Nroot(double num,double root){
root=1/root;
return (Math.pow(num, root));}

ولی با بعضی از مقادیر اولیه عبارت NAN رو به جای نتیجه ظاهر میکنه و باعث میشه برای بقیه محاسبات خطا بده:ناراحت:
چطور میتونم این مشکل رو حل کنم؟
ممنون میشم راهنماییم کنید

zarabela
شنبه 23 اسفند 1393, 22:23 عصر
دوستان ممنون میشم راهنمایی کنید:لبخندساده:
ضروریه

ashkufaraz
شنبه 23 اسفند 1393, 22:45 عصر
خوب خروجی رو بررسی کن اگر nan هست
خطای مناسبش رو تولید کن
اینو نگاه کن
http://stackoverflow.com/questions/5402336/test-for-nan-in-java

zarabela
شنبه 23 اسفند 1393, 23:16 عصر
ببخشید ولی متوجه نشدم:افسرده:
من نمیدونم چرا NAN میزنه آخه؟یعنی جوابش چه مشکلی داره که اینو میزنه؟

zarabela
یک شنبه 24 اسفند 1393, 15:14 عصر
کسی نیست راهنماییم کنه؟:ناراحت:

poorman
سه شنبه 26 اسفند 1393, 04:03 صبح
سلام

جوابتون احتمالا طبق شرایط خاصی بی نهایت در میاد یا اینکه حالت های مبهم برای برنامه پیش میاد

عدد های ثابت بذارید و بررسی کنید ببینید کدوم قسمت داره حالت مبهم ایجاد میکنه

احتمال داره به توان رسوندن اعداد، عدد بزرگی تولید میکنه که دابل جا نمیشه