Bài tập C++: Phương trình bậc 2


1. Đề bài viết chương trình giải phương trình bậc 2: ax² + bx + c = 0
Kết quả 1:
Nhap he so a: 0
Nhap he so b: 0
Nhap he so c: 0
Phuong trinh vo so nghiem
Press any key to continue . . .
Kết quả 2:
Nhap he so a: 9
Nhap he so b: 9
Nhap he so c: 9
Phuong trinh vo nghiem
Press any key to continue . . .
Kết quả 3:
Nhap he so a: -7
Nhap he so b: 9
Nhap he so c: 9
Phuong trinh co hai nghiem phan biet
x1: -0.660592
x2: 1.94631
Press any key to continue . . .
Kết quả 4:
Nhap he so a: 0
Nhap he so b: 9
Nhap he so c: 9
Phuong trinh co 1 nghiem: -1
Press any key to continue . . .
2. Code giải phương trình bậc 2:
#include<iostream>
using namespace std;
#include<cmath>
int main()
{
float a;
float b;
float c;
cout << "Nhap he so a: ";
cin >> a;
cout << "Nhap he so b: ";
cin >> b;
cout << "Nhap he so c: ";
cin >> c;
if(a == 0)
{
if(b == 0)
{
if(c == 0)
{
cout << "Phuong trinh vo so nghiem"<< endl;
}
else
{
cout << "Phuong trinh vo nghiem";
}
}
else
{
cout << "Phuong trinh co 1 nghiem: " << -c/b <<endl;
}
}
else
{
float delta = (b * b) - (4 * a * c);
if(delta == 0)
{
cout << "Phuong trinh co nghiem kep: " << -b/2*a;
}
else if(delta < 0)
{
cout << "Phuong trinh vo nghiem"<< endl;
}
else
{
cout << "Phuong trinh co 2 nghiem phan biet: ";
cout << "\nx1: " << (-b + sqrt(delta))/ (2*a);
cout << "\nx2: " << (-b - sqrt(delta))/ (2*a)<<endl;
}
}
system("pause");
return 0;
}

Nhận xét