Dim datonum As Double
Dim operazione As String
Dim flag As Boolean
Private Sub cmdcanc_Click()
Text1.Text = ""
End Sub
Private Sub cmddiv_Click()
Call esegui
operazione = "/"
flag = True
End Sub
Private Sub cmdesc_Click()
MsgBox "Il programma verrà chiuso", vbInformation, "avviso"
End
End Sub
Private Sub cmdmeno_Click()
Call esegui
operazione = "-"
flag = True
End Sub
Private Sub cmdnum_Click(Index As Integer)
Text1.Text = Text1.Text & Index
If flag Then
Text1.Text = Index
End If
flag = False
End Sub
Private Sub cmdper_Click()
Call esegui
operazione = "*"
flag = True
End Sub
Private Sub cmdpiu_Click()
Call esegui
operazione = "+"
flag = True
End Sub
Private Sub cmdpiumeno_Click()
If Len(Text1.Text) = 0 Then
Text1.Text = Text1.Text & "error"
End If
Text1.Text = "-" & Text1.Text
End Sub
Private Sub cmdquad_Click()
Call esegui
Text1.Text = Text1.Text & "^2"
operazione = "^"
End Sub
Private Sub cmdradice_Click()
If Len(Text1.Text) = 0 Then
Text1.Text = "error"
End If
Call esegui
operazione = "sqrt"
End Sub
Private Sub cmdris_Click()
Call esegui
Text1.Text = CDbl(datonum)
datonum = 0
operazione = "+"
End Sub
Private Sub cmdvirgola_Click()
If Len(Text1.Text) = 0 Then
Text1.Text = "error"
End If
If InStr(Text1.Text, ",") = 0 Then
Text1.Text = Text1.Text & ","
End If
End Sub
Private Sub Form_Load()
Dim i As Integer
For i = 0 To 9
cmdnum(i).Caption = i
Next i
datonum = 0
operazione = "+"
flag = False
flag2 = False
End Sub
Private Sub esegui()
Select Case operazione
Case "+"
datonum = datonum + CDbl(Text1.Text)
Case "-"
datonum = datonum - CDbl(Text1.Text)
Case "*"
datonum = datonum * CDbl(Text1.Text)
Case "/"
datonum = datonum / CDbl(Text1.Text)
Case "^"
datonum = Val(datonum) * Val(datonum)
Case "sqrt"
datonum = Sqr(datonum)
End Select
End Sub