c语言解线性方程组计算一元二次方程的根。

10559人阅读
跟我一起学C++(6)
突然发现自己连一元二次方程怎么算的都不知道了。想了半天,拿起笔来才顺手些了给x2+2x+1=0.悔恨啊。
#include "iostream"
#include "cmath"
int main(){
double a,b,c;
double delta,x1,x2;
cout&&"输入3个系数a(a!=0),b,c"&&
cin&&a&&b&&c;
cout&&"a不能等于0!!!!不然这就不是一元二次方程式了"&&
delta=b*b-4*a*c;
if(delta==0){
cout&&"方程有两个实根:x1=x2="&&-b/(2*a)&&
if(delta&0) sign=1;
else sign=0;
delta=sqrt(fabs(delta));
x1=-b/(2*a);
x2=delta/(2*a);
cout&&"方程有两个不同的实根:x1="&&x1+x2&&"
x2="&&x1-x2&&
cout&&"方程无实根,有两个不同的复数根:x1="&&x1&&"+i"&&x2&&"
x2="&&x1&&"-i"&&x2&&
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:145836次
积分:1990
积分:1990
排名:第18948名
原创:44篇
评论:39条
(1)(1)(2)(1)(6)(2)(1)(5)(2)(1)(7)(2)(1)(6)(1)(1)(1)(1)(2)(1)(1)(9)怎么求一个一元二次方程的根用c语言
怎么求一个一元二次方程的根用c语言
09-03-23 &匿名提问
做判断,b^2-4ac若&0,那么无解(实数上无解),否则有解。等于0那么解就1个。 求解的方式:x1+x2=-b/a,x1*x2=c/a,c和a都为已知的,那么接下来就可以求解了。 至于循环怎么做我不知道,所以无法给出代码,C最多只能精确到小数后6位而已。
请登录后再发表评论!扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
下载作业帮安装包
扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
如何编程计算一元二次方程的根从键盘任意输入a,b,c的值,编程计算并输出一元二次方程ax2+bx+c=0的根,当a=0时,输出该方程不是一元二次方程,当a不等于0时,分b2-4ac>0,b2-4ac
扫二维码下载作业帮
拍照搜题,秒出答案,一键查看所有搜题记录
#include"stdio.h"#include"math.h"main(){float a,b,c,d[8];char x,y;\x05a=b=c=d[8]=0;printf("请输入a、b、c的值:\n");scanf("%3f%3f%3f",&a,&b,&c);d[0]=b*b-4*a*c;printf("%.3f",d[0]);if(a==0)printf("该方程...
为您推荐:
其他类似问题
扫描下载二维码本帖子已过去太久远了,不再提供回复功能。欢迎加入我们,一同切磋技术。 &
用户名: &&&
密 码: &
共有 15117 人关注过本帖
标题:一元二次方程ax2+bx+c=0,a,b,c的值由键盘输入,请编写等程序,求下列方式的 ...
等 级:新手上路
结帖率:100%
&&已结贴√
&&问题点数:20&&回复次数:3&&&
一元二次方程ax2+bx+c=0,a,b,c的值由键盘输入,请编写等程序,求下列方式的解
各位大侠,小弟刚开始自学C语言,太多的不懂,请大侠指教,在此谢过!!!
1、a等于0,b不等于0
2、a等于0,b等于0,c等于0
3、a等于0,b等于0,c不等于0
4、a不等于0,b平方减去4ac大于等于0
5、a不等于0,b平方减去4ac小于等于0
#include &math.h&
&&float a, b, c, d, pr, pi, x1, x2;
&&scanf(&%f%f%f&, &a, &b, &c);
&&printf(&a=%f, b=%f, c=%f\n&, a, b, c);
&&if(a==0)
&&&&&if(b!=0)
&&&&&&&&printf(&only one solution x=%f\n&, -c/b);
&&&&&&&&&if(b==0,c!=0)
&&&&&&&&&printf(&no solution\n&);
&&&&&&&&&else
&&&&&&&&&printf(&x is any value\n&);
&&&&&&d=b*b-4*a*c;
&&&&&& if(a!=0,0&=b*b-4*a*c)
&&&&&&&&& x1=(-b+sqrt(d))/2*a;
&&&&&&&&& x2=(-b+sqrt(d))/2*a;
&&&&&&&&& printf(&x1=%6.2f, x2=%6.2f\n&, x1, x2);
&&&&&&&&else
&&&&&&&&&&&pr=-b/(2*a);
&&&&&&&&&&&pi=-b/(2*a);
&&&&&&&&&&&printf(&x1=%6.2f+%6.2fi\n&, pr, pi);
&&&&&&&&&&&printf(&x2=%6.2f-%6.2fi\n&, pr, pi);
&&&&&&&&&}
&&&&&getch();
这个自己写的程序可以执行,但
pr=-b/(2*a);
pi=-b/(2*a);
printf(&x1=%6.2f+%6.2fi\n&, pr, pi);
printf(&x2=%6.2f-%6.2fi\n&, pr, pi);
计算的时候会出现附件中的结果
不知道该如何修改,谢谢各位大侠指教
附件: 您没有浏览附件的权限,请
搜索更多相关主题的帖子:
等 级:新手上路
各位大位给指点下,谢谢!
等 级:贵宾
威 望:14
帖 子:539
专家分:2471
&&得分:20&
回复 2楼 loneliness85
当Δ=b^2-4ac<0时,x={-b±[(4ac-b^2)^(1/2)]i}/2a(i是虚数单位)。
这是正确的求虚数根的公式, 你看看你写的代码
pr=-b/(2*a);
pi=-b/(2*a);
printf(&x1=%6.2f+%6.2fi\n&, pr, pi);
printf(&x2=%6.2f-%6.2fi\n&, pr, pi);
这是正确的根么?
pr=-b/(2*a);
pi=[(4ac-b^2)^(1/2)]i/2a;
改一下你的公式,应该没问题了。
想抽苏烟了。
等 级:新手上路
大哥,你还有这个完整的程序吗,我用这个运行不了,求帮忙啊
版权所有,并保留所有权利。
Powered by , Processed in 0.074212 second(s), 8 queries.
Copyright&, BCCN.NET, All Rights Reserved

我要回帖

更多关于 c语言解线性方程组 的文章

 

随机推荐