小军218 发表于 2012-1-10 19:26:43

请高手帮忙做个杀和值的小工具

请高手帮忙做个杀和值的小工具
我有些三位数字,如123、123、213、456、789、687、952等等数字,我想把和一样数字册除掉。册除和每次不同。所以册除和值必须能调动的。(例:这次我要册除和值6的数字,就把213、123、321数组册除,下次我要册除和值15,就把456数组册除)。
谢谢高手能帮忙。

linguanshou 发表于 2012-1-10 19:41:59

做个和判断,,如果达到要求就删除,,没达到就保留。。

user3000 发表于 2012-1-10 20:03:38

这东西不是高手也能做出来的. 估计你对基本语法还不够熟悉吧.
希望能给你一点启发.
#include <array.au3>
Local $array =
For $i = 0 To 2
        If _CheckNum($array[$i], 6) Then $array[$i] = ''
Next
_ArrayDisplay($array, 'The Result')       

Func _CheckNum($num, $sum)
        If Not StringIsDigit($num) Then Return False
        If StringLen($num) <> 3 Then Return False
        Local $x = StringLeft($num, 1)
        Local $y = StringMid($num, 2, 1)
        Local $z = StringRight($num, 1)
        If $x + $y + $z = $sum Then Return True
EndFunc

afan 发表于 2012-1-10 20:04:44

LZ也是老会员了,怎么帖子全是请别人帮忙做题呢?#include <Array.au3>

Local $Val = 6
Local $str = '123,123,213,456,789,687,952'

Local $sNew = StringRegExpReplace($str, '(?<=\d)\d', '+$0')
Local $aSS = StringSplit($str, ',', 2)
Local $aNew = StringSplit($sNew, ',', 2)
Local $x = 0
For $i = 0 To UBound($aSS) - 1
        If Execute($aNew[$i]) = $Val Then
                _ArrayDelete($aSS, $i - $x)
                $x += 1
        EndIf
Next
_ArrayDisplay($aSS, '')
页: [1]
查看完整版本: 请高手帮忙做个杀和值的小工具