VB编程~找直角三角形~~

来源:百度知道 编辑:UC知道 时间:2024/06/05 21:01:03
要求
用VB编写一个程序,在一个直角三角形中,三条边a,b,c的长度都是整数,输入一条直角边a的长度和斜边c长度不得超过给定的整数值,TEXT输出满足条件的所有直角三角形。

急~~谢谢!
题目补充~~以及按照下面的流程编写~

在1个Rt三角形中,3条边a,b,c的长度都是整数。算法要求:要用户指定a和maxc的数值(a是直角边,c是斜边,长度不能超过maxc),找出满足条件的所有Rt三角形,并输出个数。(假设用户输入合理,不然编程的时候又要多写几行代码了)

1.用户输入直角边a的长度、斜边c的长度最大值maxc↓
2.计数器初始值ct=0↓
3.c=a+1 ↓ (以下涉及循环)
4.c≤maxc? True→6, False→5
5.输出正确解的个数,结束关闭程序
6.b=c-a+1,→7
7.b<c? True→9, False→8
8.c←c+1, →4
9.c^2-b^2=a^2? True→11, False→10
10.b←b+1, →7
11.输出a,b,c↓
12.计数ct←ct+1,→10

例如输出长度不超过100的直角三角形,代码如下:
Private Sub Command1_Click()
Dim a, b, c As Integer
For a = 1 To 100
For b = 1 To 100
For c = 1 To 100
If a ^ 2 + b ^ 2 = c ^ 2 Then
Print "a="; a; "b="; b; "c="; c
End If
Next c
Next b
Next a
End Sub
我这是直接在窗体上打印的,你也可以改一下,让他在输出在text框

Private Function getLen(l As Integer, c As Integer) As String
Dim i As Integer

If l < c Then
i = l ' 让 l 是大数
l = c
c = i
End If

For i = (l - c + 1) To (l + c - 1)
If i * i + c * c = l * l Then
getLen = getLen & i & ","
End If
Next
End Function

不懂

Private Function getLen(l As Integer, c As Integer) As String
Dim i As Integer

If l < c Then
i = l ' 让 l 是大数
l = c
c = i
End If