Mình có viết code cho bài giải pt bậc 2 nhưng khi chạy nó không thực hiện các lệnh if
Kiểu như là từ dòng nhập số a,b,c và hiện lên chương trình xong thì chỉ cho ra “Press any key to continue”
Mình không biết là mình sai chỗ nào nữa. Xin mọi người góp ý kiến!
#include <iostream> //iostream
#include <cmath> //cmath
#include <cstdlib> //cstdlib
using namespace std;
int main()
{
float a,b,c;
cout<<"Nhap so a: ";
cin >> a;
cout<<"Nhap so b: ";
cin >> b;
cout<<"Nhap so c: ";
cin >> c;
cout<< "\nPhuong trinh cua ban la: " << a <<"x^2 + "<< b <<"x + "<< c <<" = 0 ?" <<endl;
system("pause");
if (a!=0 && b!=0 ) //Mình nghĩ vấn đề là ở chỗ này, nó không thực hiện lệnh để in ra màn hình
{
float Denta = (sqrt(pow(b,2) - 4 * a * c));
if (Denta > 0)
{
cout<< "Nghiem cua phuong trinh la: " << endl;
cout<< "x1= " << (-b + Denta) / (2*a);
cout<< "x2= " << (-b - Denta) / (2*a);
}
else
{
if (Denta == 0)
{
cout<< "Nghiem cua phuong trinh la x1=x2= "<< -(b)/(2*a) <<endl;
}
if (Denta < 0)
{
cout<< "Phuong trinh vo nghiem!"<<endl;
}
}
}
else
{
if (a==0 && b!=0)
{
cout<< "Nghiem cua phuong trinh la x= "<< -(c)/b <<endl;
}
if (a!=0 && b==0)
{
cout<< "Nghiem cua phuong trinh la: " << endl;
cout<< "x1= " << sqrt((-c)/a);
cout<< "x2= " << sqrt((-c)/a);
}
}
system("pause");
return 0;
}
Nhap so a: 4
Nhap so b: 2
Nhap so c: 3
Phuong trinh cua ban la: 4x^2 + 2x + 3 = 0 ?
Press any key to continue . . .
Press any key to continue . . .
Process return 0 (0x0) execution time : 3.730 s
Press any key to continue.
-