Nội dung chính
1. Viết chương trình giải phương trình bậc 2 (ax2+ bx + c =0)
Chú ý: Thuật toán trên không xét các trường hợp a, b, c bằng 0 như code ở dưới, code thì đầy đủ hơn.
2. Code pascal giải PT bậc II
Program GIAI_PHUONG_TRINH_BACII;
Uses CRT; {Su dung thu vien CRT}
Var a,b,c,D,x,x1,x2: real;
Begin
Clrscr; {xoa man hình, neu khong USES CRT thi lenh nay se bi bao loi}
Writeln('GIAI PHUONG TRINH BAC II: ');
Writeln('-------------------------------------------');
Write('Nhap he so a='); readln(a); {Viet thong bao nhap a vaf cho nhap he so a vao tu ban phim }
Write('Nhap he so b='); readln(b); {Viet thong bao nhap b vaf cho nhap he so b vao tu ban phim }
Write('Nhap he so c='); readln(c); {Viet thong bao nhap c vaf cho nhap he so c vao tu ban phim }
If a=0 then
If b=0 then
If c=0 then
Writeln('Phuong trinh co vo so nghiem') {a=0, b=0, c=0 }
Else Writeln('Phuong trinh vo nghiem') {a=0, b=0, c<>0}
Else Writeln('Phuong trinh co mot nghiem: x=',-c/b: 4: 2) {a=0, b<>0}
Else {a <> 0}
Begin
D:=b*b-4*a*c;
If D=0 then Writeln('Phuong trinh co nghiem kep: x=',-b/(2*a): 4: 2) {Delta =0}
Else
If D<0 then Writeln('Phuong trinh vo nghiem') {Delta <0}
Else {Delta >0}
Begin
x1:=(-b-sqrt(D))/(2*a);
x2:=(-b+sqrt(D))/(2*a);
Writeln('Phuong trinh co 2 nghiem la x1= ',x1:4:2 ,' va x2= ',x2:4:2);
End;
End;
Readln {Truoc END. thi khong can dau ;}
End.


hay
👍👍
Chương trình của bạn mình bấm chạy đúng nhưng với bộ kết quả a=0, b=9, c=0, nghiêm ra -0 là siu siu bậy nha =))))
Đây là dạng thiếu hay đủ vậy ạ??
Dạng đầy đủ nhưng nếu nhập a=0 thì vẫn xử lý, bạn xem code sẽ hiểu.