/// <summary> /// Calculator for functions with one argument /// </summary> /// <param name="sender"> /// Button sender /// </param> /// <param name="e"> /// Operation name /// </param> public void CalculatorWithOneArg(object sender, EventArgs e) { try { double firstField = Convert.ToDouble(InputFirstTextBox.Text); string nameButton = ((Button)sender).Name; IOneArgument factoryForOneArg = OperationsFactory.CreateTrigonometriaOperation(nameButton); Result.Text = factoryForOneArg.Calculate(firstField).ToString(); } catch (Exception exception) { MessageBox.Show(exception.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
/// <summary> /// Эта часть кода отвечает за функции с одним операндом. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void rnd_Click1(object sender, EventArgs e) { try { IOneArgument cal1 = FactoryOneArgument.CreateCalculator(((Button)sender).Name); double currnum = Convert.ToDouble(textBox1.Text); double endres = cal1.Calculate(currnum); label1.Text = Convert.ToString(endres); } catch (Exception exc) { label1.Text = exc.Message; } }
void OneCalculator(object sender, EventArgs e) { try { double firstArgument = Convert.ToDouble(firstElement.Text); IOneArgument oneCalculator = OneArgumentFactory.CreateCalculator(((Button)sender).Name); double result = oneCalculator.OneCalculate(firstArgument); Conclusion.Text = result.ToString(); } catch (FormatException exception) { firstElement.Text = ""; } catch (Exception exception) { MessageBox.Show(exception.Message); } }