| 查看: 1052 | 回复: 4 | ||||
| 本帖产生 1 个 博学EPI ,点击这里进行查看 | ||||
| 当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖 | ||||
[交流]
C++编程
|
||||
|
求解一元二次方程。 一元二次方程的定义为: ax2+bx+c=0 (1)如果b2 -4ac>0,方程有两个不同的实根,分别是: (2)如果b2 -4ac< 0,方程没有实根,但有虚根; (3)如果b2 -4ac= 0,方程有一个实根。 请你编写一个程序,使其能求出多个二次方程的根。该程序要询问用户是否想继续解下一个方程。用户输入1来继续,输入其它数字,则终止程序。程序要求用户输入a,b和c,然后根据前面的条件计算,并输出答案。 要求:使用类实现, (1) a,b,c为该类的私有成员变量; (2) 求根的实现为该类的成员函数,形式为: //函数返回值:实根的个数; //参数:x- 用以返回实根值的数组; long CalResult(float x[]); (3) 该类还包含有参构造函数、析构函数。 谢谢 请尽快 |
» 猜你喜欢
求个博导看看
已经有16人回复
想换工作。大多数高校都是 评职称时 认可5年内在原单位取得的成果吗?
已经有8人回复
上海工程技术大学张培磊教授团队招收博士生
已经有4人回复
上海工程技术大学【激光智能制造】课题组招收硕士
已经有5人回复
求助院士们,这个如何合成呀
已经有4人回复
临港实验室与上科大联培博士招生1名
已经有9人回复
需要合成515-64-0,50g,能接单的留言
已经有4人回复
自荐读博
已经有4人回复
写了一篇“相变储能技术在冷库中应用”的论文,论文内容以实验为主,投什么期刊合适?
已经有6人回复
带资进组求博导收留
已经有10人回复
» 抢金币啦!回帖就可以得到:
山东农业大学韩福社教授团队招聘有机合成研究助理
+1/177
湖北大学食品安全研究团队诚招博士后
+1/175
导电高分子用什么工艺处理分子链的堆叠会更加规整???
+1/86
Analytical Science Advances(Wiley出版社)长期征稿中...
+1/81
天津大学化学系吴立朋课题组申请考核制博士招生/博后招聘
+1/79
坐标北京不异地
+1/74
浙江师范大学申利国教授招聘博士后研究人员
+1/48
南京大学 统计与机器学习理论方向 博士招生
+1/31
【招生啦招生啦】武汉理工大学朱曼副研究员招收2026年9月入学博士/硕士研究生
+1/30
江西师范大学化学与材料学院2026年博士研究生招生
+1/24
山东大学集成电路学院招收2026年9月入学的博士研究生
+1/11
天津大学化学系吴立朋课题组申请考核制博士招生/博后招聘
+1/10
国家青年人才叶立群教授课题组招收2026级博士研究生
+1/9
有多余纯化系统,20-200mm高压制备分离系统,配套齐全可对外代工、委托加工、项目合作
+1/4
【博士招生】AI+材料/能源及海上能源岛方向有若干申请考核制名额
+1/3
山东大学集成电路学院博士招生1名
+1/2
中科院苏州医工所单细胞分析技术中心招聘公告(细胞分选、图像识别、流式应用方向)
+1/1
海南大学!海洋与极地地质团队长期招收博士和博士后
+1/1
背单词居然坚持了888天
+1/1
请推荐教育类中文普刊能挂通讯作者的期刊?
+1/1
curton
主管区长 (文坛精英)
-

专家经验: +151 - 博学EPI: 23
- 应助: 195 (高中生)
- 贵宾: 49.032
- 金币: 81384.8
- 帖子: 20300
- 在线: 15503.9小时
- 虫号: 950839
4楼2010-12-17 21:52:27
2楼2010-12-17 21:39:15
curton
主管区长 (文坛精英)
-

专家经验: +151 - 博学EPI: 23
- 应助: 195 (高中生)
- 贵宾: 49.032
- 金币: 81384.8
- 帖子: 20300
- 在线: 15503.9小时
- 虫号: 950839
★ ★ ★ ★ ★ ★ ★ ★ ★ ★
YUE-jf(金币+10):奖励 2010-12-21 14:02:16
YUE-jf(金币+10):奖励 2010-12-21 14:02:16
|
#include #include using namespace std; float x1,x2,disc,p,q; int main() {void greater_than_zero(float,float); void equal_to_zero(float,float); void smaller_than_zero(float,float); float a,b,c; cout<<"input a,b,c:"; cin>>a>>b>>c; disc=b*b-4*a*c; cout<<"root:"< { greater_than_zero(a,b); cout<<"x1="< else if (disc==0) {equal_to_zero(a,b); cout<<"x1="< else {smaller_than_zero(a,b); cout<<"x1="< cout<<"x2="< } return 0; } void greater_than_zero(float a,float b) /* 定义一个函数,用来求disc>0时方程的根 */ {x1=(-b+sqrt(disc))/(2*a); x2=(-b-sqrt(disc))/(2*a); } void equal_to_zero(float a,float b) /* 定义一个函数,用来求disc=0时方程的根 */ { x1=x2=(-b)/(2*a); } void smaller_than_zero(float a,float b) /* 定义一个函数,用来求disc<0时方程的根 */ { p=-b/(2*a); q=sqrt(-disc)/(2*a); } |
3楼2010-12-17 21:51:11
babyrabbit2006(金币+50, 博学EPI+1):谢谢了啊 2010-12-20 20:36:07
|
// 二次根.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include "math.h" #include using namespace std; class Cercigeng { public: Cercigeng(float aa, float bb, float cc); ~Cercigeng(); //函数返回值:实根的个数; //参数:x- 用以返回实根值的数组; long CalResult(float x[]); private: float a; float b; float c; }; Cercigeng::Cercigeng(float aa, float bb, float cc) { a=aa; b=bb; c=cc; } Cercigeng::~Cercigeng() { } long Cercigeng::CalResult(float x[]) { float delta = 0; long geshu=0; delta = b*b-4.0*a*c; if (delta < 0) { geshu = 0; } else if(fabs(delta)<1e-10) { x[0] = (-b+sqrt(delta))/2.0/a; geshu = 1; } else { x[0] = (-b+sqrt(delta))/2.0/a; x[1] = (-b-sqrt(delta))/2.0/a; geshu = 2; } return geshu; } int main(int argc, char* argv[]) { cout<<"求解方程的根!\n"<<"请输入a,b,c"; float a,b,c; cin>>a>>b>>c; Cercigeng fangcheng(a,b,c); float xx[1]; long GeShu = fangcheng.CalResult(xx); if (GeShu = 0) { cout<<"无实根!\n"; } else if(GeShu = 1) { cout<<"方程有一个实根为"< else { cout<<"方程有二个实根,分别为"< cout<<"如果继续,请输入1!否则输入其它数字\n"; int jixu=0; cin>>jixu; for (;(jixu-1)!=0 ![]() { cout<<"求解方程的根!\n"<<"请输入a,b,c"; cin>>a>>b>>c; Cercigeng fangcheng(a,b,c); GeShu = fangcheng.CalResult(xx); if (GeShu = 0) { cout<<"无实根!\n"; } else if(GeShu = 1) { cout<<"方程有一个实根为"< else { cout<<"方程有二个实根,分别为"< } return 0; } 试试吧,应该没有问题的,我写了一下,但是没有编译运行,好运! |
5楼2010-12-18 18:11:13







回复此楼
