该代码段展示了一个C++函数,用于处理一个二次方程的求解。当给定方程的判别式小于0时,它会显示方程无解;当判别式大于0时,计算并显示两个不同的解;等于0时,则显示相同的两个解。结果直接更新到UI控件上。
随手记录 之前帮别人做的小东西
求解按钮代码
//求解
void CequationDlg::OnBnClickedOk()
{
// TODO: 在此添加控件通知处理程序代码
UpdateData(true);
double q, x1, x2;
q=m_num1*m_num1-4*m_num2*m_num;//b^2-4ac
if (q < 0)//无解
{
m_endnum.SetWindowText("此方程无解");
}
else if (q > 0)//两个不同解
{
x1 = (-1 * m_num1 + sqrt(q)) / 2 * m_num2;
x2 = (-1 * m_num1 - sqrt(q)) / 2 * m_num2;
CString str;
str.Format("x1=%f,x2=%f",x1,x2);
m_endnum.SetWindowText(str);//将根显示到控件上
}
else//相同的两个解
{
x1= (-1 * m_num1 + sqrt(q)) / 2 * m_num2;
CString str;
str.Format("x1=x2=%f",x1);
m_endnum.SetWindowText(str);//将根显示到控件上
}
UpdateData(false);
}