探索c++的函数pow()的实现方法·数学与程序设计的结合(绝对原创)

计算t的m次幂的方法:(探索c++的函数pow()的实现方法,数学与程序设计的结合)

欢迎看看另一篇文章《实现log()和exp()函数的方法,并以此计算pow() 》增加了对Taylor展开后的进一步处理。
源程序下载:http://pjy.studio.googlepages.com/powP.cpp
或到我的收藏下载。   
    由于c++刚学完函数一章,而练习需要用pow()这个函数,于是就特发奇想,想自己能否写一个能实现pow()功能的函数,经过一段努力,算有了一些结果。
    众所周知,pow(double t,double m)是c++提供计算x的y次幂的函数,虽然系统提供了这个pow(),但我还是想自己写一个自己的pow()。不过要写出这个pow可能不太容易,因为 指数m要求是double的,即可以是小数,那就不是简单的循环可以做出的。
    刚开始想这个问题时,第一个想法是把y的整数部分和小数部分分离,例如若m=12.34,则把x^12.34转化为(x^12)*(x^34)/ (x^100),这样就把指数为double的情况转化为三个指数为int的情况。而取其整数,最简单的方法可能是int(y)了,而去小数则用m- int(m)即可,然后把小数按例子那样分离。不过这里可能存在两个问题:

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值