關於數值運算的問題

請問各位前輩

在labview的元件之中,有沒有能夠將一整串數字進行相加的元件呢?

比方說我輸入1234,然後計算輸出10

我目前的作法是將一串數字拆成單一字元,然後再將全部字元加起來

雖然也是有功能,不過總覺得這樣的做法很麻煩

因為如果輸入的字元超過我取的數量的話,就會出現錯誤了

--------------------------------------------------------------------------

第二個問題,接續上面

如果說加出來的值是個位數的話,能不能在十位數的部分顯示0呢?

比方說輸入123,相加後會顯示9

而我希望他是顯示09

不知道以上這兩點有沒有什麼比較好的做法能夠完成呢?

本來想貼圖上來,可是不知道為什麼貼不了…

問題一:

作法和你雷同
先將輸入值一個一個拆解後,最後再將拆解值的數值作相加 (參考圖的紫色框)
不過你有提到,輸入的字元 > 取的數量時,會出現錯誤
不知道程式上是否哪裡有問題呢??

問題二:

可以將方法一的計算結果後,再將結果的長度作判斷
如果 < 2 ,則將資料前方補零後再作輸出 (參考圖的紅色框)

![](upload://5ns9ifsCcXVx9YEeizACbjBWLGv.jpeg)

elvistu40465.9145717593

[QUOTE=elvistu]

問題一:

作法和你雷同
先將輸入值一個一個拆解後,最後再將拆解值的數值作相加 (參考圖的紫色框)
不過你有提到,輸入的字元 > 取的數量時,會出現錯誤
不知道程式上是否哪裡有問題呢??

問題二:

可以將方法一的計算結果後,再將結果的長度作判斷
如果 < 2 ,則將資料前方補零後再作輸出 (參考圖的紅色框)

[/QUOTE]

第二個問題我的做法跟你一樣,只是我忘記利用case來做應用...

第一題嘛....
小小聲的說,雖然同樣都是拆字來進行計算
我卻是一個一個字來進行重新編碼轉換,所以會受到字數限制
比方說我做了5組來進行計算,當我輸入的值超過時
後面的數字就會變成十位數,甚至是百位數
那樣加出來就不對了

我的程式完全沒有用到迴圈...

現在已經做出來了,非常謝謝您的幫忙

我的方式能達到你想要的嗎?


輸入使用字串的方式, 直接轉換ascii的陣列
減掉字串'0'為首的48, 全部加起來就是你要的

第二個問題, 直接數字做格式化, 你2個問題在下圖解決
![](upload://mXiTvTKhw9FD4lPidWbdE3J4oLM.png)

[QUOTE=orange1108]我的方式能達到你想要的嗎?


輸入使用字串的方式, 直接轉換ascii的陣列
減掉字串'0'為首的48, 全部加起來就是你要的

第二個問題, 直接數字做格式化, 你2個問題在下圖解決
![](upload://mXiTvTKhw9FD4lPidWbdE3J4oLM.png)
[/QUOTE]

這樣子做也可以,謝謝您的幫忙
又多了解一種不一樣的作法