Головна » Статті » С++ » Приклади програм |
Розв'язання квадратного рівняння і статичні елементи
#include<iostream> #include<cstdlib> #include<cmath> using namespace std; class equation //клас "рівняння" { public: static void ans(float aa, float bb, float cc)//наша статична функція { static float a, b, c, D2;//статичні змінні, які получаємо ззовні a=aa; b=bb; c=cc; if(a!=0)//перевіряємо чи рівняння дійсно квадратне { D2=b*b-4*a*c;//шукаємо квадрат дискримінанта D2 if(D2>0)//коли квадрат дискримінанта більший від нуля { cout << "x1=" << (-b-sqrt(D2))/(2*a) << endl << "x2=" << (-b+sqrt(D2))/(2*a) << endl; } else if(D2==0)//коли дискримінант рівний нулю { cout << "x=" << -b/(2*a) << endl; } else//коли квадрат дискримінанта мінший нуля (результати - комплексні числа) { cout << -b/(2*a) << "+(" << sqrt(-D2)/(2*a) << ")i" << endl; cout << -b/(2*a) << "-(" << sqrt(-D2)/(2*a) << ")i" << endl; } } else cout << "It's linear equation!!!" << endl; } }; int main() { float a, b, c; cin >> a >> b >> c;//вводимо коефіцієнти рівняння equation::ans(a, b, c);//визиваємо статичну функцію system("pause"); } | |
Переглядів: 183 | | |
Всього коментарів: 0 | |