View Full Version : حل مشکل توان بین صفر و یک در c++
king artoor
پنج شنبه 06 دی 1397, 20:18 عصر
سلام دوستان من یه مشکلی که برخوردم اینه که تابع pow نمیتونه پایه ش عدد منفی یا صفر باشه میخواستم ببینم چیکار باید بکنم که بتونم مثلا -2 به توان 0.333 رو حساب کنم؟
borderliner
جمعه 07 دی 1397, 01:14 صبح
این چطوره؟
auto result = std::cbrt(-2);
و هدر <cmath> رو include کن. درواقع ریشه سوم میگیره. Cube Root.
farhad_shiri_ex
جمعه 07 دی 1397, 12:13 عصر
سلام دوستان من یه مشکلی که برخوردم اینه که تابع pow نمیتونه پایه ش عدد منفی یا صفر باشه میخواستم ببینم چیکار باید بکنم که بتونم مثلا -2 به توان 0.333 رو حساب کنم؟
اگر از کامپایلری که از C++11 به بعد را پشتیبانی کنه استفاده کنید! البته که می توانید هم عدد منفی و هم 0 به عنوان پایه در تابع pow قرار بدید!
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
cout<< "pow(-2, 0) = " << std::pow(-2,0) << '\n';
cout<< "pow(-2, -3) = " << std::pow(-2,-3) << '\n';
cout<< "pow(-2, 0.333) = " << std::pow(-2,0.333) << '\n';
return 0;
}
والبته خروجی pow(-2,0.333) این دستور nan هست که خب البته منطقی هم هست!!
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.