-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathform with calculator.cs
159 lines (134 loc) · 4.23 KB
/
form with calculator.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace Form_With_Calculator
{
public partial class Frm_Main : Form
{
public Frm_Main()
{
InitializeComponent();
}
int number1 = 0;
int number2 = 0;
int result = 0;
#region PART1: CHECKING AGAINST INVALID ENTRIES
private void txt_number1_TextChanged(object sender, EventArgs e)
{
if (IsValidInteger(txt_number1.Text,out int numberone))
{
number1 = numberone;
}
else
{
MessageBox.Show("User entry on First Number is invalid," +
" need to enter an integer. ");
}
}
private void txt_number2_TextChanged(object sender, EventArgs e)
{
if (IsValidInteger(txt_number2.Text, out int numbertwo))
{
number2 = numbertwo;
}
else
{
MessageBox.Show("User entry on Second Number is invalid," +
" need to enter an integer. ");
}
}
private bool IsValidInteger(string strValue, out int intValue)
{
try
{
intValue = int.Parse(strValue);
return true;
}
catch
{
intValue = 0;
return false;
}
}
#endregion
#region PART2: MAKING THE CALCULATION
private void btn_calculate_Click(object sender, EventArgs e)
{
if (cmb_operation.Text == "+")
{
result = number1 + number2;
}
else if (cmb_operation.Text == "-")
{
result = number1 - number2;
}
else if (cmb_operation.Text == "/")
{
result = number1 / number2;
}
else if (cmb_operation.Text == "*")
{
result = number1 * number2;
}
else
{
MessageBox.Show("Please select an operation. ");
}
txt_result.Text = result.ToString();
}
#endregion
#region PART3: INCREMENTING THE RESULT
private void Increment(int amount)
{
result = result + amount;
}
// text markers are important.
private void btn_increment1_Click(object sender, EventArgs e)
{
Increment(int.Parse(btn_increment1.Text));
txt_result.Text = result.ToString();
}
private void btn_increment5_Click(object sender, EventArgs e)
{
Increment(int.Parse(btn_increment5.Text));
txt_result.Text = result.ToString();
}
private void btn_increment10_Click(object sender, EventArgs e)
{
Increment(int.Parse(btn_increment10.Text));
txt_result.Text = result.ToString();
}
#endregion
#region PART4: DECREMENTING THE RESULT
private void Decrement(int amounts)
{
result = result + amounts;
// since values are negative no need to put minus sign.
}
private void btn_decrement1_Click(object sender, EventArgs e)
{
Decrement(int.Parse(btn_decrement1.Text));
txt_result.Text = result.ToString();
}
private void btn_decrement5_Click(object sender, EventArgs e)
{
Decrement(int.Parse(btn_decrement5.Text));
txt_result.Text = result.ToString();
}
private void btn_decrement10_Click(object sender, EventArgs e)
{
Decrement(int.Parse(btn_decrement10.Text));
txt_result.Text = result.ToString();
}
#endregion
private void Frm_Main_Load(object sender, EventArgs e)
{
}
}
}