LabVIEW程式設計例項:如何求解自然常數e

何為常數例子

例項說明

自然常數e,是數學中最重要的常數之一,是一個無限不迴圈小數,也是自然對數函式的底數,其值約為2。71828。它的一個經典的數學定義公式是:

LabVIEW程式設計例項:如何求解自然常數e

使用計算機計算e的值時,可以使用下面的公式近似計算:

LabVIEW程式設計例項:如何求解自然常數e

那麼在LabVIEW中如何程式設計實現求解這個公式即e的值呢?

程式設計思路

從上面的近似公式可以看出,e的值與n的階乘有關,可將上式分解為兩個步驟:

求解n的階乘:n!=1×2×3×……×(n-1)×n;

對n!求倒數,然後再累加求和

需要說明的是,上式是無窮多項式的累加,程式設計實現時不可能計算無窮多項的和,因此可限定有限項相加求和,限定的方法,可使用限定某一項的絕對值小於某個數,如小於10的-8次方(0。00000001)。

在LabVIEW中,對於第一步可編寫一個子程式求解n的階乘,然後在第二步中呼叫這個子程式計算e的值。下面對這兩個步驟分別程式設計實現。

求解n的階乘

根據階乘公式,編寫下圖所示的程式框圖,用以求解n的階乘,將該程式儲存為一子程式,該子程式輸入一個整數值“n”,輸出其階乘值“n!”。

LabVIEW程式設計例項:如何求解自然常數e

在上面程式碼中,使用for迴圈,迴圈次數為n,在迴圈中新增一個移位暫存器用以儲存乘積的值,其初始值為1,迴圈結束後,移位暫存器中的即為n的階乘值。

計算自然常數e的值

編寫主程式來呼叫上面的子程式,計算自然常數e的值,其框圖程式的實現程式碼如下:

LabVIEW程式設計例項:如何求解自然常數e

計算過程中,使用while迴圈,在迴圈中新增一移位暫存器用以儲存累加項的和,其初始值設定為雙精度即double型別的0。在迴圈內部對n的階乘取倒數,即為求e公式中每一項的值,然後判斷該值是否小於1E-8(即10的-8次方),若小於,則退出while迴圈,否則繼續迴圈。迴圈結束後移位暫存器中的值即為常數e的值。

上面程式碼執行後即可得自然常數e的值為2。71828。

總結

透過這個例子可以學習到的知識點包括:

while迴圈的程式設計

移位暫存器的用法

如果你覺得這篇文章對你有用的話,

收藏

+

點贊

吧。