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