【使用函数求余弦COS函数的近似值】2022-11-27

缘由pta习题,请问哪里有问题啊,和输出样例差了一点但我看不出错误了-编程语言-CSDN问答

double 余弦近似值funcos(double e, double x)
{//缘由https://ask.csdn.net/questions/7845862;0.01 -3.14 =-0.999899
	bool p = 0, f = 0;
	int m = 0, mm = 0, jc = 0;
	double wcos = 0, cf = 0, ee = 1;
	ys:if (ee>e)
	{
	   if (m == 0)
		   wcos = cf = jc = 1;
	   else
	   {
		   mm = m; cf = jc = 1;
		   fj:if (mm){ cf *= x; jc *= mm; --mm; goto fj; }
		   ee = cf / jc;
		   wcos += (p ? ee : -ee);
		   p = !p;
	   }
	   m += 2;
	   goto ys;
	}
   return wcos;
}




	std::cout << std::fixed << std::setprecision(6) << 余弦近似值funcos(0.01, -3.14) << "\n";

   //常数项是零次方项。任何除0以外的数的0次方都是1 。如3的0次方是1,-1的0次方也是1,0的0次方没有意义。注:-1⁰=-1,但是(-1)⁰=1。前者是用0减1求零次方,后者是对整个-1求零次方。
   //0的阶乘就是1,这是人为的规定。但是这个人为规定不是随意规定的。是根据正整数的阶乘运算关系扩展而来的。因为本来n(n是正整数)的阶乘就是从1×2×……×n这n个数相乘。但是这个定义对0就无效了。那么人们只能根据不同数的阶乘关系来扩展定义。从正整数的阶乘能看出来,(n + 1)!÷n! = n + 1,所以n! = (n + 1)!÷(n + 1)。那么把这个式子扩展到0上,就得到0! = 1!÷1 = 1÷1 = 1。就是这样扩展定义的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值