Показать сообщение отдельно
  #1  
Старый 02.01.2013, 22:10
MahovIV MahovIV вне форума
Новичок
 
Регистрация: 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;
}
Ответить с цитированием