Proc17. Описать функцию RootsCount($$A$$, $$B$$, $$C$$) целого типа, определяющую количество корней квадратного уравнения $$A*x^2 + B*x + C = 0$$ ($$A$$, $$B$$, $$C$$ — вещественные параметры, $$A \not= 0$$). С ее помощью найти количество корней для каждого из трех квадратных уравнений с данными коэффициентами. Количество корней определять по значению дискриминанта: $$D = B^2 — 4*A*C$$.
Решение от Дмитрия:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# include <iostream> # include <windows.h> # include <cmath> # include <iomanip> # include <fstream> using namespace std; int RootsCount (double A, double B, double C); int main () { SetConsoleCP(1251); SetConsoleOutputCP(1251); double A, B, C; int answer = 0; // количество корней квадратного уравнения for (int i = 1; i < 4; ++i) { cout << "Введите число A: "; cin >> A; cout << "Введите число B: "; cin >> B; cout << "Введите число C: "; cin >> C; answer = RootsCount (A, B, C); cout << "Количество корней квадратного уравнения = " << answer << endl; } system ("pause"); return 0; } int RootsCount(double A, double B, double C) { int res; double D; // дискриминант res = 0; D = B * B -4 * A * C; if ( D < 0 ) {res = 0;} else if ( D == 0 ) {res = 1;} else if ( D > 0 ) {res = 2;} return res; } |
Другие задачи из раздела Proc можно посмотреть здесь.
Комментарии: