Private Sub CmdExp_Click()
Dim Ang As Double
Dim Res As Double
Ang = Val(txtDisplay.Text)
Res = Exp(Ang)
txtDisplay.Text = Str(Res)
End Sub
Private Sub CmdHACos_Click()
Dim St As String
Dim Ang As Double
Dim Res As Double
St = txtDisplay.Text
Ang = Val(St)
if Ang = 0 Then
MsgBox "所输入的数据不是一个有效值,请重新输入。", 64, "信息提示"
ElseIf (Ang + Sqr(Ang * Ang - 1)) <= 0 Or (Ang * Ang - 1) < 0 Then
MsgBox "所输入的数据还不是一个有效值,请重新输入。", 64, "信息提示"
Else
Res = Log(Ang + Sqr(Ang * Ang - 1))
txtDisplay.Text = Str$(Res)
End If
End Sub
Private Sub CmdHACsc_Click()
Dim St As String
Dim Ang As Double
Dim Res As Double
St = txtDisplay.Text
Ang = Val(St)
If Ang = 0 Then
MsgBox "所输入的数据不是一个有效值,请重新输入。", 64, "信息提示"
ElseIf ((Sgn(Ang) * Sqr(Ang * Ang + 1) + 1) / Ang) <= 0 Or Ang = 0 Then
MsgBox "所输入的数据不是一个有效值,请重新输入。", 64, "信息提示"
Else
Res = Log((Sgn(Ang) * Sqr(Ang * Ang + 1) + 1) / Ang)
txtDisplay.Text = Str$(Res)
End If
End Sub
Private Sub CmdHACTan_Click()
Dim St As String
Dim Ang As Double
Dim Res As Double
St = txtDisplay.Text
Ang = Val(St)
If (Ang + 1) * (Ang - 1) <= 0 Then
MsgBox "所输入的数据不是一个有效值,请重新输入。", 64, "信息提示"
Else
Res = Log((Ang + 1) * (Ang - 1)) / 2
txtDisplay.Text = Str$(Res)
End If
End Sub
Private Sub CmdHASec_Click()
Dim St As String
Dim Ang As Double
Dim Res As Double
St = txtDisplay.Text
Ang = Val(St)
if (-Ang * Ang + 1) < 0 Or Ang = 0 Then
MsgBox "所输入的数据不是一个有效值,请重新输入。", 64, "信息提示"
Else
Res = Log((Sqr(-Ang * Ang + 1) + 1) / Ang)
txtDisplay.Text = Str$(Res)
End If
End Sub
Private Sub CmdHASin_Click()
Dim St As String
Dim Ang As Double
Dim Res As Double
St = txtDisplay.Text
Ang = Val(St)
If (Ang + Sqr(Ang * Ang + 1)) <= 0 Then
MsgBox "所输入的数据不是一个有效值,请重新输入。", 64, "信息提示"
Else
Res = Log(Ang + Sqr(Ang * Ang + 1))
txtDisplay.Text = Str$(Res)
End If
End Sub
Private Sub CmdHATan_Click()
Dim St As String
Dim Ang As Double
Dim Res As Double
St = txtDisplay.Text
Ang = Val(St)
If Ang = 1 Or Ang = -1 Or ((Ang + 1) * (Ang - 1)) < 0 Then
MsgBox "所输入的数据不是一个有效值,请重新输入。", 64, "信息提示"
Else
Res = Log((Ang + 1) * (Ang - 1)) / 2
txtDisplay.Text = Str$(Res)
End If
End Sub
Private Sub CmdHCos_Click()
Dim St As String
Dim Ang As Double
Dim Res As Double
St = txtDisplay.Text
Ang = Val(St)
Res = (Exp(Ang) + Exp(-Ang)) / 2
txtDisplay.Text = Str$(Res)
End Sub
Private Sub CmdHCsc_Click()
Dim St As String
Dim Ang As Double
Dim Res As Double
St = txtDisplay.Text
Ang = Val(St)
If (Exp(Ang) - Exp(-Ang)) = 0 Then
MsgBox "所输入的数据不是一个有效值,请重新输入。", 64, "信息提示"
Else
Res = 2 / (Exp(Ang) - Exp(-Ang))
txtDisplay.Text = Str$(Res)
End If
End Sub
Private Sub CmdHCTan_Click()
Dim St As String
Dim Ang As Double
Dim Res As Double
St = txtDisplay.Text
Ang = Val(St)
If (Exp(Ang) - Exp(-Ang)) = 0 Then
MsgBox "所输入的数据不是一个有效值,请重新输入。", 64, "信息提示"
Else
Res = (Exp(Ang) + Exp(-Ang)) / (Exp(Ang) - Exp(-Ang))
txtDisplay.Text = Str$(Res)
End If
End Sub
Private Sub CmdHSec_Click()
Dim St As String
Dim Ang As Double
Dim Res As Double
St = txtDisplay.Text
Ang = Val(St)
Res = 2 / (Exp(Ang) + Exp(-Ang))
txtDisplay.Text = Str$(Res)
End Sub
Private Sub cmdHSin_Click()
Dim St As String
Dim Ang As Double
Dim Res As Double
St = txtDisplay.Text
Ang = Val(St)
Res = (Exp(Ang) - Exp(-Ang)) / 2
txtDisplay.Text = Str$(Res)
End Sub
Private Sub CmdHTan_Click()
Dim St As String
Dim Ang As Double
Dim Res As Double
St = txtDisplay.Text
Ang = Val(St)
Res = (Exp(Ang) - Exp(-Ang)) / (Exp(Ang) + Exp(-Ang))
txtDisplay.Text = Str$(Res)
End Sub
Private Sub CmdLog_Click()
Dim St As String
Dim Ang As Double
Dim Res As Double
St = txtDisplay.Text
Ang = Val(St)
If Ang <= 0 Or Ang = 1 Then
MsgBox "所输入的值不是有效值", 64, "信息提示"
Else
Res = Log(Ang)
txtDisplay.Text = Str$(Res)
End If
End Sub
Private Sub CmdLogN_Click()
Dim St1 As String
Dim St2 As String
Dim Ang1 As Double
Dim Ang2 As Double
Dim Res As Double
If txtDisplay.Text = "" Then
MsgBox "请先输入真数:", 64, "信息提示"
Else
St1 = txtDisplay.Text
Ang1 = Val(St1)
MsgBox "现在请输入底数N", 64, "信息提示"
txtDisplay.Text = ""
St2 = InputBox("请输入底数N的值:")
Ang2 = Val(St2)
If Ang1 <= 0 Or Ang2 <= 0 Or Ang1 = 1 Or Ang2 = 1 Then
MsgBox "所输入的值不是有效值", 64, "信息提示"
Else
Res = Log(Ang1) / Log(Ang2)
txtDisplay.Text = Str$(Res)
End If
End If
End Sub
Private Sub CmdSec_Click()
Dim Ang As Double
Dim Res As Double
Ang = Val(txtDisplay.Text)
Res = Round(Cos(Ang * 3.14159265358979 / 180), 10)
If Res = 0 Then
MsgBox "你所输入的数据不在该公式的定义域内,请重新输入。", 64, "信息提示"
Else
Res = 1 / Res
txtDisplay.Text = ""
txtDisplay.Text = Str$(Res)
End If
End Sub
Private Sub cmdSin_Click()
Dim Ang As Double
Dim Res As Double
Ang = Val(txtDisplay.Text)
Res = Round(Sin(Ang * 3.14159265358979 / 180), 10)
txtDisplay.Text = ""
txtDisplay.Text = Str$(Res)
End Sub
Private Sub CmdSqr_Click()
Dim Str1 As String
Dim Valu As Double
Dim Res As Double
Str1 = txtDisplay.Text
Valu = Val(Str1)
If Valu < 0 Then
MsgBox "被开方数不能小于O!!!", 48, "警告"
Else
Res = Sqr(Valu)
End If
txtDisplay.Text = ""
txtDisplay.Text = Str$(Res)
End Sub
Private Sub CmdTan_Click()
Dim Ang As Double
Dim Res As Double
Ang = Val(txtDisplay.Text)
Res = Round(Tan(Ang * 3.14159265358979 / 180), 10)
txtDisplay.Text = ""
txtDisplay.Text = Str$(Res)
End Sub
Private Sub Command1_Click()
Dim St As String
Dim Ang As Double
Dim Res As Double
St = txtDisplay.Text
Ang = Val(St)
Res = Atn(Ang) + 2 * Atn(1)
End Sub
Private Sub Timer1_Timer()
StatusBar1.Panels(4).Text = "当前时间:" & Now
End Sub
Function ActiveButton()
Text1.Text = ""
Text2.Text = ""
AquaButton1.Enabled = True
Text1.Enabled = True
End Function
' Remove the last character.
Private Sub DeleteCharacter()
Dim txt As String
Dim min_len As Integer
txt = txtDisplay.Text
If Left$(txt, 1) = "-" Then
min_len = 2
Else
min_len = 1
End If
If Len(txt) > min_len Then
txtDisplay.Text = Left$(txt, Len(txt) - 1)
Else
txtDisplay.Text = "0"
End If
End Sub
' Clear the current entry, saved value, and operator.
Private Sub cmdClear_Click()
cmdClearEntry_Click
StoredValue = 0
Operator = opNone
End Sub
' Clear the current entry.
Private Sub cmdClearEntry_Click()
txtDisplay.Text = ""
End Sub
ReDim b(n) As Double
Ab_Ave = 0
For j = 1 To n
b(j) = Abs(Ave - a(j))
Ab_Ave = Ab_Ave + (b(j)) ^ 2
Next
If n = 1 Then
MsgBox "输入数据个数应为2个或2个以上!!", 64, "信息提示"
Text5.Text = ""
Else
St_Ave = Sqr(Ab_Ave / (n * (n - 1)))
End If
End If
End Sub
Private Sub AquaButton8_Click()
AquaButton7.Enabled = False
Text5.Text = ""
Text6.Text = ""
Text6.Text = Str$(St_Ave)
Text5.Enabled = False
end Sub
Private Sub AquaButton9_Click()
Text5.Text = ""
Text6.Text = ""
AquaButton7.Enabled = True
Text5.Enabled = True
End Sub
Private Sub CmdACos_Click()
Dim Ang As Double
Dim Res As Double
Ang = Val(txtDisplay.Text)
If (-Ang * Ang + 1 = 0) Then
MsgBox "你所输入的数据不在该公式的定义域内,请重新输入。", 64, "信息提示"
Else
Res = Round(Atn(-Ang / (-Ang * Ang + 1)), 10) + Round((2 * Atn(1)), 10)
txtDisplay.Text = ""
txtDisplay.Text = Str$(Res)
End If
End Sub
Private Sub CmdACsc_Click()
Dim Ang As Double
Dim Res As Double
Ang = Val(txtDisplay.Text)
If (Ang * Ang - 1) <= 0 Then
MsgBox "你所输入的数据不在该公式的定义域内,请重新输入。", 64, "信息提示"
Else
Res = Round((Atn(Ang / Sqr(Ang * Ang - 1)) + Sgn((Ang) - 1) * (2 * Atn(1))), 10)
txtDisplay.Text = ""
txtDisplay.Text = Str$(Res)
End If
End Sub
Private Sub CmdACTan_Click()
Dim Ang As Double
Dim Res As Double
Ang = Val(txtDisplay.Text)
Res = Atn(Ang) + 2 * Atn(1)
txtDisplay.Text = Str$(Res)
End Sub
Private Sub CmdASec_Click()
Dim Ang As Double
Dim Res As Double
Ang = Val(txtDisplay.Text)
If (Ang * Ang - 1) <= 0 Then
MsgBox "你所输入的数据不在该公式的定义域内,请重新输入。", 64, "信息提示"
Else
Res = Round((Atn(Ang / Sqr(Ang * Ang - 1)) + Sgn((Ang) - 1) * (2 * Atn(1))), 10)
txtDisplay.Text = ""
txtDisplay.Text = Str$(Res)
End If
End Sub
Private Sub CmdASin_Click()
Dim Ang As Double
Dim Res As Double
Ang = Val(txtDisplay.Text)
If (-Ang * Ang + 1 = 0) Then
MsgBox "你所输入的数据不在该公式的定义域内,请重新输入。", 64, "信息提示"
Else
Res = Round(Atn(Ang / (-Ang * Ang + 1)), 10)
txtDisplay.Text = ""
txtDisplay.Text = Str$(Res)
End If
End Sub
private Sub CmdATan_Click()
Dim St As String
Dim Ang As Double
Dim Res As Double
St = txtDisplay.Text
Ang = Val(St)
Res = Atn(Ang)
txtDisplay.Text = ""
txtDisplay.Text = Str$(Res)
End Sub
private Sub cmdCos_Click()
Dim Ang As Double
Dim Res As Double
Ang = Val(txtDisplay.Text)
Res = Round(Cos(Ang * 3.14159265358979 / 180), 10)
txtDisplay.Text = ""
txtDisplay.Text = Str$(Res)
End Sub
Private Sub CmdCsc_Click()
Dim Ang As Double
Dim Res As Double
Ang = Val(txtDisplay.Text)
Res = Round(Sin(Ang * 3.14159265358979 / 180), 10)
If Res = 0 Then
MsgBox "你所输入的数据不在该公式的定义域内,请重新输入。", 64, "信息提示"
Else
Res = 1 / Res
txtDisplay.Text = ""
txtDisplay.Text = Str$(Res)
End If
End Sub
Private Sub CmdCTan_Click()
Dim Ang As Double
Dim Res As Double
Ang = Val(txtDisplay.Text)
Res = Round(Tan(Ang * 3.14159265358979 / 180), 10)
If Res = 0 Then
MsgBox "你所输入的数据不在该公式的定义域内,请重新输入。", 64, "信息提示"
Else
Res = 1 / Res
txtDisplay.Text = ""
txtDisplay.Text = Str$(Res)
End If
End Sub
Private Sub cmdDecimal_Click()
If InStr(txtDisplay.Text, ".") Then
Beep
Else
If NewEntry Then
txtDisplay.Text = "."
NewEntry = False
Else
txtDisplay.Text = txtDisplay.Text & "."
End If
End If
End Sub
-----------------------------------------------
Option Explicit
Public i As Integer
Public j As String
Public k As Double
Public l As String
Public Sum As Double
Public n As Integer
Public Ave As Double
Option Base 1
Public Ab_Ave As Double
Public St_Ave As Double
Public X_Sum As Double
Public Y_Sum As Double
Public XY_Sum As Double
Public Xsqr_Sum As Double
Public Xsqr_Sum1 As Double
Public Ysqr_Sum As Double
Public Ysqr_Sum1 As Double
Public X_Y_Sum As Double
Public AbX_Sum As Double
Public AbY_Sum As Double
Public AbXsqr_Sum As Double
Public nAbXsqr_Sum As Double
Public AbYsqr_Sum As Double
Public XYsqr_Sum As Double
Public YXsqr_Sum As Double
Public m As String
Public t As String
Public b As Double
Public r As Double
Public p As Integer
Public q As Integer
Dim a1, a2, result As Single
Dim operator As Integer
Private Sub Command1_Click(Index As Integer)
If Index >= 12 And Index <= 15 Then
a1 = CDbl(Text1.Text)
Text1.Text = "0"
operator = Index
End If
If Index = 11 Then
a2 = CDbl(Text1.Text)
Select Case operator
Case 12
result = a1 + a2
Case 13
result = a1 - a2
Case 14
result = a1 * a2
Case 15
result = a1 / a2
End Select
If result > 0 And result < 1 Then
Text1.Text = "0" + CStr(result)
Else
Text1.Text = CStr(result)
End If
End If
If Index >= 0 And Index <= 8 Then
If Text1.Text = "0" Then
Text1.Text = CStr(Index + 1)
Else
Text1.Text = Text1.Text + CStr(Index + 1)
End If
End If
If Index = 9 Then
If Text1.Text = "0" Then
Text1.Text = "0"
Else
Text1.Text = Text1.Text + "0"
End If
End If
If Index = 10 Then
If InStr(Text1.Text, ".") > 0 Then
Else
Text1.Text = Text1.Text + "."
End If
End If
End Sub
Private Sub Command2_Click()
Text1.Text = "0"
End Sub