1. 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
2. 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;
Uses crt;
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
Bài tập 1: Viết chương trình nhập vào một số nguyên và kiểm tra xem
số vừa nhập là số chẵn hay số lẻ.
Program Kiemtratinhchanle;
Uses crt;
Var x:integer;
Begin
Write('Nhap vao mot so nguyen : '); Readln(x);
If (x MOD 2=0) Then
Writeln('So vua nhap vao la so chan')
Else
Writeln('So vua nhap vao la so le');
Readln;
End.
Bài tập 3: Viết chương trình tính tổng S = 1+2+...+N.
Program TinhTong;
Uses crt;
Var N,i,S:integer;
3. Begin
Clrscr;
Write('Nhap vao gia tri cua N :'); Readln(N);
S:=0;
For i:=1 to N do S:=S+i;
Writeln('Ket qua la :',S);
Readln;
End.
Bài tập 4: Viết chương trình nhập vào N số nguyên từ bàn phím. Hãy
tính và in ra màn hình tổng của các số vừa được nhập vào.
Ý tưởng: Dùng phương pháp cộng dồn. Cho vòng lặp FOR chạy từ 1 tới N, ứng với
lần lặp thứ i, ta nhập vào số nguyên X và đồng thời cộng dồn X vào biến S.
Program Tong;
Uses crt;
Var N,S,i,X : Integer;
Begin
Clrscr; S:=0;
For i:=1 To n Do
Begin
Write('Nhap so nguyen X= '); Readln(X);
S:=S+X;
End;
Writeln(‘Tong cac so duoc nhap vao la: ‘,S);
Readln;
End.
Bài tập 6: Viết chương trình nhập vào số nguyên N. In ra màn hình tất
cả các ước số của N.
Ý tưởng: Cho biến i chạy từ 1 tới N. Nếu N MOD i=0 thì viết i ra màn hình.
Uses Crt;
Var N,i : Integer;
Begin
Clrscr;
Write('Nhap so nguyen N= '); Readln(N);
For i:=1 To N Do
If N MOD i=0 Then Write(i:5);
Readln;
End.
Bài tập 7: Viết chương trình tìm USCLN và BSCNN của 2 số a, b được nhập vào từ
bàn phím.
Ý tưởng:
- Tìm USCLN: Lấy số lớn trừ số nhỏ cho đến khi a=b thì dừng. Lúc đó: USCLN=a.
- BSCNN(a,b) = a*b DIV USCLN(a,b).
Program Tim_USCLN_BSCNN;
4. Uses crt;
Var a,b, m,n:integer;
Begin
Write('Nhap a : '); Readln(a);
Write('Nhap b : '); Readln(b);
m:=a; n:=b;
While (m<>n) Do
Begin
If (m>n) Then m:=m-n Else n:=n-m;
End;
Writeln('USCLN= ',m);
Writeln('BSCNN= ',a*b DIV n);
Readln;
End.
Bài tập 8: Viết chương trình tìm các số có 3 chữ số sao cho: = a3 + b3 + c3.
Ý tưởng:
Dùng phương pháp vét cạn. Ta biết rằng: a có thể có giá trị từ 19 (vì a là số hàng
trăm), b,c có thể có giá trị từ 09. Ta sẽ dùng 3 vòng lặp FOR lồng nhau để duyệt qua
tất cả các trường hợp của a,b,c.
Ứng với mỗi bộ abc, ta sẽ kiểm tra: Nếu 100.a + 10.b + c = a3 + b3 + c3 thì in ra bộ
abc đó.
Program Timgiatri_abc;
Uses crt;
Var a,b,c : Word;
Begin
For a:=1 To 9 Do
For b:=0 To 9 Do
For c:=0 To 9 Do
If (100*a + 10*b + c)=(a*a*a + b*b*b + c*c*c) Then Writeln(a,b,c);
Readln;
End.
Bài tập 9: Viết chương trình nhập vào số tự nhiên N rồi thông báo lên màn hình số
đó có phải là số nguyên tố hay không.
Ý tưởng: N là số nguyên tố nếu N không có ước số nào từ 2 N div 2. Từ định nghĩa
này ta đưa ra giải thuật:
- Đếm số ước số của N từ 2 N div 2 lưu vào biến d.
- Nếu d=0 thì N là số nguyên tố.
Uses crt;
Var N,i,d : Word;
Begin
If N<2 Then Writeln(N,’ khong phai la so nguyen to’)
Else
Begin
d:=0;
For i:=2 To N div 2 Do
If (N MOD i=0) Then d:=d+1;
5. If d=0 Then Writeln(N,’ la so nguyen to’)
Else Writeln(N,’ khong phai la so nguyen to’);
End;
Readln;
End.
6. If d=0 Then Writeln(N,’ la so nguyen to’)
Else Writeln(N,’ khong phai la so nguyen to’);
End;
Readln;
End.