Advertisement
Guest User

Winform Calc

a guest
Dec 3rd, 2016
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 6.17 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using System.Windows.Forms;
  10.  
  11. namespace Calculator3
  12. {
  13.     public partial class Calculator : Form
  14.     {
  15.         public Calculator()
  16.         {
  17.             InitializeComponent();
  18.         }
  19.  
  20.         private void Calculator_Load(object sender, EventArgs e)
  21.         {
  22.  
  23.         }
  24.  
  25.         private void btn0_Click(object sender, EventArgs e)
  26.         {
  27.  
  28.         }
  29.  
  30.         private void btn1_Click(object sender, EventArgs e)
  31.         {
  32.  
  33.         }
  34.  
  35.         private void btn2_Click(object sender, EventArgs e)
  36.         {
  37.  
  38.         }
  39.  
  40.         private void btn3_Click(object sender, EventArgs e)
  41.         {
  42.  
  43.         }
  44.  
  45.         private void btn4_Click(object sender, EventArgs e)
  46.         {
  47.  
  48.         }
  49.  
  50.         private void btn5_Click(object sender, EventArgs e)
  51.         {
  52.  
  53.         }
  54.  
  55.         private void btn6_Click(object sender, EventArgs e)
  56.         {
  57.  
  58.         }
  59.  
  60.         private void btn7_Click(object sender, EventArgs e)
  61.         {
  62.  
  63.         }
  64.  
  65.         private void btn8_Click(object sender, EventArgs e)
  66.         {
  67.  
  68.         }
  69.  
  70.         private void btn9_Click(object sender, EventArgs e)
  71.         {
  72.  
  73.         }
  74.  
  75.         private void btnDot_Click(object sender, EventArgs e)
  76.         {
  77.  
  78.         }
  79.  
  80.         private void numPad_Click(object sender, EventArgs e)
  81.         {
  82.             Button btn = (Button)sender;
  83.             string num = btn.Text;
  84.  
  85.             string temp = txtResults.Text;
  86.             if (flagOpPressed == true)
  87.             {
  88.                 temp = "";
  89.                 flagOpPressed = false;
  90.             }
  91.             switch (num)
  92.             {
  93.                 case ".":
  94.                     if (!temp.Contains("."))
  95.                     {
  96.                         temp += ".";
  97.                     }
  98.                     break;
  99.                 default:
  100.                     if (temp == "0")
  101.                         temp = "";
  102.                     temp += num;
  103.                     break;
  104.             }
  105.             txtResults.Text = temp;
  106.         }
  107.  
  108.         string opr = "";
  109.         double operand = 0;
  110.         private void btnEqu_Click(object sender, EventArgs e)
  111.         {
  112.  
  113.             double value = Double.Parse(txtResults.Text);
  114.             switch (opr)
  115.             {
  116.                 case "Add":
  117.                     operand = operand + value;
  118.                     txtResults.Text = operand.ToString();
  119.                     break;
  120.                 default:
  121.                     operand = value;
  122.                     break;
  123.                 case "sub":
  124.                     operand = operand - value;
  125.                     txtResults.Text = operand.ToString();
  126.                     break;
  127.                 case "Sqr":
  128.                     operand = operand * operand;
  129.                     txtResults.Text = operand.ToString();
  130.                     break;
  131.                 case "Times":
  132.                     operand = operand * value;
  133.                     txtResults.Text = operand.ToString();
  134.                     break;
  135.                 case "Div":
  136.                     operand = operand / value;
  137.                     txtResults.Text = operand.ToString();
  138.                     break;
  139.                 case "1/x":
  140.                     operand = 1 / value;
  141.                     txtResults.Text = operand.ToString();
  142.                     break;
  143.  
  144.  
  145.  
  146.             }
  147.         }
  148.  
  149.         bool flagOpPressed = false;
  150.         private string calcFunc;
  151.  
  152.         private void operator_Click(object sender, EventArgs e)
  153.         {
  154.             btnEqu.PerformClick();
  155.             operand = Double.Parse(txtResults.Text);
  156.  
  157.             Button btn = (Button)sender;
  158.             opr = btn.Tag.ToString();
  159.             flagOpPressed = true;
  160.         }
  161.  
  162.         private void btnCE_Click(object sender, EventArgs e)
  163.         {
  164.             opr = "";
  165.             operand = 0;
  166.             flagOpPressed = false;
  167.             txtResults.Text = "";
  168.         }
  169.  
  170.         private void u_operatorClick(object sender, EventArgs e)
  171.         {
  172.             Button btn = (Button)sender;
  173.             string u_opr = btn.Tag.ToString();
  174.  
  175.  
  176.             double value = Double.Parse(txtResults.Text);
  177.             string results;
  178.             switch (u_opr)
  179.             {
  180.                 case "Sqrt":
  181.                     results = Math.Sqrt(value).ToString("N10");
  182.                     txtResults.Text = results.TrimEnd('0').TrimEnd('.');
  183.                     break;
  184.                 case "Log":
  185.                     results = Math.Log10(value).ToString("N10");
  186.                     txtResults.Text = results.TrimEnd('0').TrimEnd('.');
  187.                     break;
  188.                 case "p10":
  189.                     results = Math.Pow(10, value).ToString("N10");
  190.                     txtResults.Text = results.TrimEnd('0').TrimEnd('.');
  191.                     break;
  192.                 case "Sin":
  193.                     results = Math.Sin(value).ToString("N10");
  194.                     txtResults.Text = results.TrimEnd('0').TrimEnd('.');
  195.                     break;
  196.                 case "Cos":
  197.                     results = Math.Cos(value).ToString("N10");
  198.                     txtResults.Text = results.TrimEnd('0').TrimEnd('.');
  199.                     break;
  200.                 case "Tan":
  201.                     results = Math.Tan(value).ToString("N10");
  202.                     txtResults.Text = results.TrimEnd('0').TrimEnd('.');
  203.                     break;
  204.                 case "Exp":
  205.                     results = Math.Exp(value).ToString("N10");
  206.                     txtResults.Text = results.TrimEnd('0').TrimEnd('.');
  207.                     break;
  208.                 case "ln":
  209.                     results = Math.l(value).ToString("N10");
  210.                     txtResults.Text = results.TrimEnd('0').TrimEnd('.');
  211.                     break;
  212.  
  213.  
  214.  
  215.  
  216.             }
  217.         }
  218.  
  219.         private void btnCLR_Click(object sender, EventArgs e)
  220.         {
  221.             txtResults.Text = string.Empty;
  222.             operand = 0;
  223.             operand = 0;
  224.             calcFunc = string.Empty;
  225.             flagOpPressed = false;
  226.         }
  227.     }
  228. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement