西門子300遍歷db的方法
鄭志武
發(fā)布于2013-01-18 00:24
387
0
標(biāo)簽:
一個(gè)db塊,里面有36個(gè)int型變量,每個(gè)變量都被打亂順序的賦予1-36的數(shù)值,沒有重復(fù)。我要做的是把db中的每個(gè)變量取出來(lái)和1比較,如果相同,那么輸出動(dòng)作然后跳出循環(huán),如果不同,則比較下一個(gè)變量是否值為1,以此類推,那么多就需要比較36次。
第二遍則是把db中的36個(gè)變量分別和數(shù)字2比較,如果等于2,則跳出循環(huán),如果不是2,則比較第2個(gè)變量,以此類推。多就需要比較36次。
后一遍是找出db中值為36的那個(gè)變量。
綜上,比較的次數(shù)在36*36以內(nèi)。/p>
佳答案
你比較等于2~等于36的結(jié)果怎么做呢?也是輸出一個(gè)動(dòng)作?還是輸出同一個(gè)動(dòng)作?那么你這個(gè)程序的意義是什么呢?用指針加循環(huán),一個(gè)掃描周期就解決了,那么你能看出來(lái)什么呢?把你的這個(gè)比較的意義說(shuō)清楚再說(shuō)怎么做程序吧!
tar1#temp_ar1
tar2#temp_ar2
lp##db_no
lar1
lw[ar1,p#0.0]
t#db_id
opndb[#db_id]
////////////////////////////////
l36
_0a1:t#jishu
lar1p#0.0
tar1#ar1data1
l1
t#cycle_count
_0a2:l#jishu
ldbw[#ar1data1]
==i
jcend
lar1#ar1data1
+ar1p#2.0
tar1#ar1data1
l1
l#cycle_count
+i
t#cycle_count
l36
>i
jc_0a3
loop_0a2
_0a3:l#jishu
loop_0a1
juend1
///////////////////////////
end:s#out1
end1:nop0
//////////////////////////
set
save
beu
先比較等36然后比較等于35,然后比較等于34..........后比較等于1,只要比較36*36次有相等的就輸出一個(gè)bool量。不過(guò)你的輸入輸入方式肯定造成我的這個(gè)程序輸出為1,不知道你要這樣的程序干什么。