C++编程题,急求答案!!

来源:百度知道 编辑:UC知道 时间:2024/05/28 09:23:47
求方程ax2+bx+c=0的根,用三个函数分别求当b2-4ac大于0、等于0和小于0时的根,并输出结果。( a、b、c的值从主函数中由键盘输入获得。)

#include <iostream.h>
#include<math.h>
void f1()
{
cout<<"没实根";
}
void f2(int a,int b,int c)
{
cout<<-b/(2*a);
}
void f3(int a,int b,int n)
{
cout<<(-b+pow(n,0.5))/(2*a)<<"\n"<<(-b-pow(n,0.5))/(2*a);
}
void main()
{
float a,b,c,n;
cin>>a>>b>>c;
n=b*b-4*a*c;
if(n<0)f1();
else if(n==0)f2(a,b,c);
else f3(a,b,n);
}

#include<stdio.h>
#include<math.h>
void main()
{
float a,b,c,x1,x2,m,n,t;
double p,q;
printf("Please enter a,b,c!\n");
scanf("%f%f%f",&a,&b,&c);
m=b*b-4*a*c;
n=4*a*c-b*b;
t=-b/(2*a);
p=sqrt(m)/(2*a);
q=sqrt(n)/(2*a);
if (a!=0)
{
if (m>=0)
{
x1=t+p;
x2=t-p;
printf("x1=%.1f,x2=%.1f\n",x