Hi all,
I am developing calculator app using C#.I have successfuly implemented its standard arithmetic functions but a bit trapped in implementing scientific functions such as sin,cos.tan etc.
I take an operand1,then operator and finally second opernad to workout arithmetic calculations.In the very first attempt to do scientific calculation i for the sake of programme format first takes input followed by sin/cos/tan etc and then out result.
Here is my code:
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;namespace Calculator{public partial class Form1 : Form{string input = string.Empty;string operand1 = string.Empty;string operand2 = string.Empty;char operaton;double result = 0.0;public Form1(){InitializeComponent();}private void one_Click(object sender, EventArgs e){this.textBox1.Text = " ";input += "1";this.textBox1.Text += input;}private void two_Click(object sender, EventArgs e){this.textBox1.Text = " ";input += "2";this.textBox1.Text += input;}private void three_Click(object sender, EventArgs e){this.textBox1.Text = " ";input += "3";this.textBox1.Text += input;}private void four_Click(object sender, EventArgs e){this.textBox1.Text = " ";input += "4";this.textBox1.Text += input;}private void five_Click(object sender, EventArgs e){this.textBox1.Text = " ";input += "5";this.textBox1.Text += input;}private void six_Click(object sender, EventArgs e){this.textBox1.Text = " ";input += "6";this.textBox1.Text += input;}private void seven_Click(object sender, EventArgs e){this.textBox1.Text = " ";input += "7";this.textBox1.Text += input;}private void eight_Click(object sender, EventArgs e){this.textBox1.Text = " ";input += "8";this.textBox1.Text += input;}private void nine_Click(object sender, EventArgs e){this.textBox1.Text = " ";input += "9";this.textBox1.Text += input;}private void dot_Click(object sender, EventArgs e){this.textBox1.Text = " ";input += ".";this.textBox1.Text += input;}private void zero_Click(object sender, EventArgs e){this.textBox1.Text = " ";input += "0";this.textBox1.Text += input;}private void clear_Click(object sender, EventArgs e){this.textBox1.Text = "0";this.input = string.Empty;this.operand1 = string.Empty;this.operand2 = string.Empty;}private void plus_Click(object sender, EventArgs e){operand1 = input;operaton = '+';input = string.Empty;}private void minus_Click(object sender, EventArgs e){operand1 = input;operaton = '-';input = string.Empty;}private void mul_Click(object sender, EventArgs e){operand1 = input;operaton = '*';input = string.Empty;}private void div_Click(object sender, EventArgs e){operand1 = input;operaton = '/';input = string.Empty;}private void mod_Click(object sender, EventArgs e){operand1 = input;operaton = '%';input = string.Empty;}private void sine_Click(object sender, EventArgs e){operand1 = input;operaton = 's';input = string.Empty;}private void cosine_Click(object sender, EventArgs e){operand1 = input;operaton = 'c';input = string.Empty;}private void tan_Click(object sender, EventArgs e){operand1 = input;operaton = 't';input = string.Empty;}private void equals_Click(object sender, EventArgs e){operand2 = input;double num1, num2;double.TryParse(operand1, out num1);double.TryParse(operand2, out num2);if (operaton == '+'){result = num1 + num2;textBox1.Text = result.ToString();}else if (operaton == '-'){result = num1 - num2;textBox1.Text = result.ToString();}else if (operaton == '*'){result = num1 * num2;textBox1.Text = result.ToString();}else if (operaton == '/'){if (num2 != 0){result = num1 / num2;textBox1.Text = result.ToString();}else{textBox1.Text = "DIV/Zero!";}}else if (operaton == '%'){result = num1 % num2;textBox1.Text = result.ToString();}else if (operaton == 's'){int inp;int.TryParse(operand1, out inp);result = Math.Sin(inp);textBox1.Text = result.ToString();}else if (operaton == 'c'){int inp;int.TryParse(operand1, out inp);result = Math.Cos(num1);textBox1.Text = result.ToString();}else if (operaton == 't'){int inp;int.TryParse(operand1, out inp);result = Math.Tan(num1);textBox1.Text = result.ToString();}}}}
I want to mention here that my output for scientific functions is not correct.Also,kindly tell me error in this format as in second attempt i will convert it to standard scientific mode i.e. pressing sin/cos/tan and then operand.
Regards
Replies
Know the answer? Post it — somebody with the same question will find it here.