VB设计三角形面积计算程序
已知三角形的三边边长,计算三角形的面积(用VB设计程序)。
vb开始按钮代码程序分析:
分析:具体步骤如下。
(1)先分析三条边长是不是能构成三角形;
(2)若三边边长违反三角形成立规则,则不是三角形;
(3)若三边边长符合三角形成立规则,则利用海伦公式求算三角形面积
据此,给出计算机求算三角形面积的算法步骤如下:
(1)开始。
(2)获得三角形的三条边长a、b和c。
(3)判断此三边边长能否构成三角形。若不能,转到(5)
(4)若能计算三角形面积。
(5)结束。
界面设计:
利用VB提供的很多控件设计画出右图,其过程如下:
(1)先创建一个窗体(Form),标题为
“三角形面积计算”。
(2)在窗体上指定位置放若干标签
(Label),标题分别为“三角形面
积计算”、“边长:”、“a“、”b“、”
c“、”面积“,用作说明和提示。
(3)在标题“a“、”b“、”c“、“面积”的标签后面各放一个文本框(TextBox)用作输入边长和输出结果(面积)。
(4)在窗体上指定的位置放3个命令按钮(CommandButton),标题分别为“清空”、“计算面积”、“退出”。当在运行过程中鼠标单击相应的命令按钮时程序会执行相应的功能。
代码设计:
界面设计好了之后,按照下面图所示为各个控件命名,分析控件的作用:
(1)标签是用来表示说明或提示作用,代
码设计中不会用到它们,所以没有重
新命名。
(2)文本框t1、t2和t3是用来输入三边
边长的,文本框tarea是用来输出三
角形面积计算的结果。
(3)命令按钮clear、root和exit在程序中运行时被鼠标点击,程序将执行一段代码、完成一个独立功能,所以这些控件需要每个设计一段代码。
基于以上分析,必须给每个命令按钮设计完成相应功能的一段程序代码。具体设计如下:(1)按钮exit的程序代码:
Private Sub exit_Click()
End
End Sub
(2)按钮clear的程序代码:
Private Sub clear_Click()
t1.Text = ""
t2.Text = ""
t3.Text = ""
tarea.Text = ""
t1.SetFocus
End Sub
(3)按钮root的程序代码:
Private Sub root_Click()
Dim a!, b!, c!, m!, s!
a = Val(t1.Text)
b = Val(t2.Text)
c = Val(t3.Text)
If (a > 0 And b > 0 And c > 0 And a + b > c And a + c > b And b + c > a) Then        m = (a + b + c) / 2#
s = Sqr(m * (m - a) * (m - b) * (m - c))
tarea.Text = s
Else
MsgBox ("这不是三角形")
End If
End Sub
程序代码分析:
现在有了上述程序代码,为了明确代码的执行过程,分析如下:
(一)程序中代码名称的分析:
(1)代码中的Sub取自英文单词Subroutine(子程序、过程)的前3个字母每段代码前的Sub和最后的End Sub构成的一个过程的定义格式(固定格式):Sub后面的exit_Click(如第一段代码)为过程代码,其中exit_Click就称之为对应命令按钮exit的单击click的事件过程,即当用鼠标单击命令按钮exit时,程序会自动调用执行事件过程exit_Click;这一段代码,过程名称exit_Click后面的一对小括号“()”
是定义过程时必须有的Sub前面的Private(似有的)说明过程exit_Click的作用范围,与Public对应。
(2)代码t1.T ext中的t1是文本框的名称,称之为文本框对象,Text是文本框的一个属性,该属性就表
示文本框中输入或显示的内容。用文本框对象名称去访问它的属性的语法格式就是t1.T ext,既可以取出文本框属性的值,也可以给文本框属性赋值。
(3)代码t1.SetFocus中的SetFocus是方法(名称),即对应一段代码,是VB系统提供的,其功能是让文本框t1获得焦点。
(4)代码中每行后面的单引号“‘”后的内容为注释,对程序其说明作用,编译程序对原程序进行编译时不予处理注释部分。
(二)程序代码的注释说明分析:
(1)按钮exit的程序代码:
*******************************************************************************
* 过程名称:exit_Click()                                                  * * * * 功能:终止程序的运行,关闭程序* * * *******************************************************************************
Private Sub exit_Click()        ‘过程exit_Click定义开始
End                        ‘终止该程序的执行
End Sub                        ‘过程exit_Click定义结束
(2)按钮clear的程序代码:
*******************************************************************************
* 过程名称:clear_Click()                                                  * * * * 功能:清空文本框t1、t2、t3和tarea并把焦点放在文本框t1中* * * *******************************************************************************
Private Sub clear_Click()      ‘过程clear_Click定义开始
t1.Text = ""                ‘清空文本框t1
t2.Text = ""                ‘清空文本框t2
t3.Text = ""                ‘清空文本框t3
tarea.Text = ""            ‘清空文本框tarea
t1.SetFocus                ‘让文本框t1获得输入焦点
End Sub                        ‘过程clear_Click定义结束
(3)按钮root的程序代码:
*******************************************************************************
* 过程名称:root_Click()                                                    * * * * 功能:以输入的3个数为三角形的三边边长,计算出三角形的面积并输出结果* * * *******************************************************************************
Private Sub root_Click()        ‘过程root_Click定义开始
Dim a!, b!, c!, m!, s!      ‘定义变量a,b,c,arae为单精度类型
a = Val(t1.Text)            ‘把t1中的值取出来转换为数值赋给变量a
b = Val(t2.Text)            ‘把t2中的值取出来转换为数值赋给变量b
c = Val(t3.Text)            ‘把t3中的值取出来转换为数值赋给变量c
If (a > 0 And b > 0 And c > 0 And a + b > c And a + c > b And b + c > a) Then
‘判断所给的值是否符合构成三角形的条件。若是,则