gpt4 book ai didi

c++ - 尝试将我的结果扩展为小数点后有 8 位数字

转载 作者:搜寻专家 更新时间:2023-10-30 23:59:41 25 4
gpt4 key购买 nike

我正在尝试将我的程序的结果扩展到小数点后 8 位数字。我浏览了此页面 ( http://www.cplusplus.com/reference/ios/ios_base/precision/ ),但我没有运气改变结果。有什么建议么?感谢您。

#include <iostream>
#include <math.h>

using namespace std;

long double taylorSeriesToCalculateCosine(long double x, int degree);
long factorial( int input );

int main(int argc, const char * argv[])
{
cout << "Cosine of .3: ";
cout << taylorSeriesToCalculateCosine(.3,3) << endl;

return 0;
}

// taylor series to calculate cosine
long double taylorSeriesToCalculateCosine(long double x,int degree){

int i = 0;
long double accumulation = 0;
int cosInputArray[4] = {1,0,-1,0};

while (i < degree) {

int input = cosInputArray[i%4];

accumulation += input*((pow(x, i))/factorial(i));
i++;
}

return accumulation;
}

输出:

Cosine of .3: 0.955

最佳答案

你需要 std::setprecision 来自 <iomanip> header :

cout << setprecision( 8 ) << taylorSeriesToCalculateCosine(.3,3) << endl;

如果您希望结果始终具有一定的宽度,请使用

cout << setfill('0') << left << setw(10) << setprecision(8)
<< taylorSeriesToCalculateCosine(.3,3) << endl;

关于c++ - 尝试将我的结果扩展为小数点后有 8 位数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15442195/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com