Mình nhập giá trị theo thứ tự a, b, c là 1, 3, 2. Kết quả sẽ là -1, -2 nhưng máy nó ra x1,x2 đều là -1.5
Lỗi khi viết chương trình giải phương trình bậc hai bằng C++
Khi chạy chương trình bạn nhập giá trị là gì? Kết quả in ra là gì? Có thông báo lỗi gì?
Mình nhập giá trị theo thứ tự a, b, c là 1, 3, 2. Kết quả sẽ là -1, -2 nhưng máy nó ra x1,x2 đều là -1.5
Up full code mình xem??? debug thử
Bạn chưa nhập a b c mà tính delta rồi.
delta = b*b - 4ac lúc đầu chưa nhập sao đã thực hiện phép tính rồi? Lúc này nó chưa biết delta là gì
P/S:
[spoiler]Có sự nhầm lẫn gì đó ở đây [/spoiler]
Ý bạn là sao mình không hiểu?
cout << "Hello world!" << endl;
cout << "Giai Phuong Trinh Bac Hai"<< endl;
int a, b, c;
cin >> a>>b>>c;
delta = b*b - 4*a*c;
p/s : chuyển tính delta xuống
delta>0 thôi nhé bỏ dấu = đi
ủa mình không cần khai báo là delta dạng gì hả?
hehe mình quên mất :v
tất nhiên là phải khai báo rồi
ủa vậy lúc nãy mình cũng có khai báo mà?
#include<iostream>
#include<math.h>
using namespace std;
int main()
int a, b, c, delta;
cout << "nhap: ";
cin >> a >> b >> c;
delta = b*b - 4 * a*c;
if (delta==0)
{
cout << "phuong trinh co nghiem x=" << -b / 2 / a;
}
if (delta>0)
{
cout << "x1= " << ((-b - sqrt(delta)) / 2 / a) << endl << "x2= " << ((-b + sqrt(delta)) / 2 / a);
}
if (delta<0)
{
cout << "phoung trinh vo nghiem";
}
system("pause");
}
dấu chấm phẩy…
thiếu dấu ; ở sâu chỗ delta
à hiểu rồi. Ths bạn. Ủa mà cho mình hỏi mình không cần khai báo delta nó thuộc float hay int hả?
ở đây a,b,c bạn khai báo kiểu int nên delta cũng phải khai báo kiêu int