VERSION 5.00 Begin VB.Form frmMain     BorderStyle     =   1  'Fixed Single    Caption         =   "  24点"    ClientHeight    =   4020    ClientLeft      =   45    ClientTop       =   330    ClientWidth     =   5325    Icon            =   "Form1.frx":0000    LinkTopic       =   "Form1"    MaxButton       =   0   'False    MinButton       =   0   'False    ScaleHeight     =   4020    ScaleWidth      =   5325    StartUpPosition =   3  '窗口缺省    Begin VB.Timer t        Interval        =   20000       Left            =   4440       Top             =   2310    End    Begin VB.CommandButton cmdExit        Caption         =   "退出"       Height          =   525       Left            =   3330       TabIndex        =   6       Top             =   3030       Width           =   975    End    Begin VB.CommandButton cmdDo        Caption         =   "求解"       Height          =   525       Left            =   2160       TabIndex        =   1       Top             =   3030       Width           =   975    End    Begin VB.CommandButton cmdMake        Caption         =   "出题"       Height          =   525       Left            =   960       TabIndex        =   0       Top             =   3030       Width           =   975    End    Begin VB.Label lresult        AutoSize        =   -1  'True       BeginProperty Font           Name            =   "宋体"          Size            =   15.75          Charset         =   134          Weight          =   400          Underline       =   0   'False          Italic          =   0   'False          Strikethrough   =   0   'False       EndProperty       Height          =   315       Left            =   450       TabIndex        =   7       Top             =   1560       Width           =   165    End    Begin VB.Label lNumberD        AutoSize        =   -1  'True       Caption         =   "0"       BeginProperty Font           Name            =   "宋体"          Size            =   48          Charset         =   134          Weight          =   400          Underline       =   0   'False          Italic          =   0   'False          Strikethrough   =   0   'False       EndProperty       ForeColor       =   &H0000C000&       Height          =   960       Left            =   4200       TabIndex        =   5       Top             =   300       Width           =   480    End    Begin VB.Label lNumberB        AutoSize        =   -1  'True       Caption         =   "0"       BeginProperty Font           Name            =   "宋体"          Size            =   48          Charset         =   134          Weight          =   400          Underline       =   0   'False          Italic          =   0   'False          Strikethrough   =   0   'False       EndProperty       ForeColor       =   &H0080FF80&       Height          =   960       Left            =   1680       TabIndex        =   4       Top             =   300       Width           =   480    End    Begin VB.Label lNumberC        AutoSize        =   -1  'True       Caption         =   "0"       BeginProperty Font           Name            =   "宋体"          Size            =   48          Charset         =   134          Weight          =   400          Underline       =   0   'False          Italic          =   0   'False          Strikethrough   =   0   'False       EndProperty       ForeColor       =   &H0000FF00&       Height          =   960       Left            =   2940       TabIndex        =   3       Top             =   300       Width           =   480    End    Begin VB.Label lNumberA        AutoSize        =   -1  'True       Caption         =   "0"       BeginProperty Font           Name            =   "宋体"          Size            =   48          Charset         =   134          Weight          =   400          Underline       =   0   'False          Italic          =   0   'False          Strikethrough   =   0   'False       EndProperty       ForeColor       =   &H00C0FFC0&       Height          =   960       Left            =   420       TabIndex        =   2       Top             =   300       Width           =   480    End End Attribute VB_Name = "frmMain" Attribute VB_GlobalNameSpace = False Attribute VB_Creatable = False Attribute VB_PredeclaredId = True Attribute VB_Exposed = False Dim NumberA, NumberB, NumberC, NumberD As Single Dim A, B, C, D As Single Dim Jieguo As Single Dim ResultExpression As String Dim i As Integer Dim Num As Boolean 
 Sub Kind(i As Integer) Select Case i   Case 1   A = NumberA: B = NumberB: C = NumberC: D = NumberD   Case 2   A = NumberA: B = NumberB: D = NumberC: C = NumberD   Case 3   A = NumberA: C = NumberB: B = NumberC: D = NumberD   Case 4   A = NumberA: C = NumberB: D = NumberC: B = NumberD   Case 5   A = NumberA: D = NumberB: B = NumberC: C = NumberD   Case 6   A = NumberA: D = NumberB: C = NumberC: B = NumberD      Case 7   B = NumberA: A = NumberB: C = NumberC: D = NumberD   Case 8   B = NumberA: A = NumberB: D = NumberC: C = NumberD   Case 9   B = NumberA: C = NumberB: A = NumberC: D = NumberD   Case 10   B = NumberA: C = NumberB: D = NumberC: A = NumberD   Case 11   B = NumberA: D = NumberB: A = NumberC: C = NumberD   Case 12   B = NumberA: D = NumberB: C = NumberC: A = NumberD      Case 13   C = NumberA: A = NumberB: B = NumberC: D = NumberD   Case 14   C = NumberA: A = NumberB: D = NumberC: B = NumberD   Case 15   C = NumberA: B = NumberB: A = NumberC: D = NumberD   Case 16   C = NumberA: B = NumberB: D = NumberC: A = NumberD   Case 17   C = NumberA: D = NumberB: A = NumberC: B = NumberD   Case 18   C = NumberA: D = NumberB: B = NumberC: A = NumberD      Case 19   D = NumberA: A = NumberB: B = NumberC: C = NumberD   Case 20   D = NumberA: A = NumberB: C = NumberC: B = NumberD   Case 21   D = NumberA: B = NumberB: A = NumberC: C = NumberD   Case 22   D = NumberA: B = NumberB: C = NumberC: A = NumberD   Case 23   D = NumberA: C = NumberB: A = NumberC: B = NumberD   Case 24   D = NumberA: C = NumberB: B = NumberC: A = NumberD End Select    
   End Sub 
