02.01.2013, 22:10
|
Новичок
|
|
Регистрация: 30.12.2012
Сообщения: 77
Репутация: 10
|
|
Квадратное уравнение
Я написал программу для решения квадратного уравнения c коэффициентами A, B и C. Однако призначениях A = 1, B = 0 и C = 0 программа выдаёт результат -0.000000. Программа выглядит вот так:
Код:
#include <stdio.h>
#include <math.h>
#include <conio.h>
int main() {
double x1, x2, x, A, B, C;
scanf("%lf %lf %lf", &A, &B, &C);
if(A == 0 && B == 0 && C == 0)
printf("INFINITY");
else
if(A==0 && B == 0 && C!=0)
printf("NO SOLUTIONS");
else
if(A!=0 && B == 0 && C == 0)
{
x = -B/(2*A);
printf("%lf\n", x);
}
else
if(A!=0 && B!=0 && C == 0)
{
x1=(-B -sqrt(B*B -4*A*C))/(2*A);
x2=(-B +sqrt(B*B -4*A*C))/(2*A);
printf("%lf ", x1);
printf("%lf\n", x2);
}
else
if(B*B -4*A*C == 0)
{
x=-B/(2*A);
printf("%lf\n", x);
}
else
{
x1=(-B -sqrt(B*B -4*A*C))/(2*A);
x2=(-B +sqrt(B*B -4*A*C))/(2*A);
printf("%lf ", x1);
printf("%lf\n", x2);
}
getch();
return 0;
}
|