//System Media //
using System.Media;
//Declaration of variables //
int clear = 1; decimal result, mresult = 0; string op;
//Eval function //
decimal eval(string op)
{
clear = 1;
try
{
switch (op)
{
case "+": result = result + Convert.ToDecimal(label1.Text); break;
case "-": result = result - Convert.ToDecimal(label1.Text); break;
case "/": result = result / Convert.ToDecimal(label1.Text); break;
case "*": result = result * Convert.ToDecimal(label1.Text); break;
case "Mod": result = result % Convert.ToDecimal(label1.Text); break;
default: result = Convert.ToDecimal(label1.Text); break;
}
}
catch (System.OverflowException) { label2.Text = ""; label2.Text = "Overflow"; clear = 2; SystemSounds.Asterisk.Play(); }
catch (System.DivideByZeroException) { label2.Text = ""; label2.Text = "Cannot divide by zero"; clear = 2; SystemSounds.Asterisk.Play(); }
return result;
}
//Clear function //
int Clear(int cl)
{
switch (cl)
{
case 1:
{
label1.Text = "";
}break;
case 2:
{
label1.Text = ""; label2.Text = ""; op = "";
}break;
case 3:
{
label1.Text = ""; label2.Text = label2.Text.Remove(label2.Text.IndexOf('r'));
}break;
case 4:
{
label1.Text = ""; label2.Text = label2.Text.Remove(label2.Text.IndexOf('s'));
}break;
case 5:
{
label1.Text = ""; label2.Text = label2.Text.Remove(label2.Text.LastIndexOf(' ') + 1);
}break;
}
return 0;
}
//Button 0,1,2,3,4,5,6,7,8,9(replace the 0 with the other numbers) //
clear = Clear(clear);
if (label1.Text.Length < 28)
label1.Text = label1.Text + "0";
else SystemSounds.Beep.Play();
//Button "." //
if (label1.Text.Contains('.'))
{
SystemSounds.Beep.Play();
}
else label1.Text = label1.Text + ".";
//Button +,-,/,*,Mod(replace the + with the other operators) //
if (clear == 3 || clear == 4 || clear == 5)
label2.Text = label2.Text + " + ";
else label2.Text = label2.Text + label1.Text + " + ";
label1.Text = eval(op).ToString();
op = "+";
//Button 1/x //
if (label2.Text.Contains("reciproc"))
{
label2.Text = label2.Text.Insert(label2.Text.IndexOf('r'), "reciproc("); label2.Text = label2.Text.Insert(label2.Text.IndexOf(')'), ")");
}
else label2.Text = label2.Text + "reciproc(" + label1.Text + ")";
label1.Text = (1 / Convert.ToDecimal(label1.Text)).ToString(); clear = 3;
//Button √ //
if (label2.Text.Contains("sqrt"))
{
label2.Text = label2.Text.Insert(label2.Text.IndexOf('s'), "sqrt("); label2.Text = label2.Text.Insert(label2.Text.IndexOf(')'), ")");
}
else label2.Text = label2.Text + "sqrt(" + label1.Text + ")";
label1.Text = Math.Sqrt(Convert.ToDouble(label1.Text)).ToString(); clear = 4;
//Button % //
label1.Text = (result * Convert.ToDecimal(label1.Text) / 100).ToString();
label2.Text = label2.Text + label1.Text; clear = 5;
//Button ± //
if (label1.Text.Contains('-'))
{
label1.Text = label1.Text.Remove(label1.Text.IndexOf('-'), 1);
}
else label1.Text = "-" + label1.Text;
//Button = //
if (clear != 3 && clear != 4 && clear != 5)
label2.Text = label2.Text + label1.Text;
label1.Text = eval(op).ToString(); clear = 2;
//Button C //
Clear(1); clear = 1; label1.Text = "0";
//Button CE //
Clear(2); clear = 1; label1.Text = "0"; result = 0;
//Button MS //
mresult = Convert.ToDecimal(label1.Text); clear = 1; label3.Text = "M";
//Button MR //
label1.Text = mresult.ToString(); clear = 1;
//Button M+ //
mresult = mresult + Convert.ToDecimal(label1.Text); clear = 1; label3.Text = "M";
//Button M- //
mresult = mresult - Convert.ToDecimal(label1.Text); clear = 1; label3.Text = "M";
//Button MC //
mresult = 0; clear = 1; label3.Text = "";
//Label1 TextChanged Event //
if (label1.Text.Length <= 20)
{
Font font = new Font("Consolas", 14, FontStyle.Regular); label1.Font = font;
}
else if (label1.Text.Length > 20 && label1.Text.Length <= 26)
{
Font font = new Font("Consolas", 11, FontStyle.Regular); label1.Font = font;
}
else { Font font = new Font("Consolas", 9, FontStyle.Regular); label1.Font = font; }
-----------------------------------------------------------------
C# language, Calculator
Windows Simple Calculator sample in C# for Visual Studio 2012
Basic Calculator In C# - C# Tutorials
How To Make An Simple Calculator In C# - C#
C# Calculator - Share Your Project
C# Calculator Help - C# Searches related to calculator c#
mortgage calculator c#
calculator java
calculator visual basic
conversion c#
calculator c# windows form application
calculator c# tutorial
calculator c# source code
calculator tutorial
Calculator in C# (Windows Application) - C#
0 comments:
Post a Comment