C++程序设计报告 - 求解一元二次方程根

更新时间:2024-03-23 17:25:02 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

中南大学

本科生课程设计(实践)任务书、设计报告

(C++程序设计)

题 目 学生姓名 指导教师 学 院 专业班级 学生学号

一元二次方程求解

苏宏超 刘胤宏 能源科学与工程 能动1207 1003120711

计算机基础教学实验中心

2013年 6 月 30 日

一元二次方程求解系统

摘要 《C++程序设计基础》课程设计任务书;《C++程序设计实践教程》,

中国水利水电出版社,主编 刘卫国 杨长兴;百度资源。 关键字

1.一元二次方程求解系统开发设计思想

利用MFC应运程序向导创建如图的对话框框架并设置相应的控件。因为一元二次方程的系数a,b,c由使用者输入,因此求解系统只需要根据判别式△=b2?4ac与0的大小关系,利用不同的求解方法求解方程的根即可。

?b?b2?4ac(1)当△?0时,由一元二次求根公式x?求出方程的

2a?(b2?4ac)?b?i (1)当△<0时,知道方程有复根,可以令根x?2a2a由于复根是由实部和虚部组成,所以其输出要利用Format()函数进行。为“计算”和“结束”两个控件创建对应的消息处理函数。

2.一元二次方程求解系统功能及系统设计介绍

该方程求解系统根据a,b,c的输入,利用各种处理函数求解出方程的跟。不论a,b,c(a?0)输入什么数,该系统都能求解出对应的根,既可以求解实数根,也可以求解虚数根。

创建如上图的MFC对话框,分别为5个编辑框连接对应的变量( float m_a; float m_b; float m_c; CString m_x1; CString m_x2),创建对应“计算”和“结束”的消息处理函数。在“计算”消息处理函数中利用UpdateData()函数更新编辑框值的变化。根据△=b2?4ac与0大小关系分成两部分处理,利用if( )语句进行判别。利用不同格式的Format()函数输出不同形式的方程的根。

void CMy1003120711_2Dlg::OnBUTTONJiSuan() {

// TODO: Add your control notification handler code here UpdateData(true); float p,s,x;

p=m_b*m_b-4*m_a*m_c; if(p>=0) {

s=(-m_b)/2.0/m_a; x=pow(p,0.5)/2.0/m_a; m_x1.Format(\m_x2.Format(\

} else {

s=(-m_b)/2.0/m_a; }

UpdateData(false); }

“结束”控件的消息处理函数,实现各个编辑框的清零功能,相应的代码和变量的初始化相似。最后进行系统正确性能的检测,输入相应a,b,c的数字,检测结果是否正确。 3.一元二次方程求解系统开发的体会

经过两周左右的时间学习和上机实验,大体上清楚了用MFC设计和开发一些对话框或文本程序的一般步骤,自己也能独自完成一些简单的系统程序的设计开发。这两周的时间里不仅经历了困难,还学会了如何查找资料解决困难。下面是自己的一些体会。

(1)事情往往看起来或者听别人说起来,感觉是容易的,但是一旦去做就会发现有很多问题出现,于是需要一些努力去解决这些问题。 (2)在做一件事情时,首先要有一个整体的框架,就像用MFC设计程序一样要有一个大概的设想。其次每一个步骤都是相关联的,要做

x=pow(-p,0.5)/2.0/m_a;

m_x1.Format(\m_x2.Format(\

好每一步,清楚每步的目的。

(3)大学不再像高中一样,老师每个知识点都讲得很仔细。大学更多的是学会如何去学习,现在的社会每天都是不同的,更新的很快,因此我们要学会学习的方法,这样才能适应社会。

(4)自己学会的才是自己的。可能每次实践课都会有人找学长学姐要他们以前的相应的资料或其它途径获得,但我自己觉得应该要有自己的努力才算自己的成果,即使成果可能不是很好,但这是自己做的,里面有自己的汗水。

(5)学会查找相关资料。不仅能利用手中的书本资料,还要能进行一些网上查找对应的资料。

本文来源:https://www.bwwdw.com/article/v6p8.html

Top