private void button1_Click(object sender, EventArgs e) { try { double a, b, c; //係數 a = double.Parse(textBox1.Text); b = double.Parse(textBox2.Text); c = double.Parse(textBox3.Text); double D, Re1, Re2, Im1, Im2; //Result 1, Result 2, 負數根 D = (b * b) - (4 * a * c); //判別式 if (D > 0) //判別式>0時 { Re1 = ((-b + Math.Sqrt(D)) / (2 * a)); Re2 = ((-b - Math.Sqrt(D)) / (2 * a)); Im1 = 0; Im2 = 0; } else if (D == 0.0) //判別式=0時 { Re1 = -b / (2 * a); Im1 = 0; Re2 = Im2 = 0; } else //判別式<0時 { Re1 = -b / (2 * a); Re2 = Re1; Im1 = Math.Sqrt(-D) / (2 * a); Im2 = -Im1; } if (D == 0) { textBox4.Text = "x1 = " + Re1.ToString() + "+" + Im1.ToString() + "i"; } else { textBox4.Text = "x1 = " + Re1.ToString() + "+" + Im1.ToString() + "i" + "\r\n" + "x2 = " + Re2.ToString() + "+" + Im2.ToString() + "i"; } } catch (Exception exception) { MessageBox.Show(exception.Message); } }