Pascal là ngôn ngữ lập trình đầu tiên mà những người muốn học lập trình cần tìm hiểu. Ngôn ngữ Pascal giúp chúng ta nhanh chóng làm quen với các câu lệnh, thủ tục và một số kiến thức cơ bản mà lập trình viên cần nắm vững. Tổng hợp các bài tập Pascal cơ bản, nâng cao chắc chắn sẽ là một hướng dẫn quan trọng với nhiều bài toán căn bản về tháp nước, tính tiền điện, và những vấn đề khác mà các bạn sẽ được học.
Trong tuyển tập các bài tập Pascal này, chúng tôi cung cấp tất cả những bài Pascal từ cơ bản đến nâng cao mà bất cứ ai học ngôn ngữ lập trình Pascal đều sẽ gặp. Ngôn ngữ lập trình Pascal không hề khó, đó chính là bước đầu để chúng ta làm quen và dần có được tư duy nhạy bén để làm những bài tập phức tạp hơn, xa hơn nữa là viết được một chương trình đầy đủ với nhiều câu lệnh phức tạp.
Contents
- 1 Một số dạng bài tập Pascal cơ bản
- 1.1 Bài 1: Tính diện tích và chu vi hình chữ nhật
- 1.2 Bài 2: Tính diện tích và chu vi hình tròn
- 1.3 Bài 3: Tính diện tích và chu vi tam giác
- 1.4 Bài 4: Giải phương trình bậc 1 (ax + b = 0)
- 1.5 Bài 5: Giải bất phương trình bậc 1 (ax + b >= 0)
- 1.6 Bài 6: Giải phương trình bậc 2 (ax^2 + bx + c = 0)
- 1.7 Bài 7: Tìm giá trị lớn nhất trong 4 số a, b, c, d
- 1.8 Bài 8: Tìm giá trị nhỏ nhất trong 4 số a, b, c, d
- 1.9 Bài 9: Kiểm tra điểm thuộc đường tròn
- 1.10 Bài 10: Chuyển đổi thời gian
Một số dạng bài tập Pascal cơ bản
Bài 1: Tính diện tích và chu vi hình chữ nhật
Program HINH_CHU_NHAT;
Uses Crt;
Var a, b, s, c: real;
Begin
Clrscr;
Writeln('TÍNH DIỆN TÍCH & CHU VI HÌNH CHỮ NHẬT:');
Writeln('-');
Write('Nhập chiều dài = ');
readln(a);
Write('Nhập chiều rộng = ');
readln(b);
s := a * b;
c := (a + b) * 2;
Writeln('Diện tích hình chữ nhật là: ', s:6:2);
Writeln('Chu vi hình chữ nhật là: ', c:6:2);
Readln;
End.
Bài 2: Tính diện tích và chu vi hình tròn
Program HINH_TRON;
Uses Crt;
Var r, dt, cv: real;
Begin
Clrscr;
Writeln('TÍNH DIỆN TÍCH & CHU VI HÌNH TRÒN:');
Writeln('-');
Write('Nhập bán kính R = ');
readln(r);
dt := pi * r * r;
cv := 2 * pi * r;
Writeln('Diện tích hình tròn là: ', dt:6:2);
Writeln('Chu vi hình tròn là: ', cv:6:2);
Readln;
End.
Bài 3: Tính diện tích và chu vi tam giác
Program TAM_GIAC;
Uses crt;
Var a, b, c, s, p: real;
Begin
Clrscr;
Writeln('BÀI TOÁN TAM GIÁC:');
Writeln('-');
Write('Nhập a = ');
readln(a);
Write('Nhập b = ');
readln(b);
Write('Nhập 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 giác: ', 2 * p:4:2);
Writeln('Diện tích tam giác: ', s:4:2);
End
Else
Writeln(a, ', ', b, ', ', c, ' không phải là ba cạnh của một tam giác');
Readln;
End.
Bài 4: 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('GIẢI PHƯƠNG TRÌNH BẬC NHẤT: AX + B = 0');
Writeln('-');
Write('Nhập a = ');
readln(a);
Write('Nhập b = ');
readln(b);
If (a = 0) then
If (b = 0) then
Writeln('Phương trình có vô số nghiệm')
Else
Writeln('Phương trình vô nghiệm')
Else
Writeln('Phương trình có nghiệm x = ', -b / a:4:2);
Readln;
End.
Bài 5: 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('GIẢI BẤT PHƯƠNG TRÌNH BẬC NHẤT: AX + B >= 0');
Writeln('-');
Write('Nhập a = ');
readln(a);
Write('Nhập b = ');
readln(b);
If a <> 0 then
If a > 0 then
Writeln('Bất phương trình có nghiệm: x >= ', -b / a:4:2)
Else
Writeln('Bất phương trình có nghiệm: x <= ', -b / a:4:2)
Else
If b >= 0 then
Writeln('Bất phương trình có vô số nghiệm')
Else
Writeln('Bất phương trình vô nghiệm');
Readln;
End.
Bài 6: Giải phương trình bậc 2 (ax^2 + bx + c = 0)
Program GIAI_PHUONG_TRINH_BACII;
Uses crt;
Var a, b, c, d, x, x1, x2: real;
Begin
Writeln('GIẢI PHƯƠNG TRÌNH BẬC II:');
Writeln('-');
Write('Nhập hệ số a = ');
readln(a);
Write('Nhập hệ số b = ');
readln(b);
Write('Nhập hệ số c = ');
readln(c);
If a = 0 then
If b = 0 then
If c = 0 then
Writeln('Phương trình có vô số nghiệm')
Else
Writeln('Phương trình vô nghiệm')
Else
Writeln('Phương trình có một nghiệm: x = ', -c / b:4:2)
Else
Begin
d := b * b - 4 * a * c;
If d = 0 then
Writeln('Phương trình có nghiệm kép: x = ', -b / (2 * a):4:2)
Else
If d < 0 then
Writeln('Phương trình vô nghiệm')
Else
Begin
x1 := (-b + sqrt(d)) / (2 * a);
x2 := (-b - sqrt(d)) / (2 * a);
Write('Phương trình có hai nghiệm: ');
Writeln('x1 = ', x1:4:2, ' và 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
Program TIM_SO_LON_NHAT;
Uses crt;
Var a, b, c, d, max: real;
Begin
Clrscr;
Writeln('TÌM SỐ LỚN NHẤT TRONG BỐN SỐ A, B, C, D');
Writeln('-');
Write('Nhập a = ');
Readln(a);
Write('Nhập b = ');
Readln(b);
Write('Nhập c = ');
Readln(c);
Write('Nhập d = ');
Readln(d);
max := a;
If b > max then
max := b;
If d > max then
max := d;
Writeln('Số lớn nhất là: ', max:4:2);
Readln;
End.
Bài 8: Tìm giá trị nhỏ nhất trong 4 số a, b, c, d
Program TIM_SO_NHO_NHAT;
Uses crt;
Var a, b, c, d, min: real;
Begin
Clrscr;
Writeln('TÌM SỐ NHỎ NHẤT TRONG BỐN SỐ A, B, C, D');
Writeln('-');
Write('Nhập a = ');
Readln(a);
Write('Nhập b = ');
Readln(b);
Write('Nhập c = ');
Readln(c);
Write('Nhập d = ');
Readln(d);
min := a;
If b < min then
min := b;
If c < min then
min := c;
If d < min then
min := d;
Writeln('Số nhỏ nhất là: ', min:4:2);
Readln;
End.
Bài 9: Kiểm tra điểm thuộc đường tròn
Program KIEM_TRA_DIEM_THUOC_DUONG_TRON;
Uses crt;
Var x0, y0, xa, ya, d, r: real;
Begin
Writeln('KIỂM TRA ĐIỂM THUỘC ĐƯỜNG TRÒN:');
Writeln('-');
Write('Nhập bán kính R = ');
readln(r);
Write('Nhập tọa độ tâm đường tròn = ');
readln(x0, y0);
Write('Nhập tọa độ điểm A = ');
readln(xa, ya);
d := sqrt(sqr(xa - x0) + sqr(ya - y0));
If r = d then
Writeln('Điểm A nằm trên đường tròn')
Else
If d > r then
Writeln('Điểm A nằm ngoài đường tròn')
Else
Writeln('Điểm A nằm trong đường tròn');
Readln;
End.
Bài 10: Chuyển đổi thời gian
Program DOI_GIO_PHUT_GIAY;
Uses crt;
Var gio, phut, giay, x: longint;
Begin
Clrscr;
Writeln('ĐỔI SANG GIỜ PHÚT GIÂY');
Writeln('-');
Write('Nhập vào số giây: ');
readln(x);
gio := x div 3600;
x := x mod 3600;
phut := x div 60;
x := x mod 60;
Writeln('Kết quả = ', gio, ' giờ : ', phut, ' phút : ', x, ' giây');
Readln;
End.
………………………………………
Download tài liệu để xem thêm chi tiết.