for loop中斷

各位大大:

   請教一下,我在順序迴圈(sequence structures)中加入一個for loop,當for loop中的結果達成A條件(布林值)時,因為N是可變的,所以此for loop需重新計算(即i=0),且不能跑到下個順序迴圈,只有當for loop完成計數才可以跑到下個順序迴圈,請問各位大大有什麼想法可以提供給我嗎?在for loop外加一個while loop也不可行。

我重新整理一下你說的:你是想在sequence structures中放入一種迴圈

當迴圈內的N到達結束條件時,再進行到下一個sequence structures中是嗎?

如果是的話你可以在sequence structures裡寫一個while迴圈。

如果不是…可能要請你額外描述其他特點。

很多程式語言的FOR-LOOP是用來執行固定次數的LOOP,不固定次數試試用WHILE_LOOP,例如下圖會一直顯示0~4,但是i值遞增,只要在綠色框內加入判斷,再把判斷結果接到WHILE控制STOP接點.

不過這樣的程式長時間執行i可能會overflow,Labview的 i值使用的是I32格式.

當i=2147483647時,再加1,i值就不正常了,如下圖.所以在i=2147483647前要結束while-loop,再重新執行while-loop

YuLuw77740433.4690856481

這個功能從LabVIEW 8.6以後才有,就是在for loop邊緣上按右鍵將Conditional Terminal打勾

以下圖為例如果for loop原先設定執行100次,程式判斷當N執行(0-11)12次後即停止執行跳出迴圈

謝謝各位的意見,昨天我已經改用while loop+移位暫存器的方式改寫好了,太晚看到ancle的用法,這樣昨天我就不用改程式了@@”