在C ++中找到数字的立方根
在这里,我们将看到如何获得数字的立方根。假设一个数字为27,则该数字的立方根为3。为解决此问题,我们将定义自己的逻辑,而无需使用某些库函数。我们将使用二进制搜索方法。我们必须按照以下步骤解决此问题。
假设我们有阈值,例如threshold=0.000001
左值开始为0,右值开始为数字
计算中点:=(左+右)/2
如果(number–mid3)的绝对值小于阈值,则返回mid作为答案
如果mid3大于数字,则设置右:=mid
如果mid3小于数字,则向左设置:=mid
示例
#include<iostream>
#include<cmath>
using namespace std;
double cubeRoot(int num) {
double threshold = 0.000001;
double left = 0, right = num;
double mid;
while(left <= right){
mid = (left + right)/2;
if(abs(num - (mid*mid*mid)) < threshold)
return mid;
if((mid*mid*mid) > num)
right = mid;
if((mid*mid*mid) < num)
left = mid;
}
}
int main() {
int n = 3;
cout << "cube root of 3 is: " << cubeRoot(n);
}输出结果
cube root of 3 is: 1.44225
热门推荐
10 八一幼儿祝福语大全简短
11 公司乔迁食堂祝福语简短
12 婚礼结束聚餐祝福语简短
13 儿媳买车妈妈祝福语简短
14 毕业送礼老师祝福语简短
15 同事辞职正常祝福语简短
16 恭贺新婚文案祝福语简短
17 金店立秋祝福语简短英文
18 婆婆高寿祝福语大全简短