Private Sub cmdDo_Click() For j = 1 To 30   Select Case j      Case 1      For i = 1 To 1       Call Kind(i)       Jieguo = A + B + C + D       If Jieguo = 24 Then        ResultExpression = A & "+" & B & "+" & C & "+" & D & "=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 2      For i = 1 To 24       Call Kind(i)       Jieguo = A + B + C - D       If Jieguo = 24 Then        ResultExpression = A & "+" & B & "+" & C & "-" & D & "=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 3      For i = 1 To 24       Call Kind(i)       Jieguo = A * B + C + D       If Jieguo = 24 Then        ResultExpression = A & "*" & B & "+" & C & "+" & D & "=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 4      For i = 1 To 24       Call Kind(i)       Jieguo = A * B + C - D       If Jieguo = 24 Then        ResultExpression = A & "*" & B & "+" & C & "-" & D & "=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 5      For i = 1 To 24       Call Kind(i)       Jieguo = A * B * C + D       If Jieguo = 24 Then        ResultExpression = A & "*" & B & "*" & C & "+" & D & "=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 6      For i = 1 To 24       Call Kind(i)       Jieguo = A * B * C - D       If Jieguo = 24 Then        ResultExpression = A & "*" & B & "*" & C & "-" & D & "=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 7      For i = 1 To 24       Call Kind(i)       Jieguo = A * B * C * D       If Jieguo = 24 Then        ResultExpression = A & "*" & B & "*" & C & "*" & D & "=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 8      For i = 1 To 24       Call Kind(i)       Jieguo = A * B + C * D       If Jieguo = 24 Then        ResultExpression = A & "*" & B & "+" & C & "*" & D & "=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 9      For i = 1 To 24       Call Kind(i)       Jieguo = A * B - C * D       If Jieguo = 24 Then        ResultExpression = A & "*" & B & "-" & C & "*" & D & "=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 10      For i = 1 To 24       Call Kind(i)       Jieguo = A / B + C + D       If Jieguo = 24 Then        ResultExpression = A & "/" & B & "+" & C & "+" & D & "=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 11      For i = 1 To 24       Call Kind(i)       Jieguo = A * B / C + D       If Jieguo = 24 Then        ResultExpression = A & "*" & B & "/" & C & "+" & D & "=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 12      For i = 1 To 24       Call Kind(i)       Jieguo = A * B / C - D       If Jieguo = 24 Then        ResultExpression = A & "*" & B & "/" & C & "-" & D & "=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 13      For i = 1 To 24       Call Kind(i)       Jieguo = A * B * C / D       If Jieguo = 24 Then        ResultExpression = A & "*" & B & "*" & C & "/" & D & "=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 14      For i = 1 To 24       Call Kind(i)       Jieguo = A * B / C / D       If Jieguo = 24 Then        ResultExpression = A & "*" & B & "/" & C & "/" & D & "=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 15      For i = 1 To 24       Call Kind(i)       Jieguo = (A + B) * C / D       If Jieguo = 24 Then        ResultExpression = "(" & A & "+" & B & ")*" & C & "/" & D & "=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 16      For i = 1 To 24       Call Kind(i)       Jieguo = (A + B) * C * D       If Jieguo = 24 Then        ResultExpression = "(" & A & "+" & B & ")*" & C & "*" & D & "=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 17      For i = 1 To 24       Call Kind(i)       Jieguo = (A + B) * (C + D)       If Jieguo = 24 Then        ResultExpression = "(" & A & "+" & B & ")*(" & C & "+" & D & ")=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 18      For i = 1 To 24       Call Kind(i)       Jieguo = (A + B) * (C - D)       If Jieguo = 24 Then        ResultExpression = "(" & A & "+" & B & ")*(" & C & "-" & D & ")=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 19      For i = 1 To 24       Call Kind(i)       Jieguo = (A - B) * (C - D)       If Jieguo = 24 Then        ResultExpression = "(" & A & "-" & B & ")*(" & C & "-" & D & ")=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 20      For i = 1 To 24       Call Kind(i)       Jieguo = (A - B) * C / D       If Jieguo = 24 Then        ResultExpression = "(" & A & "-" & B & ")*" & C & "/" & D & "=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 21      For i = 1 To 24       Call Kind(i)       Jieguo = (A - B) * C * D       If Jieguo = 24 Then        ResultExpression = "(" & A & "-" & B & ")*" & C & "*" & D & "=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 22      For i = 1 To 24       Call Kind(i)       Jieguo = (A + B + C) * D       If Jieguo = 24 Then        ResultExpression = "(" & A & "+" & B & "+" & C & ")*" & D & "=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 23      For i = 1 To 24       Call Kind(i)       Jieguo = (A + B + C) / D       If Jieguo = 24 Then        ResultExpression = "(" & A & "+" & B & "+" & C & ")/" & D & "=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 24      For i = 1 To 24       Call Kind(i)       Jieguo = (A + B - C) * D       If Jieguo = 24 Then        ResultExpression = "(" & A & "+" & B & "-" & C & ")*" & D & "=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 25      For i = 1 To 24       Call Kind(i)       Jieguo = A * (B + C) + D       If Jieguo = 24 Then        ResultExpression = A & "*(" & B & "+" & C & ")+" & D & "=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 26      For i = 1 To 24       Call Kind(i)       Jieguo = A * (B - C) + D       If Jieguo = 24 Then        ResultExpression = A & "*(" & B & "-" & C & ")+" & D & "=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 27      For i = 1 To 24       Call Kind(i)       Jieguo = A * (B + C) - D       If Jieguo = 24 Then        ResultExpression = A & "*(" & B & "+" & C & ")-" & D & "=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 28      For i = 1 To 24       Call Kind(i)       Jieguo = A * (B - C) - D       If Jieguo = 24 Then        ResultExpression = A & "*(" & B & "-" & C & ")-" & D & "=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 29      For i = 1 To 24       Call Kind(i)       Jieguo = A + (B + C) / D       If Jieguo = 24 Then        ResultExpression = A & "+(" & B & "+" & C & ")/" & D & "=24"        Num = True        lresult.Caption = ResultExpression        Exit For       End If      Next i      Case 30      ResultExpression = "无解"            Num = True        lresult.Caption = ResultExpression        End Select            If Num = True Then Exit For Next j 
End Sub Private Sub cmdExit_Click() End End Sub Private Sub cmdMake_Click() Randomize NumberA = Int(Rnd * 10) + 1 NumberB = Int(Rnd * 10) + 1 NumberC = Int(Rnd * 10) + 1 NumberD = Int(Rnd * 10) + 1 lNumberA.Caption = NumberA lNumberB.Caption = NumberB lNumberC.Caption = NumberC lNumberD.Caption = NumberD lresult.Caption = "请按求解键!" cmdDo.Enabled = True Num = False 
End Sub 
Private Sub Form_Load() cmdDo.Enabled = False t.Enabled = False lresult.Caption = "请按出题键!" Num = False 
End Sub
   
 
  |