kod

kod


#include <windows.h> 

#include <iostream> 

#define _USE_MATH_DEFINES 

#include <math.h> 

#include<cmath> 

using namespace std;

int main() {


setlocale(LC_ALL, "Russian");


double a, b, c, x, xx1, xx2, x1, x2, x3, x4;


// ввод и проверка


cout<< "Введите значение a: ";

std::cin >> a;

if (!std::cin)

{

std::cout << "ОШИБКА ВВОДА! Программа завершена. " << endl; system("pause");

return 0;

};


cout<< "Введите значение b: ";

std::cin >> b;

if (!std::cin)

{

std::cout << "ОШИБКА ВВОДА! Программа завершена. " << endl; system("pause");

return 0;

};


cout <<"Введите значение c: ";


std::cin >> c;

if (!std::cin)

{

std::cout << "ОШИБКА ВВОДА! Программа завершена. " << endl; system("pause");

return 0;

};

// вычисления


if ((b*b - 4 * a*c) >= 0) //Если дискриминант больше или равен 0 

{


if ((b*b - 4 * a*c) == 0) { //Если дискриминант равен нулю, корень один

x1 = -1 * b / (2 * a);

cout << "Корень равен " << x1 << endl;

} else {


if ((-b + sqrt(b*b - 4 * a*c)) / (2 * a) >= 0) { //проверка на отрицательность под корнем

x1 = sqrt((-b + sqrt(b*b - 4 * a*c)) / (2 * a));

cout << "Корень равен " << x1 << endl;

x2 = -1 * sqrt((-b + sqrt(b*b - 4 * a*c)) / (2 * a));

cout << "Корень равен " << x2 << endl;

}

if ((-b - sqrt(b*b - 4 * a*c)) / (2 * a) >= 0) { //проверка на отрицательность под корнем

x3 = sqrt((-b - sqrt(b*b - 4 * a*c)) / (2 * a));

cout << "Корень равен " << x3 << endl;


x4 = -1 * sqrt((-b - sqrt(b*b - 4 * a*c)) / (2 * a));

cout << "Четвертый корень равен " << x4 << endl;

}

}

}


else // если дискриминант меньше 0

{

cout<< "Дискриминант меньше 0, корни невещественные."<< endl; 

}



system("pause");

return 0;

}

Report Page