/// <summary>
 /// 解二次方程
 /// </summary>
 /// <param name="textBox0">二次系数输入框</param>
 /// <param name="textBox1">一次系数输入框</param>
 /// <param name="textBox2">常数输入框</param>
 private void SolveEquation(FineUI.TextBox textBox0, FineUI.TextBox textBox1, FineUI.TextBox textBox2)
 {
     try
     {
         Equation equation;
         if (textBox0.Text == "0")
         {
             if (textBox1.Text == "0")
             {
                 throw new BasicCalculatorException("请输入至少一个系数!");
             }
             // 一次方程
             equation = new OneDegreeEquation((int)float.Parse(textBox2.Text), float.Parse(textBox1.Text));
         }
         else
         {
             //二次方程
             equation = new TwoDegreeEquation(float.Parse(textBox2.Text), float.Parse(textBox1.Text), float.Parse(textBox0.Text));
         }
         UpdateResult(equation);
     }
     catch (Exception et)
     {
         Result.Visible = true;
         Result.Text    = et.Message;
     }
 }
Exemple #2
0
        private void SolveEquation(TextBox textBox0, TextBox textBox1, TextBox textBox2)
        {
            try
            {
                Equation equation;

                if (textBox0.Text == "0" && textBox1.Text == "0")
                {
                    ScriptManager.RegisterStartupScript(this, this.GetType(), "", "alert('x的系数不可以全部为0!')", true);
                }


                if (textBox0.Text == "0")
                {
                    equation = new OneDegreeEquation(1, float.Parse(textBox2.Text), float.Parse(textBox1.Text));
                }
                else
                {
                    equation = new TwoDegreeEquation(2, float.Parse(textBox2.Text), float.Parse(textBox1.Text), float.Parse(textBox0.Text));
                }
                var stringBuilder = new StringBuilder("解有 " + equation.Result.Count + " 个, 是: ");
                foreach (var i in equation.Result)
                {
                    stringBuilder.Append(i + ",");
                }
                stringBuilder.Remove(stringBuilder.Length - 1, 1);
                Result.Visible = true;
                Result.Text    = stringBuilder.ToString();
            }
            catch (Exception et)
            {
                Result.Visible = true;
                Result.Text    = et.Message;
            }
        }