Một số bài tập mẫu Pascal

Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down

Một số bài tập mẫu Pascal

Bài gửi  Admin on 16/10/2009, 5:53 pm

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;
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

Admin
Admin

Tổng số bài gửi: 4
Join date: 01/06/2009

http://tinhoc-thpt-thapcham.forum-viet.net

Về Đầu Trang Go down

BÀI TẬP MẪU TIN HỌC 11- CHƯƠNG 1, 2, 3

Bài gửi  linhtv on 10/11/2009, 11:19 am

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 2: Viết chương trình giải phương trình bậc nhất ax+b=0

Program Giaiptb1;
Uses Crt;
Var a,b,x : real;
Begin
Write('a = '); Readln(a);
Write('b = '); Readln(b);
If (a = 0) Then { Nếu a bằng 0 }
If (b = 0) Then { Trường hợp a = 0 và b = 0 }
Writeln('Phuong trinh co vo so nghiem')
Else { Trường hợp a=0 và b  0 }
Writeln('Phuong trinh vo nghiem')
Else { Trường hợp a  0 }
Begin
x:= -b/a;
Writeln('Phuong trinh co nghiem la :',x:6:2);
End;
Readln;
End.

Bài tập 3: Viết chương trình tính tổng S = 1+2+...+N.
Cách 1: Dùng vòng lặp FOR.

Program TinhTong;
Uses crt;
Var N,i,S:integer;
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.
Cách 2: Dùng vòng lặp WHILE.
Program TinhTong;
Uses crt;
Var N,i,S:integer;
Begin
Clrscr;
Write('Nhap vao gia tri cua N :'); Readln(N);
S:=0; i:=1;
While i<=N Do
Begin
S:=S+i;
i:=i+1;
End;
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 5: Viết chương trình tính số Pi với độ chính xác Epsilon, biết:
Pi/4 = 1-1/3+1/5-1/7+...

Ý tưởng: Ta thấy rằng, mẫu số là các số lẻ có qui luật: 2*i+1 với i=1,...,n. Do đó ta dùng i làm biến chạy. Vì tính số Pi với độ chính xác Epsilon nên không biết trước được cụ thể số lần lặp, do đó ta phải dùng vòng lặp WHILE . Có nghĩa là phải lặp cho tới khi t=4/(2*i+1)  Epsilon thì dừng.
Program Tinh_tong_Pi;
Uses Crt;
Const Epsilon=1E-4;
Var Pi,t:real;
i,s:Integer;
Begin
Pi:=4; i:=1; s:=-1;
t:=4/(2*i+1);
While t>Epsilon Do
Begin
Pi:=Pi+s*t;
s:=-s; i:=i+1;
t:=4/(2*i+1);
End;
Writeln('So Pi = ',Pi:0:4);
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;
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ừ 19 (vì a là số hàng trăm), b,c có thể có giá trị từ 09. 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;
If d=0 Then Writeln(N,’ la so nguyen to’)
Else Writeln(N,’ khong phai la so nguyen to’);
End;
Readln;
End.

Bài tập 10: Viết chương trình nhập tính diện tích tam giác, nhập độ dài cạnh a,b,c từ bàn phím. Công thức tính Diện tích là , p là nửa chu vi
Program Tam_Giac;
Var
a,b,c: Integer;
p,s: Real;
Begin
Writeln('CHUONG TRINH TINH DIEN TICH TAM GIAC');
Write('Cho biet canh thu nhat = '); Readln(a);
Write('Cho biet canh thu hai = '); Readln(b);
Write('Cho biet canh thu ba = '); Readln(c);
p := 0.5 * (a + b + c);
s := sqrt(p*(p-a)*(p-c)*(p-c));
Writeln('+Dien tich hinh tam giac = ',s:6:2,' met vuong');
Readln
End.


BÀI TẬP TỰ GIẢI


Bài tập 1: Viết chương trình giải phương trình bậc hai: ax2 + bx + c = 0, a0.
Gợi ý:
- Tính Delta=b*b-4*a*c.
- Biện luận:
Delta<0: Phương trình vô nghiệm.
Delta=0: Phương trình có nghiệm kép: x = -b/(2*a).
Delta>0: Phương trình có 2 nghiệm phân biệt: x1,2 = (-bSQRT(Delta))/(2*a).

Bài tập 2: Viết chương trình nhập vào từ bàn phím: giờ, phút, giây. Cọng thêm một số giây cũng được nhập từ bàn phím. Hãy in ra kết quả sau khi cọng xong.
Gợi ý:
- Gọi số giây được cộng thêm là: ss. Gán giây:=giây+ss.
- Nếu giây60 thì: phút:=phút + giây DIV 60 và giây:=giây MOD 60.
- Nếu phút60 thì: giờ:=giờ + phút DIV 60 và phút:=phút MOD 60.

