首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

一个关于二进制 模二加的算法 想要求教,算法详细在内容里

2013-06-25 
一个关于二进制 模2加的算法 想要求教,算法详细在内容里现在我想要在Text1中输入一个数 和100110001 作比

一个关于二进制 模2加的算法 想要求教,算法详细在内容里
现在我想要在Text1中输入一个数 和100110001 作比较。怎么比较呢?就是 输入的数的每一位和100110001每一位做比较。就是第一位和第一位,第二位和第二位,以此类推。如果两个数相同就得0,不同就得1.(异或问题)
然后输出一个数
举个例子
比如1011和1110 做这个算法得到的是0101
做法如下 1011第一位是1,1110第一位是1,1和1相同 得到0
1011第二位是0,1110第二位是1,0和1不同 0
以此类推 最后得到0101
我的代码少一步就是 结合得出的这个4个结果
Dim a As String
Dim b As String
Dim c As Integer
Dim d As Integer
Dim e As Integer
Dim f As String
a = Text1.Text
b = 100110001
c = Len(Text1.Text)
For i = 1 To 9
d = Mid(a, i, 1)
e = Mid(b, i, 1)
If (d = e) Then
f = 0
Else
f = 1


End If
Next i

Text2.Text=f

[解决办法]
本帖最后由 bcrun 于 2013-05-20 10:09:45 编辑

Dim a As String
Dim b As String
Dim c As Integer
Dim d As Integer
Dim e As Integer
Dim f As String
a = Text1.Text
b = "100110001"
c = Len(Text1.Text)
For i = 1 To c
d = Mid(a, i, 1)
e = Mid(b, i, 1)
If (d = e) Then
f = f & "0"
Else
f = f & "1"
End If
Next i
Text2.Text=f

热点排行