Я работаю над школьным заданием, которое требует использования квадратного уравнения для нахождения корней ax^2+bx+c=0 с b и c в качестве входных данных.
#include <cmath>
#include <iostream>
using namespace std;
int main()
{
int a, b, c;
cout << "Enter coefficients a b c: " << endl;
cin >> a >> b >> c;
double r1, r2;
r1=((-1)*b+sqrt(b*b-4*a*c))/2*a;
r2=((-1)*b-sqrt(b*b-4*a*c))/2*a;
cout << "The roots are: " << r1 << " and " << r2 << endl;
return 0;
}
Однако, когда я ввожу 2 -8 8, правильным ответом будет 2 и 2, но я получаю 8 и 8 после запуска программы. Любая идея, что я делаю неправильно?
(2*a)
. Голосование за закрытие как простая опечатка. Примечание:-1*b
можно записать просто как-b
. - person Sergey Kalinichenko   schedule 22.09.2017