|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Квадратное уравнение
Я написал программу для решения квадратного уравнения 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; } |
#2
|
|||
|
|||
Ну и в чем проблема?
Вполне нормальное поведение для программы. Ответ же очевиден - 0. А то, что он с минусом, да еще с нулями после точки, то а чего вы хотели от вещественных числел при выводе с таким форматом. ЗЫ. Вообще, в данной ветке можно просто писать в вывод 0 и ничего не считать. |
#3
|
|||
|
|||
Цитата:
|
#4
|
|||
|
|||
пфф...Это нормально...не переживай))
|
#5
|
|||
|
|||
Цитата:
Может вы мне посоветуете, как избавиться от минуса? |
#6
|
|||
|
|||
Я нашёл проблему.
|
#7
|
|||
|
|||
ах от минуса? тогда дайте пудамать)
|
#8
|
|||
|
|||
Цитата:
|