久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

新聞中心

EEPW首頁 > 測試測量 > 設計應用 > 學習LabVIEW(五)——反饋節點與迭代運算

學習LabVIEW(五)——反饋節點與迭代運算

作者: 時間:2017-01-09 來源:網絡 收藏
有時候我們需要執行如下的迭代運算
x = init();
for i in range(30):
x = f(x)
print x

我想了想,這種運算在G語言中大概可以利用反饋節點來實現。反饋節點的基本用法很簡單,把一個運算節點的輸出端通過反饋節點連到輸入端即可實現一個基本的迭代過程。
迭代運算是一種非常常見的運算。比如之前在《學習LabVIEW(四)——MATLAB script節點》中提到的look and say序列,就可以利用迭代的方式,由序列的第一個元素出發,經過n次迭代,得到第n 1個元素的取值。著名的Python Challenge的Level10的通關口令正是look and say序列第31個元素所包含的數字的個數。之前我們是用Python來做的,見《xialulee大戰pythonchallenge——level10》?,F在有了feedback節點,我們也可以在LabVIEW中完成計算了。

xialulee大戰pythonchallenge——level10(續):用LabVIEW Matlab通關
這里使用迭代的方式計算look and say的元素,每一次迭代所使用的算法和之前一樣,是《快使用sort-diff-find組合技》中的sort-diff-find。具體的MATLAB代碼如下所示:


為了計算第31個元素,需要進行30次循環,使用LabVIEW提供的循環結構即可。而為了實現迭代計算,將MATLAB script的輸出端口通過反饋節點連接至輸入端口,并將反饋節點初始化為為長度為1,元素值為1的數組,即可進行計算。待循環結束后,計算最終數組的長度,并將長度輸出到界面上的一個數值顯示控件即可。完整程序如下:


程序的運行結果為:


正是我們需要的結果。


評論


技術專區

關閉