T-Agent
سه شنبه 17 فروردین 1389, 13:17 عصر
سلام
من مشکلی با توان علمی منفی تر از 15 دارم
کامپایلر " بورلند توربو سی ++" نسخه 4.5
متن برنامه؛
int main()
{
double molkool_w, ; //double for very little
molkool_w=3.0*(1.0e-15); //baraye inke 10^-15 be bala ro mostaghim ghabool nadare
molkool_w=molkool_w*(1.0e-8) ; //3.0^-15 & ((3.0 ^-15)^-8)= 3.0e-23
...
............................................
printf("\n molkool dar liter AB: %5.5e",molkool_w) ; //for print
return 0;
}
اگر به صورت
molkool_w=3.0*(1.0e-23); //mostaghim 10^-23
نوشته شه کمپایلر خطای invalid float point " می داد.
به روش بالا مشکل حل شد ولی با توجه به این که نوع داده ای بزرگتر از نیاز رو برای داده ثابت در نظر گرفتم خطای پیش امده قابل درک نبود!!
----- کسی می تونه کد رو بهینه کنه یا مشکل رو توضیح بده
ممنون
{پروژه کتاب "برنامه نویسی به زبان سی" "ج. نژاد قمی" فصل2 تمرین شماره 11 هستش}
( کد رو درهم نوشتم اما جواب نهایی درست هستش)
(فک کنم جای درستی پست داده باشم اگه نه راهنمایی یا منتقل کنین)
من مشکلی با توان علمی منفی تر از 15 دارم
کامپایلر " بورلند توربو سی ++" نسخه 4.5
متن برنامه؛
int main()
{
double molkool_w, ; //double for very little
molkool_w=3.0*(1.0e-15); //baraye inke 10^-15 be bala ro mostaghim ghabool nadare
molkool_w=molkool_w*(1.0e-8) ; //3.0^-15 & ((3.0 ^-15)^-8)= 3.0e-23
...
............................................
printf("\n molkool dar liter AB: %5.5e",molkool_w) ; //for print
return 0;
}
اگر به صورت
molkool_w=3.0*(1.0e-23); //mostaghim 10^-23
نوشته شه کمپایلر خطای invalid float point " می داد.
به روش بالا مشکل حل شد ولی با توجه به این که نوع داده ای بزرگتر از نیاز رو برای داده ثابت در نظر گرفتم خطای پیش امده قابل درک نبود!!
----- کسی می تونه کد رو بهینه کنه یا مشکل رو توضیح بده
ممنون
{پروژه کتاب "برنامه نویسی به زبان سی" "ج. نژاد قمی" فصل2 تمرین شماره 11 هستش}
( کد رو درهم نوشتم اما جواب نهایی درست هستش)
(فک کنم جای درستی پست داده باشم اگه نه راهنمایی یا منتقل کنین)