private function f(byval dd as string,byval cc As String) as integer
Dim i As Integer, j As Integer
For i = 1 To Len(dd)
For j = 1 To Len(cc)
If Mid(cc, j, 1) = Mid(dd, i, 1) Then f = f + 1
Next j
Next i
end function
private sub command1_click()
g= f("005","567") >1
end sub
这段代码是比较两个数当中数字的重复个数
如何改成这两个数,每个数每位相加,然后比较重复个数大于1的
如005,每位相加得到0+0=0,0+5=5,0+5=5,可以看作第一组
567,每位相加得到5+6=11,6+7=13,5+7=12可以看作第二组
然后比较这两组数字,当第一组的,0,0,5和第二组的11,13,12任意重复个数大于1,也就是重复2的和重复3的,也就是g=f("第一组","第二组")>1
但是和上面不同的是如MsgBox f("005", "067")现在的代码结果为2,因为在一组里有2个0和第二组的0重复,所以是2,这个不符合我要改的,像这样的在新代码中只能是认为重复1个,或MsgBox f("089", "007")或MsgBox f("000", "067"),在新代码中都认定为重复1,像MsgBox f("009", "007")或MsgBox f("509", "057"),这样才认为是重复2,也就是每一组至少有两个数字和另一组的至少两个数字相同这样才可以.
还要这样分开写的通用的,该怎么写
|