编程求ax2+bx+c=0方程的根,要求a,b,c从键盘入手,程序中求出方程的所有...
发布网友
发布时间:2024-04-08 04:48
我来回答
共3个回答
热心网友
时间:2024-08-15 02:30
#include "stdio.h"
#include "math.h"
void main()
{
float a;
float b;
float c;
//定义一元二次方程3个系数
float x1, x2;
//存一元二次方程的解
float delta ;
//存一元二次方程的判根式
/*从用户处获取输入*/
printf("分别输入3个系数:\n");
scanf("%f%f%f", &a, &b, &c );
delta= b*b - 4*a*c;
printf("△=%f",delta);
if ( delta > 0 )
{
x1 = ( -b + sqrt(delta) ) / (2*a);
x2 = ( -b - sqrt(delta) ) / (2*a);
printf("此方程有两个不同解:\n" );
printf("x1 = %f, x2 = %f\n", x1, x2);
}
else if ( delta == 0)
{
x1 = (-b) / (2*a);
x2 = x1;
printf("此方程有一个解:\n");
printf("x1 = x2 = %f \n", x1);
}
else
{
printf("方程无解\n");
}
}
热心网友
时间:2024-08-15 02:33
// 求一元二次方程的根.cpp : Defines the entry point for the console application.
//
#include <stdafx.h>
#include <math.h>
#include <iostream.h>
#include <stdio.h>
void solv_quadr_equa(float a,float b,float c); //函数声明,此函数用于求方程根
int main(int argc, char* argv[])
{ float x,y,z;
printf ("请输入a,b,c三个数"); //系统提示输入三个数
scanf ("%f%f%f",&x,&y,&z); //将三个数赋值给变量x,y,z。
solv_quadr_equa(x,y,z); //调用求根函数进行求解方程根
return 0;
}
void solv_quadr_equa(float a,float b,float c)
{
if(a==0)
if(b==0)
printf("no answer due to input eeor\n");//如果a,b皆为0,提示输入错误
else
printf("the single root is %f\n",-c/b);//如果a=0且b!=0,输出单根-c/b
else //如果a,b皆不为0则按以下步骤求根
{
double disc,twoa,term1,term2;
disc=b*b-4*a*c; //判断式
twoa=2*a; //分母2a
term1=-b/twoa;
term2=sqrt(fabs(disc))/twoa ;
if (disc<0.0) //b方减4ac为负数 无实根,输出虚根的实部和虚部
printf("complex root:\n real part=%f\n image part=%f\n",term1,term2);
else //b方减4ac大于等于0 有两个实根
printf("real root:\n root1=%f\n root2=%f\n",term1+term2,term1-term2);
}
}
用c语言或c++编程。 经编辑链接,测试无错。直接复制到空的工程里面即可运行,呵呵,你试一试,加油。
热心网友
时间:2024-08-15 02:33
什么语言?
编程求ax2+bx+c=0方程的根,要求a,b,c从键盘入手,程序中求出方程的所有...
printf("分别输入3个系数:\n");scanf("%f%f%f", &a, &b, &c );delta= b*b - 4*a*c;printf("△=%f",delta);if ( delta > 0 ){ x1 = ( -b + sqrt(delta) ) / (2*a);x2 = ( -b - sqrt(delta) ) / (2*a);printf("此方程有两个不同解:\n" );printf("x1 ...
...ax2+bx+c=0方程的根,要求a,b,c从键盘入手,程序中方程的所有解有哪些...
printf("the single root is %f\n",-c/b);//如果a=0且b!=0,输出单根-c/b else //如果a,b皆不为0则按以下步骤求根 { double disc,twoa,term1,term2;disc=b*b-4*a*c; //判断式 twoa=2*a; //分母2a term1=-b/twoa;term2=sqrt(fabs(disc))/twoa ;if (disc<...
...元二次方程ax2+bx+c=0的根。要求系数a,b,c从键盘输入在实数范围内求...
jud; printf ("输入二次方程的三个系数(第一个不能为0):"); scanf ("%f %f %f", &a, &b, &c); jud = b * b - 4 * a * c; //根的判别式 if (jud > 0) { printf ("该方程有两个不相等的实根:\n"); printf ("x1...
c语言 求ax^2+bx+c=0方程的根。a,b,c由键盘输入。
double k = b * b - 4 * a * c;if ( k > 0 ){ /*方程有两实根*/ x1 = ( -b - sqrt( k ) ) / ( 2 * a ); /*sqrt:开跟号; */ x2 = ( -b + sqrt( k ) ) / ( 2 * a );printf("Answer:\n");printf("\tx1 = %.2f\n", x1);printf("\tx2 = %.2...
...元二次方程ax2+bx+c=0的根。要求系数a,b,c从键盘输入在实数范围...
下面是求解一元二次方程的C语言代码:include <stdio.h> include <math.h> int main(){ double a, b, c, x1, x2, disc;printf("请输入一元二次方程的系数a, b, c: ");scanf("%lf %lf %lf", &a, &b, &c);disc = b * b - 4 * a * c;if (disc > 0) { x1 = (...
用c语言编写:求方程ax2+bx+c=0的实数根。a,b,c由键盘输入,a≠0且b2...
f1(a,b,c);else { if(t>1e-6) // t>0的情况 f2(a,b,c);else f3(a,b,c);} } void f1(float a1,float a2,float a3){ x1 = x2 = -a2/(2*a1);printf("x1 = x2 = %f\n",x1);} void f2(float b1,float b2,float b3){ float disc;disc = sqrt(b2*b2-4...
编写一程序有方程ax2+bx+c=0;输入a,b,c,判断是否有实根,如果有,求出...
请输入常数项c"<<endl; cin>>c; det=b*b-4*a*c; if(det>0) { x1=(float)((-b+sqrt(det))/(2*a)); x2=(float)((-b-sqrt(det))/(2*a)); cout<<"方程有两个不同根:"<<'\n'<<x1<<'\t'<<x2<<'\t'<<endl; } if (0==det) { x1=(float)(b/(...
跪求Matlab 编程 求方程ax2+bx+c=0的解,其中的a,b,c由键盘输入
新建一个script并输入以下指令:clear all clc a=input('请输入a:');b=input('请输入b:');c=input('请输入c:');x=roots([a b c])运行即可
求解任意的一元二次方程ax2+bx+c=0的根,其中a,b,c的值由键盘输入。要求...
double a,b,c,x1,x2,d;scanf("%lf%lf%lf",&a,&b,&c);if(a==0){ if(b==0){ if(0==c){ printf("恒等式:0+0+0=0\n");} else { printf("输入错误,不能构成等式!\n");} } else { printf("只能构成一元一次方程,x=%.2lf\n",0==-(double)c/b ? 0 : -(...
编程:求ax^2+bx+c=0方程的根,a,b,c由键盘输入,设b^2-4ac>0
14 2014-03-10 用c语言编写:求方程ax2+bx+c=0的实数根。a,b,c... 3 2014-04-03 编程题 求ax²+bx+c=0方程的根。a、b、c... 6 2018-01-30 C语言:求ax平方+bx+c=0方程的根,a,b,c由键盘输... 2018-01-09 编程求ax2+bx+c=0方程的根,要求a,b,c从键盘入手...更多...