在幾個星期內,我將加入一個項目(當前)使用LabView進行開發。爲了讓自己在這之前至少有點熟悉,我一直在試用版本的軟件中創建一些簡單的項目。有人質疑我編寫了一個簡單的程序,可以在不使用除法運算符的情況下進行簡單的分割。爲什麼我的LabView while循環似乎執行多次?
我已經成功編寫了程序,但我的主要while
循環似乎運行了太多次。下面是我的程序:
用戶輸入一個被除數和除數,程序會不斷分紅減去除數直到紅利變爲< = 0,此時它應該休息。程序運行成功,但是當循環終止時,分配總是等於x低於0(其中x是除數的任何數字)。在調試應用程序時,我發現這個問題,當最後一次循環比較發生時,除數將等於0並計算爲'false'但是循環內的代碼在循環中斷之前最後一次執行。這是我期望的一個do-while循環,但不是一個簡單的時間。
只是爲了向我自己證明,這不是我所期望的(希望是)我寫的(我認爲是)明顯的邏輯錯誤an equivalent program in python。
我花了很長時間搜索,盯着它,我甚至在紙上做過,但我不明白爲什麼它不會做我期望的。是什麼賦予了?
不是答案,而是關於LabVIEW中變量的評論。如您所注意到的,LabVIEW要求您的思維方式與其他編程語言不同。聲音程序邏輯「按原樣」從其他語言轉移,可以讓你成爲如何在LabVIEW中不編程的可怕例子。變量和序列結構是被初學者濫用的兩個主要構造。只要避免在不需要的地方使用它們,你就會開始思考LabVIEW的方式。 – skof