Rezolvarea ecuatiei de gradul 2 in C++

CODE
#include<iostream.h> #include<math.h> void main() { float a,b,c,delta,x1,x2; cout<<"Coeficientul lui x patrat: "; cin>>a; cout<<"Coeficientul lui x: "; cin>>b; cout<<"Termenul liber: "; cin>>c; if(a==0&&b==0) cout<<"Eroare!Coeficientul lui x este 0."<<endl; else if(a==0) { x1=(-c/b); cout<<"Ecuatia de grad 1: "<<b<<"x+"<<c<<"=0"<<" are solutia: x="<<x1<<endl; } else if(b==0&&(-c/a)>=0) { x1=(sqrt(-c/a)); cout<<"Ecuatia "<<a<<"x*x+"<<c<<"=0"<<" are solutia x="<<x1<<endl; } else if(a!=0&&b!=0) { delta=(b*b-4*a*c); if(delta<0) cout<<"Ecuatia "<<a<<"x*x+"<<b<<"*x+"<<c<<"=0 nu are solutii pentru ca 'delta'<0."<<endl; else if(delta==0) { x1=(-b/2*a); cout<<"Delta=0."<<endl; cout<<"Ecuatia "<<a<<"x*x+"<<b<<"*x+"<<c<<"=0 are solutia: x="<<x1<<endl; } else if(delta>0) { x1=((-b+sqrt(delta))/2*a); x2=((-b-sqrt(delta))/2*a); cout<<"Ecuatia "<<a<<"x*x+"<<b<<"*x+"<<c<<"=0 are solutiile: x1="<<x1<<" si x2="<<x2<<endl; } } else cout<<"Ecuatia "<<a<<"x*x+"<<c<<"=0 nu are solutii."<<endl; }

Exemplu:

Pentru a=45; b=-69 si c=2 , in urma rularii programului se va afisa:
Ecutia 45x*x+-69*x+2=0 are solutiile: x1=3045.15 si x2=59.8493

0 comentarii:

Trimiteți un comentariu