两个二进制数相加并输出二进制结果的VB代码
答案:1 悬赏:50
解决时间 2021-04-07 16:27
- 提问者网友:℡她的他i☆
- 2021-04-07 06:02
两个加数由用户输入
最佳答案
- 二级知识专家网友:白日梦制造商
- 2021-04-07 06:54
Private Sub Command1_Click()
dim X as string,Y as string
x=inputbox("请输入第一个数:")
y=inputbox("请输入第二个数:")
print Jia(x,y)
End Sub
Private Function Jia(ByVal X As String, ByVal Y As String) As String '两个二进制数相加函数
Dim I As Integer, Tem As String, Jin As Integer,m as integer ,n as integer
m=len(X)
n=len(Y)
if m>n then
Y=string(m-n,"0")+Y
elseif m<n then
X=string(n-m,"0")+X
end if
For I = len(X) To 1 Step -1
Select Case (Val(Mid(X, I, 1)) + Val(Mid(Y, I, 1)))
Case 0
If Jin = 0 Then
Jia = "0" + Jia
Else
Jia = "1" + Jia
Jin = 0
End If
Case 1
If Jin = 0 Then
Jia = "1" + Jia
Else
Jia = "0" + Jia
Jin = 1
End If
Case 2
If Jin = 0 Then
Jia = "0" + Jia
Jin = 1
Else
Jia = "1" + Jia
Jin = 1
End If
If I = 1 Then Jia = "1" + Jia
End Select
Next I
End Function
dim X as string,Y as string
x=inputbox("请输入第一个数:")
y=inputbox("请输入第二个数:")
print Jia(x,y)
End Sub
Private Function Jia(ByVal X As String, ByVal Y As String) As String '两个二进制数相加函数
Dim I As Integer, Tem As String, Jin As Integer,m as integer ,n as integer
m=len(X)
n=len(Y)
if m>n then
Y=string(m-n,"0")+Y
elseif m<n then
X=string(n-m,"0")+X
end if
For I = len(X) To 1 Step -1
Select Case (Val(Mid(X, I, 1)) + Val(Mid(Y, I, 1)))
Case 0
If Jin = 0 Then
Jia = "0" + Jia
Else
Jia = "1" + Jia
Jin = 0
End If
Case 1
If Jin = 0 Then
Jia = "1" + Jia
Else
Jia = "0" + Jia
Jin = 1
End If
Case 2
If Jin = 0 Then
Jia = "0" + Jia
Jin = 1
Else
Jia = "1" + Jia
Jin = 1
End If
If I = 1 Then Jia = "1" + Jia
End Select
Next I
End Function
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯
• 手机登qq时,显示手机磁盘不足,清理后重新登 |
• 刺客的套装怎么选啊? |