một số bài tập Pascal hay lớp 11

3 506 3
một số bài tập Pascal hay lớp 11

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

Thông tin tài liệu

Bài tập 1: Viết chương trình nhập vào số tự nhiên N (N lẻ), sau đó điền các số từ 1 đến n 2 vào trong một bảng vuông sao cho tổng các hàng ngang, hàng dọc và 2 đường chéo đều bằng nhau (bảng này được gọi là Ma phương). Ví dụ: Với N=3 và N=5 ta có Bắc 2 7 6 3 16 9 22 15 9 5 1 2 0 8 21 14 2 4 3 8 Tây 7 25 13 1 19 Đông 24 12 5 1 8 6 11 4 17 1 0 23 Nam Phuơng pháp: Xuất phát từ ô bên phải của ô nằm giữa. Đi theo hướng đông bắc để điền các số 1, 2, . Khi điền số, cần chú ý một số nguyên tắc sau: - Nếu vượt ra phía ngoài bên phải của bảng thì quay trở lại cột đầu tiên. - Nếu vượt ra phía ngoài bên trên của bảng thì quay trở lại dòng cuối cùng. - Nếu số đã điền k chia hết cho N thì số tiếp theo sẽ được viết trên cùng một hàng với k nhưng cách 1 ô về phía bên phải. Bài tập 2: Viết chương trình in ra màn hình tam giác Pascal. Ví dụ, với n=4 sẽ in ra hình sau: 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 Ý tưởng: Tam giác Pascal được tạo ra theo qui luật sau: + Mỗi dòng đều bắt đầu và kết thúc bởi số 1. + Phần tử thứ j ở dòng k nhận được bằng cách cộng 2 phần tử thứ j-1 và j ở dòng Bài tập 3: Viết chương trình nhập vào 2 dãy số nguyên (a) n và (b) m , m≤n. Kiểm tra xem dãy {b} có phải là dãy con của dãy {a} không? Bài tập 4: Viết chương trình nhập vào một dãy số nguyên a 1 , a 2 , ., a n . Tìm trong dãy {a} một dãy con tăng dần dài nhất (có số phần tử lớn nhất) và in ra màn hình dãy con đó. Bài tập 5: Cho mảng 2 chiều A cấp mxn. Viết chương trình sắp xếp lại mảng A theo yêu cầu sau: a/ Các phần tử trên mỗi dòng được sắp xếp theo thứ tự giảm dần. b/ Các dòng được sắp xếp lại theo thứ tự tăng dần của tổng các phần tử trên mỗi dòng. Bài 6: Tìm điểm cực tiểu của mảng hai chiều Một phần tử được gọi là điểm cực tiểu của mảng 2 chiều A[m.n] nếu nó không lứon hơn các phần tử kề nó Bài 7: Tìm " Phần tử yên ngựa" cuả mảng hai chiều Phần tử A[i,j] được gọi là "yên ngựa" của mảng hai chiều nếu nó đồng thời là phần tử nhỏ nhất của dòng i và là phần tử lớn nhất của cột j, hoăck A[i,j] phải là phần tử lớn nhất cảu dòng i và là phần tử nhỏ nhất của cột j Bài 8: Cho ma trận các số nguyên A[m,n], hãy sắp xếp lại ma trận sao cho các phần tử của chúng có giá trị tăng dần theo đường xoắn óc từ ngoài vào trong như hình vẽ sau: Bài 9: Tìm tất cả các phần tử A[i,j]>0 nằm giữa các phần tử <=0 trong một ma trận vuông A[n,n] Bài 10: Tìm các phần tử cảu một ma trận vuông là MIN hoặc MAX của các phần tử nằm trên 2 đường chéo chính Bài 11: Viết chương trình sắp xếp các phần tử của ma trận vuông A[n,n] sao cho các phần tử của nó tăng dần khi đi theo đường zigzag như hình vẽ Bài tập 11: Viết chương trình để nén và giải nén một xâu ký tự . Ví dụ: Xâu ‘AAAABBBCDDDDDDDEEF’ sau khi nén sẽ trở thành ‘4A3BC7D2EF’. Bài 12: CHo mảng số thực vuông kích thước 2n x 2n. Hãy lập các mảng mới bằng cách đổi chổ cho khối ô vuông kích thước n x n của mảng A theo cách sau: Bài 13 : Để mã hóa một văn bản gồm toàn chữ cái tiếng anh người ta có thể làm như sau: Xếp bảng chữ cái theo vòng tròn, sau đó thay mỗi kí tự bằng kí tự đứng sau nó n vị trí trong bảng vòng tròn. Ví dụ n = 7 thì "anh" được mã hóa thành "huo'' . Bạn hãy lập chương trình nhập số tự nhiên n sau đó : a) Mã hóa một văn bản ( xâu kí tự) b) Giải mã một văn bản đã mã hóa Bài 14 : Để mã hóa một văn bản gồm toàn chữ cái tiếng Anh người ta có thể làm như sau: Thay mỗi kí tự bằng kí tự đứng sau nó trong bảng chữ cái, riêng z thay bằng a . Ví dụ Một số tập Pascal lớp 11 Câu 1: Viết chương trình giải hệ phương trình bậc nhất, với a, b, c, d, e, f, hệ số thực nhập vào từ bàn phím Thông báo kết hình Câu 2: Viết chương trình giải phương trình bậc hai: ax2 + bx + c = 0, với a, b, c hệ số thực nhập vào từ bàn phím Câu 3: Nhập vào dãy n số từ bàn phím Tìm giá trị lớn nhỏ dãy số In kết tìm hình vị trí giá trị max, dãy số Câu 4: Viết chương trình nhập vào ma trận thực Anxm Sau tìm giá trị lớn nhất, giá trị nhỏ ma trận In ma trận kết tìm hình Hướng dẫn giải tập Giải hệ bậc ẩn: PHP: {HE PHUONG TRINH BAC NHAT} uses crt; var a,b,c,d,e,f,DD,Dx,Dy:real; BEGIN clrscr; Writeln('Nhap he so a, b, c: '); readln(a,b,c); Writeln('Nhap he so d, e, f: '); readln(d,e,f); DD:=a*e-d*b; Dx:=c*e-f*b; Dy:=a*f-d*c; IF DD0 then writeln('HPT co nghiem nhat: x=',Dx/DD:5:2,' va y=',Dy/DD:5:2); IF DD=0 then Begin IF (Dx0) or (Dy0) then writeln('HPT vo nghiem :('); IF (Dx=0) and (Dy=0) then writeln('HPT vo so nghiem :))'); End; readln; END Giải PT bậc 2: PHP: {Giai phuong trinh bac 2} uses crt; var a,b,c,delta:real; BEGIN clrscr; repeat write('Nhap a, b, c:'); readln(a,b,c); Until (a0) or (b0) or (c0); IF a=0 then IF b0 then writeln('Phuong trinh co nghiem nhat: x= ',-c/b:6:3) else write('Phuong trinh vo nghiem!!!') ELSE Begin DELTA:=b*b-4*a*c; If delta=0 then write('Phuong trinh co nghiem kep: x=',-b/a:6:3); IF delta>0 then begin writeln('Phuong trinh co nghiem phan biet: '); writeln('X1= ',(-b+sqrt(delta))/2/a:6:3); writeln('X2= ',(-b-sqrt(delta))/2/a:6:3); end; If deltamax then max:=a[i]; IF a[i]max then max:=a[i,j]; IF a[i,j]

Ngày đăng: 30/09/2017, 03:06

Tài liệu cùng người dùng

Tài liệu liên quan