wcb516358
級別: 略有小成
|
假如:我輸入1個數(shù)值 25,我需要從已知的1、2、2、5、10、20數(shù)組,自動找出5和20進行相加,請問這PLC程序如何編寫 [ 此帖被wcb516358在2020-07-20 18:15重新編輯 ] |
---|---|
|
tingfenghu
級別: 工控俠客
|
用for來循環(huán)計算。 |
|
---|---|---|
|
13771165220
級別: 家園常客
|
梯形圖可以循環(huán)變址相加,然后判斷,如果和等于你輸入的數(shù)就保存下來,相當于求排列組合。 |
---|---|
|
13771165220
級別: 家園常客
|
Z0 為第一個數(shù)地址,比如Z0等于0找出的是第一個數(shù) Z1為第二個數(shù)地址。 最后求出Z0=3 Z1=5 就是說數(shù)組中第四個數(shù)和第六個數(shù)。因為是從0開始算第一個數(shù)。 |
---|---|
本帖最近評分記錄: |
suegu2
級別: 家園常客
|
把 MOV K0 Z1這步改成 ADD Z0 K1 Z1能節(jié)省點時間 |
---|---|
|
13771165220
級別: 家園常客
|
嗯,完美。 |
---|---|
|
wcb516358
級別: 略有小成
|
目前這個問題我已經(jīng)想到1個方法解決,我在這拋磚引玉,期待有更多同行的思路。 方法1:用減法的方式,按數(shù)值從大往小開始做減法運算。25-20>0,則表示有20,有效;(25-20)-10<0,則表示沒有10,無效;(25-20)-5=0,則表示有5,有效;如果25-20-5>0則繼續(xù)減去下1個數(shù)字,如果等于0,則減法運算結(jié)束。 [ 此帖被wcb516358在2020-07-24 11:19重新編輯 ] |
---|---|
|