Program for clculator in Visual Basic



Calculator
The Interface:







Coding:
 Option Explicit
Private Sub ButtonNum_Click(Index As Integer)
If Num_of_digit > 0 Then
If Num_of_digit < 30 Then
panel. Caption = panel.Caption + Right$(Str(Index), 1)
Num_of_digit = Num_of_digit + 1
End If
Else
panel.Caption = Right$(Str(Index), 1)
Num_of_digit = 1
End If
CheckValue
End Sub
Dim Num_of_digit As Integer
Dim key As Integer
Dim displayValue As Variant
Dim a, b, c, d, e, f, g As Variant
Dim memo As Variant
Dim newNumber As Boolean

Private  Sub BZero_Click (Index As Integer)
If Num_of_digit > 0 Then
panel.Caption = panel.Caption + "0"
Else
panel.Caption = "0"
Num_of_digit = Num_of_digit + 1
End If
CheckValue
End Sub

Sub CheckValue()
displayValue = Val(panel.Caption)
End Sub

Private Sub ButtonNum_Click (Index As Integer)
If Num_of_digit > 0 Then
If Num_of_digit < 30 Then
panel.Caption = panel.Caption + Right$(Str(Index), 1)
Num_of_digit = Num_of_digit + 1
End If
Else
panel.Caption = Right$(Str(Index), 1)
Num_of_digit = 1
End If
CheckValue
End Sub

Private Sub Clear_Click ()
panel.Caption = "0"
displayValue = "0"
Num_of_digit = 0
End Sub

Private Sub ClearAll_Click ()
panel.Caption = "0"
displayValue = "0"
memo = 0
End Sub
Private Sub Equal_Click ()
CheckValue
If newNumber = True Then
If key = 1 Then
e = displayValue + a
ElseIf key = 2 Then
e = b - displayValue
ElseIf key = 3 Then
e = displayValue * c
ElseIf key = 5 Then
e = (f * displayValue) / 100
ElseIf key = 4 And displayValue <> 0 Then
e = d / displayValue
Else
GoTo error
End If
If Abs(e) < 1 Then
panel.Caption = Format(e, "General Number")
Else
panel.Caption = Str(e)
End If
Else
panel.Caption = displayValue
End If
GoTo finish
error: panel.Caption = "E"
finish:
Num_of_digit = 0
newNumber = False
End Sub

Private Sub MemoCancel_Click ()
memo = 0
End Sub

Private Sub Memory_Click ()
CheckValue
memo = displayValue
Num_of_digit = 0
End Sub

Private Sub Operator_Click (Index As Integer)
CheckValue
If Index = 11 Then
a = displayValue
key = 1
ElseIf Index = 12 Then
b = displayValue
key = 2
ElseIf Index = 13 Then
c = displayValue
key = 3
ElseIf Index = 14 Then
d = displayValue
key = 4

ElseIf Index = 15 Then
f = displayValue
key = 5
End If
Num_of_digit = 0
newNumber = True
End Sub

Private Sub Plus_minus_Click ()
CheckValue
g = -1 * displayValue
displayValue = g
panel.Caption = Str(displayValue)
CheckValue
End Sub

Private Sub Poin_Click ()
Static point_lock As Integer
If point_lock = 0 And Num_of_digit < 20 Then
panel.Caption = panel.Caption + "."
Num_of_digit = Num_of_digit + 1
End If
CheckValue
End Sub

Private Sub Recall_Click ()
panel.Caption = Str(memo)
End Sub

Private Sub SqRoot_Click ()
CheckValue
If displayValue >= 0 Then
panel.Caption = Str(Sqr(displayValue))
Else
panel.Caption = "E"
End If
Num_of_digit = 0
End Sub
Private Sub Summation_Click ()
CheckValue
memo = memo + displayValue
Num_of_digit = 0
End Sub

Comments

Popular posts from this blog

Program for calculating Simple Interest using the concept of Default Arguments

Data communication Terminology

Program for Checking whether the given number is Palindrome or not