资源简介
使用VC++编写求解一元四次方程的程序
代码片段和文件信息
//DlgMain.cpp
#include “stdafx.h“
#include
#include “solveequation.h“
#include “DlgMain.h“
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
CDlgMain::CDlgMain(CWnd* pParent /*=NULL*/)
: CDialog(CDlgMain::IDD pParent)
{
//{{AFX_DATA_INIT(CDlgMain)
//}}AFX_DATA_INIT
}
void CDlgMain::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDlgMain)
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CDlgMain CDialog)
//{{AFX_MSG_MAP(CDlgMain)
ON_EN_CHANGE(IDC_TXT_ZX0 onchangeTxt)
ON_EN_CHANGE(IDC_TXT_ZX1 onchangeTxt)
ON_EN_CHANGE(IDC_TXT_ZX2 onchangeTxt)
ON_EN_CHANGE(IDC_TXT_ZX3 onchangeTxt)
ON_EN_CHANGE(IDC_TXT_ZX4 onchangeTxt)
ON_EN_CHANGE(IDC_TXT_ZY0 onchangeTxt)
ON_EN_CHANGE(IDC_TXT_ZY1 onchangeTxt)
ON_EN_CHANGE(IDC_TXT_ZY2 onchangeTxt)
ON_EN_CHANGE(IDC_TXT_ZY3 onchangeTxt)
ON_EN_CHANGE(IDC_TXT_ZY4 onchangeTxt)
ON_WM_CTLCOLOR()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
void CDlgMain::onchangeTxt()
{
TCHAR szText[512];
HWND hWnd = ::GetDlgItem(m_hWndIDC_TXT_ZX4);
double x = 0.0;
double y = 0.0;
int i = 0;
for(i = 0;i < 5;++i)
{
//读取实部
::GetWindowText(hWndszTextsizeof(szText) / sizeof(szText[0]));
x = _tcstod(szTextNULL);
//读取虚部
hWnd = ::GetWindow(hWndGW_HWNDNEXT);
hWnd = ::GetWindow(hWndGW_HWNDNEXT);
::GetWindowText(hWndszTextsizeof(szText) / sizeof(szText[0]));
y = _tcstod(szTextNULL);
//下一行
hWnd = ::GetWindow(hWndGW_HWNDNEXT);
hWnd = ::GetWindow(hWndGW_HWNDNEXT);
hWnd = ::GetWindow(hWndGW_HWNDNEXT);
//
m_z[4-i] = std::complex(xy);
}
//求解方程
SolveEquation(m_zm_x);
//填写结果
hWnd = ::GetDlgItem(m_hWndIDC_TXT_X1);
hWnd = ::GetWindow(hWndGW_HWNDPREV);
bool bOK = false;
int k = 0;
CString s;
for(i = 0;i < 4;++i)
{
bOK = _finite(m_x[i].real()) && _finite(m_x[i].imag());
s.Empty();
if(bOK)
{//计算
std::complex t;
for(k = 0;k < 5;++k)
{
t = t * m_x[i] + m_z[4-k];
}
double d = _hypot(t.real()t.imag());
s.Format(_T(“%.0le“)d);
}
::SetWindowText(hWnds);
//实部
hWnd = ::GetWindow(hWndGW_HWNDNEXT);
if(bOK)
{
s.Format(_T(“%.13lg“)m_x[i].real());
}
::SetWindowText(hWnds);
//虚部
hWnd = ::GetWindow(hWndGW_HWNDNEXT);
hWnd = ::GetWindow(hWndGW_HWNDNEXT);
if(bOK)
{
s.Format(_T(“%.13lg“)m_x[i].imag());
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1188 2016-03-26 18:09 make\vc2002\SolveEquation.sln
文件 8168 2016-03-27 15:00 make\vc2002\SolveEquation.vcproj
文件 1149 2016-03-26 18:09 make\vc2003\SolveEquation.sln
文件 8739 2016-03-27 15:11 make\vc2003\SolveEquation.vcproj
文件 21862 2016-03-26 18:09 make\vc2005\SolveEquation.sln
文件 145897 2016-03-27 15:14 make\vc2005\SolveEquation.vcproj
文件 24009 2016-03-26 18:09 make\vc2008\SolveEquation.sln
文件 153827 2016-03-27 15:16 make\vc2008\SolveEquation.vcproj
文件 1786 2016-03-26 18:09 make\vc2010\SolveEquation.sln
文件 21380 2016-03-27 13:27 make\vc2010\SolveEquation.vcxproj
文件 2090 2016-03-27 13:27 make\vc2010\SolveEquation.vcxproj.filters
文件 1786 2016-03-26 18:09 make\vc2012\SolveEquation.sln
文件 21740 2016-03-27 15:19 make\vc2012\SolveEquation.vcxproj
文件 2090 2016-03-27 15:19 make\vc2012\SolveEquation.vcxproj.filters
文件 1865 2016-03-26 18:09 make\vc2013\SolveEquation.sln
文件 21741 2016-03-27 15:20 make\vc2013\SolveEquation.vcxproj
文件 2090 2016-03-27 15:20 make\vc2013\SolveEquation.vcxproj.filters
文件 1863 2016-03-26 18:09 make\vc2015\SolveEquation.sln
文件 21741 2016-03-27 15:22 make\vc2015\SolveEquation.vcxproj
文件 2090 2016-03-27 15:22 make\vc2015\SolveEquation.vcxproj.filters
文件 7721 2016-03-26 18:26 make\vc6\SolveEquation.dsp
文件 551 2016-03-26 18:09 make\vc6\SolveEquation.dsw
文件 3785 2016-03-27 15:44 src\DlgMain.cpp
文件 738 2016-03-27 15:38 src\DlgMain.h
文件 1295 2016-03-26 18:09 src\pchMFC\ON_WM_XXX.h
文件 37 2016-03-26 18:09 src\pchMFC\StdAfx.cpp
文件 1634 2016-03-27 15:05 src\pchMFC\StdAfx.h
文件 1808 2016-03-26 18:09 src\pchMFC\StdAfx2002.h
文件 1464 2016-03-26 18:09 src\pchMFC\StdAfx2003.h
文件 1829 2016-03-26 18:09 src\pchMFC\StdAfx2005.h
............此处省略41个文件信息
评论
共有 条评论