1. Составить блок схему алгоритма и написать программу на языке программирования С++, вычисления корней квадратного уравнения, с проверкой вводимого значения а на ноль. Рассмотреть все возможные варианты решения. 2. Сделать описание программы.
3. Отчет оформить в документе WORD.
Квадратное уравнение — это уравнение вида ax2 + bx + c = 0, где коэффициенты a, b и c — произвольные числа, причем a ≠ 0.
все квадратные уравнения можно условно разделить на три класса:
1. Не имеют корней;
2. Имеют ровно один корень;
3. Имеют два различных корня.
Для определения количества корней квадратно уравнения нужно вычислить— дискриминант -D = b2 − 4ac.
Пусть дано квадратное уравнение ax2 + bx + c = 0. Тогда дискриминант — это просто число D = b2 − 4ac.
1. Если D 0, корней будет два.
2. Если D = 0, есть ровно один корень;
3. Если D > 0, корней будет два.
Код программы:
#include <iostream>
#include <locale>
using namespace std;
int main() {
setlocale(LC_ALL, "Russian");
double D, a, b, c, x1, x2;
cout<<"Введите коэффициент a" << endl;
cin >> a;
if (a == 0) {
cout << "Ошибка ввода! Коэффициент a не должен равняться 0" << endl;
return 0;
}
cout << "Введите коэффициент b" << endl;
cin >> b;
cout << "Введите коэффициент c" << endl;
cin >> c;
cout << "\nВаше уравнение: " << a << "x^(2) + " << b << "x + " << c << endl;
D = sqrt(b*b - 4 * a * c);
if (D >= 0) {
if (D == 0) {
x1 = (-b) / (2 * a);
cout << "x1 = " << x1 << endl;
}
else {
x1 = (-b - D) / (2 * a);
x2 = (-b + D) / (2 * a);
cout << "x1 = " << x1 << endl;
cout << "x2 = " << x2 << endl;
}
}
else
cout << "\nУравнение не имеет корней (D < 0)" << endl;
return 0;
}