vb的编程问题,偶较笨不要骂我

编写程序判断三角形是否构成三角形(画了三个文本框和4个标签,及一个命令按扭)大概如下,我不知道哪错了,高人指点!!!PrivateSubCommand1_Click()D... 编写程序判断三角形是否构成三角形
(画了三个文本框和4个标签,及一个命令按扭)大概如下,我不知道哪错了,高人指点!!!

Private Sub Command1_Click()
Dim a As Integer
Dim b As Integer
Dim c As Integer

a = Val(Text1.Text)
b = Val(text2.Text)
c = Val(text3.Text)

a = InputBox("")
b = InputBox("")
c = InputBox("")
Do While a + b > c And a + c > b And b + c > a

Label4.Caption = "是三角形"

Loop
Label4.Caption = "不是三角形"

End Sub
主要是DO WHILE ……LOOP的中间老觉得不太对,是不是少了点什么??? (我按你们说的试了一下,但都是编译错误,未找到方法或数据成员。)
这个是原题目:
给定三角形得3条边长,计算三角形的面积。编写程序,首先判断给出的3条边是否够成三角形,如果可以构成,则计算并输出该三角形的面积,否则要求重新输入。当输入-1时结束程序。
展开
 我来答
百度网友4c3f770
2009-03-18 · TA获得超过540个赞
知道小有建树答主
回答量:315
采纳率:100%
帮助的人:393万
展开全部
如果要实现单击一次按钮判断是否构成三角形,只要这样就行了
Private Sub Command1_Click()
Dim a As Integer
Dim b As Integer
Dim c As Integer

a = Val(Text1.Text)
b = Val(text2.Text)
c = Val(text3.Text)

if a + b > c And a + c > b And b + c > a
Label4.Caption = "是三角形"
else
Label4.Caption = "不是三角形"
endif

End Sub

如果想做到不停地检测输入的数是不是三角形?
其实用Timer控件比较简单
在窗体上放一个Timer控件,然后双击该控件,修改其Timer1_Timer事件
然后输入下面代码
Dim a As Integer
Dim b As Integer
Dim c As Integer

a = Val(Text1.Text)
b = Val(text2.Text)
c = Val(text3.Text)

if a + b > c And a + c > b And b + c > a
Label4.Caption = "是三角形"
else
Label4.Caption = "不是三角形"
end if
同时把timer1的Interval属性改为1就可以了

如果要用点击一个按钮后不停检测,而不用计时器控件,那把代码改成如下试试。

Private Sub Command1_Click()
Dim a As Integer
Dim b As Integer
Dim c As Integer

a = Val(Text1.Text)
b = Val(text2.Text)
c = Val(text3.Text)

Do While a + b > c And a + c > b And b + c > a
a = Val(Text1.Text)
b = Val(text2.Text)
c = Val(text3.Text)
Label4.Caption = "是三角形"
DoEvents '系统处理其他事件,避免死循环后无响应

Loop
Label4.Caption = "不是三角形"

不过这样有个缺点,就是一旦输入的数据不是三角形了,就退出循环了而不再继续判断。

其实楼主要说明一下你要实现的功能,然后我们好解决啊。
bkzanghaiqing
2009-03-18 · 超过19用户采纳过TA的回答
知道答主
回答量:71
采纳率:0%
帮助的人:58.2万
展开全部
Private Sub Command1_Click()
Dim a As Integer
Dim b As Integer
Dim c As Integer

a = Val(Text1.Text)
b = Val(text2.Text)
c = Val(text3.Text)

Do While a + b > c And a + c > b And b + c > a

Label4.Caption = "是三角形"

Loop
Label4.Caption = "不是三角形"

z这样试试!如果行的话,输入数字的时候只能输入整型数字,输入其他的会出现数据类型错误!(这个地方可以进行强制类型转换或异常处理!)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhaowchang
2009-03-18 · 超过12用户采纳过TA的回答
知道答主
回答量:76
采纳率:0%
帮助的人:22.7万
展开全部
如果条件满足没有退出,是死循环
Private Sub Command1_Click()
Dim a As Integer
Dim b As Integer
Dim c As Integer

a = Val(Text1.Text)
b = Val(text2.Text)
c = Val(text3.Text)

a = InputBox("")
b = InputBox("")
c = InputBox("")
if a + b > c And a + c > b And b + c > a
Label4.Caption = "是三角形"
else
Label4.Caption = "不是三角形"
endif

End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式