Hướng dẫn viết chương trình giải phương trình bậc 2 bằng Pascal, giải phương trình bậc 2 ax^2+bx+c=0 bằng Pascal. Mời các em cùng theo dõi bài học dưới đây do Hoàng Thùy Chi About biên soạn nhé.
Viết chương trình giải phương trình bậc 2 bằng Pascal
Bài tập: Viết chương trình giải phương trình bậc 2 (ax2+ bx + c =0) với a b c nhập vào từ bàn phím
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.
Giải phương trình bậc 2 ax^2+bx+c=0 bằng Pascal
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.
- Giải phương trình bậc 2 ax^2+bx+c=0 bằng Pascal
Video hướng dẫn giải phương trình bậc 2 bằng Pascal
Các em có thể xem video hướng dẫn viết chương trình giải phương trình bậc hai bằng Pascal:
16 Bài tập Pascal cơ bản có lời giải
16 Bài tập Pascal cơ bản có lời giải sẽ giúp các em học sinh làm quen và củng cố kiến thức, từ đó làm bài kiểm tra, bài thi môn Tin học hiệu quả.
Bài 1: Nhập vào 2 cạnh của một hình chữ nhật. In ra màn hình diện tích và chu vi của nó.
Program HINH_CHU_NHAT;
Uses Crt;
Var a,b,s,c: real;
Begin
Clrscr;
Writeln(‘ TINH DIEN TICH & CHU VI HINH CHU NHAT:’);
Writeln(‘————————————————————–‘);
Write(‘Nhap chieu dai=’); readln(a);
Write(‘Nhap chieu rong=’);readln(b);
s:=a*b;
c:=(a+b)*2;
Writeln(‘Dien tich hinh chu nhat la:’,s:6:2);
Writeln(‘Chu vi hinh chu nhat:’,c:6:2);
Readln;
End.
Bài 2: Nhập vào bán kính của hình tròn. In ra màn hình diện tích và chu vi của nó.
Program HINHTRON;
Uses Crt;
Var r,dt,cv:real;
Begin
Clrscr;
Writeln(‘TINH DIEN TICH & CHU VI HINH TRON:’);
Writeln(‘——————————————————‘);
Write (‘Nhap ban kinh R=’); readln(r);
dt:=pi*r*r;
cv:=2*pi*r;
Writeln(‘Dien tich hinh tron la:’,dt:6:2);
Writeln(‘Chu vi hinh tron la:’,cv:6:2);
Readln;
End.
Bài 3: Tính tam giác: Nhập vào ba số a,b,c bất kì. Kiểm tra xem nó có thể là độ dài ba cạnh hay không, nếu không thì in ra màn hình ‘Khong la ba canh cua mot tam giac’. Ngược lại, thì in diện tích, chu vi của tam giác ra màn hình.
Program TAMGIAC;
Uses crt;
Var a,b,c,s,p: real;
Begin
Clrscr;
Writeln(‘BAI TOAN TAM GIAC:’);
Writeln(‘———————————‘);
Write(‘nhap a =’);readln(a);
Write (‘nhap b =’);readln(b);
Write(‘nhap c =’);readln(c);
If ((a+b)>c)and((b+c)>a)and((a+c)>b) then
Begin
p:=(a+b+c)/2;
s:=sqrt(p*(p-a)*(p-b)*(p-c));
Writeln(‘Chu vi tam giac:’,2*p:4:2);
Writeln(‘Dien tich tam giac:’,s:4:2);
End
Else
Writeln(a,’, ‘, b,’, ‘, c, ‘ khong phai la ba canh cua tam giac’);
Readln;
End.
Bài 4: Viết chương trình giải phương trình bậc 1 (ax + b = 0)
Program GIAI_PHUONG_TRINH_BAC_NHAT;
Var a,b,x:real;
Begin
Clrscr;
Writeln(‘GIAI PHUONG TRINH BAC NHAT: AX + B=0’);
Writeln(‘————————————————————‘);
Write (‘Nhap a= ‘); readln(a);
Write (‘Nhap b= ‘);readln(b);
If(a=0) then
If(b=0) then Writeln(‘ Phuong trinh co vo so nghiem’) Else
writeln(‘ Phuong tring vo nghiem’)
Else
Writeln(‘Phuong trinh co nghiem x=’,-b/a:4:2); Readln;
End.
Bài 5: Viết chương trình giải bất phương trình bậc 1 (ax + b 0)
Program BAT_PHUONG_TRINH_BACI;
Uses crt;
Var a,b: real;
Begin
Clrscr;
Writeln(‘GIAI BAT PHUONG TRINH BAC NHAT: AX + B>=0’);
Writeln(‘———————————————————————-‘);
Write(‘nhap a=’);readln(a);
Write(‘nhap b=’);readln(b);
If a<>0 then
If a>0 then Writeln(‘Bat phuong trinh co nghiem: x>=’,-b/a:4:2) Else Writeln(‘Bat phuong trinh co nghiem: x<=’,b/a:4:2)
Else
If b>=0 then Writeln(‘Bat phuong trinh co vo so nghiem’) Else writeln(‘Bat phuong trinh vo nghiem’);
Readln;
End.
Bài 6: Viết chương trình giải phương trình bậc 2 (ax2 + bx + c =0)
Program GIAI_PHUONG_TRINH_BACII;
Uses crt;
Var a,b,c,d,x,x1,x2:real;
Begin
Writeln (‘GIAI PHUONG TRINH BAC II:’); Writeln(‘——————————————-‘);
Write (‘Nhap he so a=’);readln(a);
Write (‘Nhap he so b=’);readln(b); Write(‘Nhap he so c=’);readln(c);
If a=0 then
If b=0 then
If c=0 then Writeln (‘Phuong trinh co vo so nghiem’) Else Writeln (‘Phuong trinh vo nghiem’)
Else Writeln (‘Phuong trinh co mot nghiem: x=’,-c/b:4:2)
Else
Begin
d:=b*b-4*a*c;
If d=0 then
Writeln(‘Phuong trinh co nghiem kep: x=’,-b/(2*a):4:2) Else
If d<0 then
Writeln (‘Phuong trinh vo nghiem’) Else
Begin
x1:= (-b+sqrt(d))/(2*a);
x2:= (-b-sqrt(d))/(2*a);
Write (‘Phuong trinh co hai nghiem:’); Writeln (‘x1=’,x1:4:2,’ va x2=’,x2:4:2);
End;
End;
Readln;
End.
Bài 7: Tìm giá trị lớn nhất trong 4 số a, b, c, d (a, b, c, được nhập từ bàn phím).
Program TIM_SO_LON_NHAT;
Uses crt;
Var a, b, c, d,max:real; Begin
End.
Clrscr;
Writeln (‘TIM SO LON NHAT TRONG BON SO A, B, C, D’);
Writeln(‘—————————————————————‘);
Write (‘Nhap a=’); Readln(a);
Write (‘Nhap b=’); Readln(b); Write (‘Nhap c=’); Readln(c);
Write (‘Nhap d=’); Readln(d); max:=a;
If b>max then max:=b; If d>max then max:=d;
Writeln (‘So lon nhat la:’,max:4:2); Readln;
Bài 8: Tìm giá trị nhỏ nhất trong 4 số a, b, c, d (a, b, c, được nhập từ bàn phím).
Program TIM_SO_NHO_NHAT;
Uses crt;
Var a,b,c,d,min:real; Begin
Clrscr;
Writeln (‘TIM SO NHO NHAT TRONG BON SO A, B, C, D’);
End.
Writeln (‘—————————————————————‘);
Write (‘Nhap a=’); Readln(a);
Write (‘Nhap b=’); Readln(b);
Write (‘Nhap c=’); Readln(c);
Write (‘Nhap d=’); Readln(d); min:=a;
If b<min then min:=b;
If c<min then min:=c; If d<min then min:=d;
Writeln(‘So nho nhat la:’,min:4:2); Readln;
Bài 9: Giải hệ phương trình tuyến tính
Program GIAI_HE_HAI_AN; Uses crt;
Var a, b, c, d, m, n:real;
dx,dy,dd:real;
Begin
Clrscr;
Writeln (‘GIAI HE HAI AN:’); Writeln(‘———————————-‘);
Write (‘Nhap a=’);readln(a); Write (‘Nhap b=’);readln(b);
Write (‘Nhap c=’);readln(c);
Write (‘Nhap m=’);readln(m); Write (‘Nhap n=’);readln(n);
dd:=a*d-b*c;
dx:=m*d-b*n; dy:=a*n-c*m;
If dd=0 then
If (dx=0) and (dy=0) then
Writeln (‘He vo so nghiem hoac vo nghiem’)
Else writeln (‘He vo nghiem’)
Els
Begin
End;
Write (‘He co nghiem :’);
Writeln (‘x=’,dx/dd:4:2,’ va y=’,dy/dd:4:2);
End.
Readln;
Bài 10: Nhập vào thời gian 1 công việc nào đó là x giây. Hãy chuyển đổi và viết ra màn hình số thời gian trên dưới dạng bằng bao nhiêu giờ, bao nhiêu phút, bao nhiêu giây?
Program DOI_GIO_PHUT_GIAY;
Uses crt;
Var gio, phut,giay, x: longint; Begin
Clrscr;
Writeln (‘DOI SANG GIO PHUT GIAY’);
Writeln (‘————————————–‘);
Write (‘Nhap vao so giay: ‘); readln(x); gio:= x div 3600;
x:=x mod 3600;
phut:=x div 60;
x:=x mod 60;
Writeln (‘Ket qua = ‘, gio,’gio : ‘, phut, ‘phut : ‘, x, ‘giay’);
Readln;
End.
Bài 11: Nhập vào tâm và bán kính của một đường tròn. Sau đó nhập vào một điểm A(x, y) bất kì và kiểm tra xem nó có thuộc đường tròn hay không?
Program KIEM_TRA_DIEM_THUOC_DUONG_TRON; Uses crt;
Var x0,y0,xa,ya,d,r:real; Begin
Writeln(‘KIEM TRA DIEM THUOC DUONG TRON:’); Writeln(‘——————————————————–‘); Write(‘Nhap ban kinh R= ‘);readln(r);
Write(‘Nhap toa do tam duong tron = ‘); readln(x0, y0); Write(‘Nhap toa do diem a = ‘); readln(xa, ya);
d:=SQRT(SQR(xa-x0)+SQR(ya-y0)); If r=d then
Writeln(‘Diem A nam tren duong tron’)
Else
If d>r then Writeln(‘Diem A nam ngoai duong tron’) Else Writeln(‘Diem A nam trong duong tron’);
End.
Readln;
Bài 12: Tính xy (Với x, y là số thực). Program X_LUYTHUA_Y;
Uses crt;
Var x,y,z:real; Begin
Writeln(‘TINH X LUY THUA Y:’); Writeln(‘———————————-‘); Write(‘Nhap x = ‘); readln(x); Write(‘nhap y = ‘); readln(y);
If x>=0 then
Begin
Else
End
z:=exp(y*ln(x)); Writeln(‘x ^ y = ‘,z:4:2);
End.
Writeln(‘Khong tinh duoc do x la so am’); Readln;
Bài 13: Tính n!
Program TINH_N_GIAI_THUA; Uses crt;
Var i,n,gt:integer;
Begin
End.
Clrscr;
Writeln(‘ TINH N GIAI THUA:’); Writeln(‘———————————-‘); Write(‘Nhap n =’); readln(n);
gt:=1;
For i:=1 to n do gt:=gt*i; Writeln(n, ‘!= ‘,gt);
Readln;
Bài 14: Tính xn (Với n là số nguyên không âm). Program TINH_X_LUY_THUA_N;
Uses crt;
Var i,n,x:integer;
lt:real;
Begin
End.
Writeln(‘ TINH X LUY THUA Y:’); Writeln(‘———————————-‘); Write(‘Nhap x =’); readln(x); Write(‘Nhap n =’); readln(n);
lt:=1;
For i:=1 to n do lt:=lt*x;
Writeln(x, ‘^’,n,’ = ‘,lt:4:2); Readln;
End
Bài 15: Nhập vào một số nguyên không âm, kiểm tra xem nó có phải là số nguyên tố hay không?
Program SO_NGUYEN_TO; Uses crt;
Var i,n: integer; Begin
Clrscr;
Writeln(‘KIEM TRA SO NGUYEN TO:’); Writeln(‘—————————————-‘); Write (‘Nhap so can kiem tra n = ‘); readln(n); If (n=0) or (n=1) then
Writeln(n,’ Khong phai la so nguyen to’)
Else
Begin
End;
i:=1; Repeat
i:= i+1;
Until (n mod i= 0) or (i*i>n);
If i*i>n then Writeln (n,’ la so nguyen to’)
Else Writeln (n,’ khong phai la so nguyen to’);
End.
Readln;
Bài 16: In ra các số nguyên tố nhỏ hơn hoặc bằng N (N là số nguyên không âm được nhập từ bàn phím).
Program CAC_SO_NGUYEN_TO; Uses crt;
Var n,i,t: integer; Begin
Clrscr;
Writeln(‘IN RA CAC SO NGUYEN SO <=N’); Writeln(‘———————————————‘); Write(‘Nhap n = ‘);readln(n);
If n<2 then
Writeln(‘Khong co so nguyen to nao <=’,n)
Else
Begin
Writeln(‘Cac so nguyen to <= ‘,n,’ la:’); For i := 2 to n do
Begin
t:= 1;
End; Readln;
End.
End;
*****
Thầy cô chúc các em học tập thật tốt nhé.