首页
学习
活动
专区
工具
TVP
发布

以实例跟我学LabVIEW编程:如何求解自然常数e

实例说明

自然常数e,是数学中最重要的常数之一,是一个无限不循环小数,也是自然对数函数的底数,其值约为2.71828。它的一个经典的数学定义公式是:

使用计算机计算e的值时,可以使用下面的公式近似计算:

那么在LabVIEW中如何编程实现求解这个公式即e的值呢?

编程思路

从上面的近似公式可以看出,e的值与n的阶乘有关,可将上式分解为两个步骤:

1、求解n的阶乘:n!=1×2×3×......×(n-1)×n;

2、对n!求倒数,然后再累加求和

需要说明的是,上式是无穷多项式的累加,编程实现时不可能计算无穷多项的和,因此可限定有限项相加求和,限定的方法,可使用限定某一项的绝对值小于某个数,如小于10的-8次方(0.00000001)。

在LabVIEW中,对于第一步可编写一个子程序求解n的阶乘,然后在第二步中调用这个子程序计算e的值。下面对这两个步骤分别编程实现。

求解n的阶乘

根据阶乘公式,编写下图所示的程序框图,用以求解n的阶乘,将该程序存储为一子程序,该子程序输入一个整数值“n”,输出其阶乘值“n!”。

在上面代码中,使用for循环,循环次数为n,在循环中添加一个移位寄存器用以存储乘积的值,其初始值为1,循环结束后,移位寄存器中的即为n的阶乘值。

计算自然常数e的值

编写主程序来调用上面的子程序,计算自然常数e的值,其框图程序的实现代码如下:

计算过程中,使用while循环,在循环中添加一移位寄存器用以存储累加项的和,其初始值设置为双精度即double类型的0。在循环内部对n的阶乘取倒数,即为求e公式中每一项的值,然后判断该值是否小于1E-8(即10的-8次方),若小于,则退出while循环,否则继续循环。循环结束后移位寄存器中的值即为常数e的值。

上面代码运行后即可得自然常数e的值为2.71828。

总结

通过这个例子可以学习到的知识点包括:

1、while循环的编程

2、移位寄存器的用法

如果你觉得这篇文章对你有用的话,收藏+点赞吧。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190105A19M3A00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券