VB设计两个机器数做运算!在线等!高分!

text1和text2分别输入两个机器数(二进制,首位为符号位,0代表正,1代表负)还有一个option,四个选项为加减乘除,要实现command1.click,在lab... text1和text2分别输入两个机器数(二进制,首位为符号位,0代表正,1代表负) 还有一个option,四个选项为加减乘除,要实现command1.click,在label1中显示运算结果。。。。急急急,在线等!!!
re:chenxfsoft
你这样是把二进制数当做十进制数运算了。。。
展开
 我来答
_fmlyht
2010-01-06 · TA获得超过2359个赞
知道大有可为答主
回答量:2398
采纳率:0%
帮助的人:1818万
展开全部
Private sub text1_KeyPress(...)
if asc = '0' or asc = '1' then
text1.text=text1.text+asc
end if
end sub

Private sub command1_click()
dim OPD1,OPD2,R AS LONG
OPD1=STR2BIN(text1.text)
OPD2=STR2BIN(text2.text)
select case true
case option(1).value
R=OPD1+OPD2
case option(2).value
R=OPD1-OPD2
case option(3).value
R=OPD1*OPD2
case option(4).value
if OPD2 = 0 then
msgbox "出错!"
else
R=OPD1/OPD2
end if
case else
'
end select
label1.caption = Str(R)
end sub

PUBLIC FUNCTION STR2BIN(ByVal S as String) AS LONG
dim Num as long
dim i,L as long

S=Trim(S)
L=Len(S)-1

Num=0
For i = 1 to L step 1
Num=Num+Val(Mid(S,i,1))*2^(L-i)
Next i
if left(S)='1' then
Num=2^L-Num
end if
STR2BIN=Num
END FUNCTION
chenxfsoft
2010-01-06 · TA获得超过1380个赞
知道大有可为答主
回答量:2418
采纳率:0%
帮助的人:1817万
展开全部
dim a as double
dim b as double
dim c as double

a=val(text1.text)
b=val(text2.text)

select case true
case option1.value
c=a+b
case option2.value
c=a-b
case option3.value
c=a*b
case else
if b = 0 then
label1.caption = "被0除出错!"
else
c=a/b
endif
end select
label1.caption = c
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式