1. Trang chủ
  2. » Giáo án - Bài giảng

BÀI TẬP PASCAL LỚP 11

29 5,5K 8

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 29
Dung lượng 195,5 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

CÁC BÀI TẬP PASCAL TỪ CƠ BẢN ĐẾN NÂNG CAO CỦA LỚP 11. GIÚP CÁC EM HỌC SINH NẮM VỮNG KIẾN THỨC BÀI HỌC HƠN SAU KHI HỌC TIẾT LÝ THUYẾT TRÊN LỚP. TÀI LIỆU CÓ 27 TRANG. HY VỌNG CÓ THỂ GIÚP CÁC THẦY CÔ TRONG VIỆC GIẢI QUYẾT CÁC BÀI TẬP PASCAL.

Trang 2

Phần I: CÁC BÀI T Ậ P C B Ơ ẢN

Bài 1: 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 Program TIM_SO_LON_NHAT;

Write('Nhap d='); Readln(d); max:=a;

If b>max then max:=b; If c>max then max:=c; if d>max then max:=d;

Writeln('So lon nhat la: ',max: 4: 2);

Writeln(‘nhap so thu nhat’); readln(a);

Writeln(‘nhap so thu hai’); readln(b);

Writeln(‘nhap so thu ba’); readln(c);

If(a+b>c) And(a+c>b) And(b+c>a) then

Begin

Cv:=a+b+c; p:=c/2; s:=sqrt(p*(p-a)*(p-b)*(p-c));

Writeln(‘ba so vua nhap la ba canh cua tam giac’);

Writeln(‘ chu vi cua tam gia la’, cv: 4: 2, ‘ dien tich cua tam giac la’, s:6:2);

Trang 3

Writeln(‘nhap gia toc’); readln(g);

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

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

Trang 4

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’)

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')

Uses crt;

Var gio, phut,giay, x: longint;

Trang 5

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 7: 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?

Write('Nhap ban kinh R= '); readln(r);

Write('Nhap hoanh do tam duong tron = '); readln(x0);

Write('Nhap tung do tam duong tron = '); readln(y0);

Write('Nhap hoanh do diem a = '); readln(xa);

Write('Nhap tung do diem a = '); readln(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');

Writeln('*Duong tron thu nhat');

Write(' +Ban kinh: '); Readln(R1);

Write(' +Toa do x: '); Readln(x1);

Write(' +Toa do y: '); Readln(y1);

writeln;

Writeln('*Duong tron thu hai');

Write(' +Ban kinh: '); Readln(R2);

Write(' +Toa do x: '); Readln(x2);

Write(' +Toa do y: '); Readln(y2);

Kc:=Sqrt(Sqr(x1 – x2) + Sqr(y1 – y2));

Trang 6

Tong:=R1 + R2; Hieu:=ABS(R1 – R2);

If (Kc = 0) AND (Hieu = 0) Then

Writeln('-Hai duong tron trung nhau')

Else

If (Hieu > Kc) Then

Writeln('-Hai duong tron long nhau')

Else If (Tong = Kc) OR (Hieu = Kc) Then

Writeln('-Hai duong tron tiep xuc nhau')

Else If (Tong > Kc) AND (Hieu < Kc) Then

Writeln('-Hai duong tron cat nhau ')

Else If (Tong < Kc) Then

Writeln('-Hai duong tron o ngoai nhau-');

Trang 7

Write (' Doc Ngay: '); Readln ( Ngay );

Write (' Doc Thang: '); Readln ( Thang );

Write (' Doc Nam: '); Readln ( Nam );

Nam:=1900 + ( Nam mod 1900 );

0: Writeln (‘ngay ’,ngay,’ thang ',thang,’ nam ’,nam,’ la ngay Chu Nhat ');

1: Writeln ('ngay ’,ngay,’ thang ',thang,’ nam ’,nam,’ la ngay Thu Hai ');

2: Writeln ('ngay ’,ngay,’ thang ',thang,’ nam ’,nam,’ la ngay Thu Ba ');

3: Writeln (‘ngay ’,ngay,’ thang ',thang,’ nam ’,nam,’ la ngay Thu Tu ');

4: Writeln (‘ngay ’,ngay,’ thang ',thang,’ nam ’,nam,’ la ngay Thu Nam ');

5: Writeln ('ngay ’,ngay,’ thang ',thang,’ nam ’,nam,’ la ngay Thu Sau ');

6: Writeln ('ngay ’,ngay,’ thang ',thang,’ nam ’,nam,’ la ngay Thu Bay ');

Write (' So bao danh: '); Readln( SBD );

Write (' Diem toan: '); Readln( Toan );

Write (' Diem ngoai ngu: '); Readln( Ngoaingu );

Write (' Diem van: '); Readln ( Van );

Tongdiem:=Toan + Van + Ngoaingu;

Writeln (' Phieu Bao Diem ');

Writeln (' So bao danh: ', SBD );

Writeln (' Diem van: ', Van );

Writeln (' Diem toan: ', Toan );

Writeln (' Diem ngoai ngu: ', Ngoaingu);

Writeln (' Tong diem: ', Tongdiem);

If Tongdiem >= 15 Then

Writeln(' Ban da trung tuyen ')

Else Writeln(' Ban khong trung tuyen ');

Trang 8

Nếu là “+”, in kết qu ả của tổng lên màn hình.

Nếu là “-”, in kết qu ả của hiệu lên màn hình.

Nếu là “/”, in kết qu ả c ủ a th ươ ng lên màn h ình.

Nếu là “*”, in kết qu ả của tích lên màn hình Nếu là “+”, in kết qu ả của tổng lên màn hình.

Nếu là “+”, in kết qu ả của tổng lên màn hình.

PHẦN II: CÂU LỆNH CÓ CẤU TRÚC

Bài 12 Cho s ố t ự nhiên n, hãy lập trình đ ể tính các tổng sau:

Trang 10

Write (' nhap co so a =: '); Readln(a);

Write (' nhap so mu n =: '); Readln(n);

Writeln(‘nhap so thu nhat ’); readln(a);

Writeln(‘nhap so thu hai ’); readln(b);

Writeln(‘uoc chung lon nhat cua ‘,a,’ va ’,b,’ la ‘,uc);

Writeln(‘boi chung nho nhat cua ‘,a,’va ’,b,’ la ‘,bc);

d Tính trung bình các phần t ử ươ d ng trong m ảng

e Tìm v ịtrí đầu tiên của phần t ử =k với k nhập t ừ bàn phím.

f Tìm v ịtrí phần t ử =k với k nhập t ừ bàn phím, nếu có nhiều phần t ử =k thì hiển

th ịra màn hình tất c ả v ịtrí phần t =k đó ử

g Đếm s ố ượng phần t l ử là nguyên t ố trong mảng.

h Kiểm tra mảng vừa nhập có phải là cấp s ố cộng hay không?

i Sắp xếp mảng theo th ứ t ự ă t ng d ần các phần t ử và hiển th ịra màn hình mảng

Trang 11

i, k,demd, s, demnt, tg,n, d, dd,j : integer;

For i:=1 to n do if A[i]>0 then demd:=demd+1;

Writeln(‘ so luong phan tu duong cua mang la’, demd);

{ -Cau b -}

s:=0;

For i:=1 to n do if A[i]>0 then s:=s+ A[i];

Writeln(‘ tong cac phan tu duong cua mang la’, s);

J:=1;

While (j<=n) And (A[j]<>k) do j:=j+1;

If j> n then Writeln(‘khong co gia tri ’, k, ’ trong mang’)

Else Writeln(k, ‘ nam o vi tri thu ’, j,’ trong mang’);

{ -Cau f -}Writeln(‘ nhap gia tri can tim vi tri ’); readln(k);

J:=1; writeln(‘cac vi tri xuat hien cua ’,k,’ trong mang la’);

Trang 12

While (j<=n) And (A[j]-A[j-1]=d) do j:=j+1;

if j>n then Writeln(‘ mang vua nhap la cap so cong’)

else Writeln(‘ mang vua nhap khong phai la cap so cong’);

Writeln(‘mang sau khi duoc sap xep la’);

For i:=1 to n do write(A[i]: 5);

var a: array[1 100] of integer;

var i,n,j, tg,max, vt: integer;

Trang 13

for i:=1 to n do if b[i]>max then max:=b[i];

write(' So xuat hien nhieu nhat la ');

for i:=1 to n do

if max=b[i] then write(st[i],' ');

write(' -xuat hien - ',max,' –lan ');

Readln

End

Bài 16 Vi ế t ch ươ ng tr ình nhập mảng gồm n (n<=100) phần t ử rồi chèn vào một số bất k ỳ vào một v ị trí nào đó trong m ảng, s ố cần chèn và v ịtrí chèn nhập t ừ bàn phím.

Program Chen;

Trang 14

Writeln(' MANG TRUOC KHI CHEN ');

For i:=1 To spt Do Write(a[i]: 6);

Writeln('MANG SAU KHI CHEN');

For i:=1 To spt Do Write(a[i]: 6);

Trang 15

Writeln(' MANG TRUOC KHI XOA ');

Write('-Vi tri muon xoa: '); Readln(vitri);

For i:=vitri to spt - 1 Do a[i]:=a[i+1];

Trang 16

Write('-Mang con lai: ');

For i:=1 to n Do Write(a[i]: 8);

Writeln;

Writeln(' Bam phim <Enter> de ket thuc ');Readln

End

Trang 17

For ch:='A' to 'Z' Do a[ch]:=0 ;

Writeln (' Go phim 50 lan ') ;

Write(' Nhap xau St = '); Readln(St);

dx:=True; i:=1; len:=Length(St);

While dx And (i<=(len div 2)) do

Begin

dx:=(St[i] = St[len - i+1]);

I:=i+1;

End;

If dx then Write(' St la xau doi xung ')

Else Write(St,’ khong phai la xau doi xung ') ;

Readln;

END

Trang 18

Bài tập 3: Ch ươ ng tr ình nhập vào h ọ tên của m ộ t ng ườ i sau đó xóa h ết ký t ự trắng

If Hoten[1] in Chu then Hoten[1]:=Upcase(Hoten[1]);

For i:=2 to len do

If (Hoten[i-1]=#32)And(Hoten[i] in Chu) then

Trang 19

While (s[lengh(s)] =’ ‘ do Delete(s,length(s),1);

While pos(‘ ‘,s)<>0 do Delete(s,pos(‘ ‘,s),1);

Writeln(‘ xau sau khi xoa het ky tu trang du thua la’, s);

While (s[lengh(s)] =’ ‘ do Delete(s,length(s),1);

While pos(‘ ‘,s)<>0 do Delete(s,pos(‘ ‘,s),1);

K:=length(s);

For i:=1 to k do if ( s[i]=’ ‘ )And( s[i+1]<>’ ‘) do upcase(s[i+1]);

Writeln(‘xau sau khi dieu chinh la’,s);

Readln

End

Bài tập phần bản ghi, file

Bài tập 1: Ch ươ ng tr ình nhập danh sách học sinh gồm H ọ tên, tuổi, lớp của học sinh,in ra danh sách vừa nhập

Trang 20

Writeln('Thong tin hoc sinh thu ',i);

Write('Cho ho lot: '); Readln(ds[i].holot);

Write('Cho ten: '); Readln(ds[i].ten);

Write('Cho tuoi: '); Readln(ds[i].tuoi);

Write('Cho lop: '); Readln(ds[i].lop);

Trang 21

If (ds[i].ten>ds[j].ten) then Doi(i,j)

Tuổi: một s ố nguyên hai ch ữ số.

Lớp: một xâu hai ch ữ s ố và một ch ữ cái viết hoa

Một file bản ghi chứa một danh sách một lớp gồm 20 học sinh Hãy l ậ p ch ươ ng trình hiển th ịdanh sách lên màn hình, m i ng ỗ ười một dòng.

Trang 22

gi ố ng nh bài trên ư Hãy l ậ p ch ươ ng tr ình tạo một file bản ghi khác chứa danh sách

đó, mỗi bản ghi g m các tr ồ ường:

Họtên: một xâu 35 kí tự

Tuổi: một số nguyên hai chữ số

Khối: một số nguyên hai chữ số

Lớp: một chữ cái viết hoa

Trang 23

Readln;END.

Trang 24

Bài tập về chương trình con

Bài tập 1 Dùng th ủ tục chuyển một s ố t ự nhiên n cho tr ước sang h ệ ơ ố 2 c s Procedure Change ( n: integer ; Var St: String ) ;

Trang 25

Viết thủ tục tính diện tích của tam giác.

Viết thủ tục tính các trung tuyến của tam giác

Viết hoàn thiện chương trình chính

Program Chuong_trinh;

Uses Crt;

Var a, b, c: real ;

{================================}

Procedure Nhap(Var a, b, c: real);

Procedure input (Var a: real; tenbien: Char);

If (a<b+c) And (b<a+c) And (c<a+b) then

Writeln(a:0:2, ', ', b: 0: 2, ' va ', c: 0: 2, ' lap thanh ba canh cua tam giac ')Else Writeln('Khong lap thanh ba canh cua tam giac') ;

End;

Procedure Trung_tuyen (a, b, c: Real);

Var ma, mb, mc: real;

Trang 26

Procedure Dientich (a, b, c: real); Var p, S: real;

a Viết chương trình kiểm tra xem 1 số có là số hoàn hảo không

b Liệt kê tất cả số hoàn hảo từ 1 2000 và đếm xem có bao nhiêu số

if n mod i=0 then d:=d+i;

if d=n then writeln(' So vua nhap la so hoan hao')

else writeln(' So vua nhap khong la so hoan hao');

Trang 27

Sau đó trên ch ươ ng tr ình chính kiểm tra và tr ả lời s ố vừa nhập thuộc s ố nào? Program chuong_trinh;

write(' Nhap n=');readln(n);

if chanle(n) then writeln(' So vua nhap la chan')

else writeln(' So vua nhap la so le');

if nguyento(n) then writeln(' So vua nhap la nguyen to')

else writeln(' So vua nhap khong phai la so nguyen to');

if chinhphuong(n) then writeln(' So vua nhap la so chinh phuong')

else writeln(' So vua nhap khong la so chinh phuong');

readln;

End

Trang 28

Bài 6 Vi ế t ch ươ ng tr ình con tính a Giai Thừa với a nhập t ừ bàn phím

write ('Nhap so can tinh giai thua: ');readln(a);

if a:=0 or a:=1 then writeln('Giai thua cua ',a,' = 1')

else writeln('Giai thua cua',a,' =', gt(a) );

Ngày đăng: 07/10/2016, 21:43

TỪ KHÓA LIÊN QUAN

w