Bài tập 3: Viết chương trình tìm Max, Min của 4 số: a, b, c, d.


Bài tập 4: Viết chương trình in ra màn hình các giá trị của bảng mã ASCII từ 0255.
Gợi ý:
Cho biến i chạy từ 0  255. In ra màn hình i và CHR(i).

Bài tập 5: Viết chương trình in ra màn hình các số nguyên từ 1 đến 100 sao cho cứ 10 số thì xuống dòng.
Gợi ý:
Cho biến i chạy từ 1  100. In ra màn hình i và kiểm tra: nếu i MOD 10=0 thì WRITELN.

Bài tập 6: Viết chương trình in ra màn hình bảng cữu chương.
Gợi ý:
Dùng 2 vòng lặp FOR lồng nhau: i là số bảng cữu chương (2...9), j là số thứ tự trong từng bảng cữu chương (1...10).
For i:=2 To 9 Do
For j:=1 To 10 Do Writeln(i,’x’,j,’=’,i*j);

Bài tập 7: Viết chương trình tính các tổng sau:
S0 = n! = 1*2*...*n {n giai thừa}
S1 = 1 + 1/2 + ... + 1/n
S2 = 1 + 1/2! + ... + 1/n!
S3 = 1 + x + x2/2! + x3/3! + ... + xn/n!
S4 = 1 - x + x2/2! - x3/3! + ... + (-1)nxn/n!
S5 = 1 + sin(x) + sin2(x) + ... + sinn(x).

Bài tập 8: Viết chương trình để tìm lời giải cho bài toán sau:
Trong giỏ vừa thỏ vừa gà,
Một trăm cái cẳng bốn ba cái đầu.
Hỏi có mấy gà mấy thỏ?

Bài tập 9: Viết chương trình để tìm lời giải cho bài toán sau:
Trăm trâu trăm bó cỏ
Bó lại cho tròn
Trâu đứng ăn năm
Trâu nằm ăn ba
Năm trâu nghé ăn một.
Hỏi có bao nhiêu trâu đứng, trâu nằm, trâu nghé?


Bài tập 10: Viết chương trình nhập vào một số nguyên dương. Hãy thông báo lên màn hình số đó có bao nhiêu chữ số và tổng các chữ số của số đó.
Gợi ý:
Dùng vòng lặp WHILE. Trong khi N>0 thì: lấy ra chữ số cuối cùng của N để tính bằng phép toán MOD 10, sau đó bỏ bớt đi chữ số cuối cùng của N bằng phép toán DIV 10.

Bài tập 11: Viết chương trình in ra màn hình tất cả các số nguyên tố từ 2 đến N. Với N được nhập từ bàn phím.

Bài tập 12: Viết chương trình phân tích một số ra thừa số nguyên tố. Ví dụ: N=100 sẽ in ra màn hình:
100 | 2
50 | 2
25 | 5
5 | 5
1 |

Bài tập 13: Số hoàn thiện là số tự nhiên có tổng các ước của nó (không kể chính nó) bằng chính nó. Viết chương trình kiểm tra xem một số được nhập vào từ bàn phím có phải là số hoàn thiện hay không? Ví dụ: 6, 28 là các số hoàn thiện.
Gợi ý:
- Tính tổng các ước số của N: từ 1  N div 2 lưu vào biến S.
- Nếu S=N thì N là số hoàn thiện.

Bài tập 14: Viết chương trình in ra các số nguyên từ 1 đến N2 theo hình xoắn ốc với N được nhập vào từ bàn phím. Ví dụ, với N=5 ta có:
1 2 3 4 5
16 17 18 19 6
15 24 25 20 7
14 23 22 21 8
13 12 11 10 9

linhtv

Tổng số bài gửi: 16
Join date: 01/06/2009
Age: 36
Đến từ: Ninh Thuận

Về Đầu Trang Go down

thay ui

Bài gửi  befa112 on 21/11/2010, 5:02 pm

thầy cho em hỏi 2 dấu (*) là sao zậy thầy thầy giải dùm em bài này nha abs(x**(x/y)-(y/x)**(1/3));thầy giải thích cho em 2 dấu * là sao

befa112

Tổng số bài gửi: 1
Join date: 21/11/2010
Age: 20
Đến từ: Ninh thuan

http://vn.myblog.yahoo.com/net-phuongnguyen

Về Đầu Trang Go down

Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang

- Similar topics

Permissions in this forum:
Bạn không có quyền trả lời bài viết