Defining enum in C#

We are having an example of a calculator here. So,

static double lastVal = 0; // last entered number
 static Op lastOp = Op.Eql; // last entered operator

// shows val in box n
  static void Show(double val) {
    box.Text = val.ToString();
    box.Focus();
    box.SelectionStart = 0;
    box.SelectionLength = box.Text.Length;
  }
 
  // The op button was clicked. The previous operation is executed.
  static void Do(Op op) {
    double val = Convert.ToDouble(box.Text);
    switch (lastOp) {
      case Op.Plus:  lastVal += val; break;
      case Op.Minus: lastVal -= val; break;
      case Op.Times: lastVal *= val; break;
      case Op.Div:   lastVal /= val; break;
      case Op.Eql:   lastVal = val;  break;
    }
    Show(lastVal);
    lastOp = op;
  }

// Event handlers for the operator buttons
 static void Plus (object sender, EventArgs e)
{
    Do(Op.Plus);
}
 static void Minus(object sender, EventArgs e)
{
    Do(Op.Minus);
}
static void Times(object sender, EventArgs e)
{
   Do(Op.Times);
}
static void Div  (object sender, EventArgs e)
{
   Do(Op.Div);
}
static void Eql  (object sender, EventArgs e)
{
   Do(Op.Eql);
}
static void Clear(object sender, EventArgs e)
{
   lastOp = Op.Eql; Show(0);
}

Advertisements

About Saad Khan

Saad is an ASP.NET developer with 4 years of experience, and has also made a number of contributions to the Sitefinity marketplace and community. He loves to explore new code, and create innovative tools and procedures while exploring new approaches in his work with Sitefinity and MVC. As an experienced .NET developer, he frequents both Telerik and Microsoft technologies. In his spare time, Saad is an avid gamer and movie fanatic, and also experiments with new and interesting tools on the Microsoft platform.​​

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: