求二十四点VB源码注释.

来源:百度知道 编辑:UC知道 时间:2024/06/03 08:04:02
Option Explicit

Const PRECISION = 0.000001
Const COUNT_OF_NUMBER = 4
Const NUMBER_TO_BE_CAL = 24
Dim number(COUNT_OF_NUMBER) As Double
Dim expression(COUNT_OF_NUMBER) As String

Function Search(n As Integer) As Boolean
If n = 1 Then
If Abs(number(0) - NUMBER_TO_BE_CAL) < PRECISION Then
Label1.Caption = expression(0)
Search = True
Exit Function
Else
Search = False
Exit Function
End If
End If

Dim i As Integer, j As Integer
For i = 0 To n - 1
For j = i + 1 To n - 1
Dim a As Double, b As Double
Dim expa As String, expb As String

a = number(i)
b = number(j)
number(j) = number(n - 1)

expa = expression(i)
expb = expression(j)
expression(j) = expression(n - 1)

expression(i) = "(" + expa + "+" + expb + ")"
number(i) = a +

Private Sub Command1_Click()
Dim i As Integer
For i = 0 To COUNT_OF_NUMBER - 1
number(i) = Text1(i).Text
expression(i) = Text1(i).Text
Next i
If Search(COUNT_OF_NUMBER) Then
Label2.Caption = "计算成功!"
Else
Label2.Caption = "计算失败!"
Label1.Caption = ""
End If
End Sub

Private Sub Text1_GotFocus(Index As Integer)
Text1(Index).SelStart = 0
Text1(Index).SelLength = Len(Text1(Index))
End Sub