Bài Tập Lập Trình Cơ Sở

33
Bài Tập Lập Trình Cơ Sở ── Ngôn Ngữ Lập Trình Pascal Phần I} Author: Nguyễn Huy Thao <!-- NHT --> Lớp Tin Học 51 A Khoa Công Nghệ Thông Tin Trường Đại Học Nông Nghiệp – Hà Nội Yahoo ID nht87_goto Yahoo Mail [email protected] Website http://www.nht.go.to // Để có thể chạy luôn chương trình các bạn copy chương trình nguồn sang trình soạn thảo văn bản Notepad của Windows rồi lưu lại tệp với tên có phần mở rộng là “.PAS”, Ví Dụ: Bt1.PAS sau đó mở tệp đó bằng các chương trình biên dịch ngôn ngữ Pascal như Turbo Pascal và chạy chương trình. // Nếu muốn sửa chữa chương trình các bạn copy sang một tệp khác rồi muốn làm hươu làm vượn gì thì làm, không được sửa ngay trên tệp gốc này. Kiến thức là kho báu không phải của riêng ai. Vì vậy, bạn đừng ngần ngại khi chia sẻ cho mọi người. ───────────────────────────────────────────────────── Phần II} Đề Bài: 1> Tìm giá trị lớn nhất của một dãy số được nhập vào từ bàn phím. 2> Sắp xếp tăng dần một dãy số được nhập vào từ bàn phím theo giải thuật lựa chọn. 3> Sắp xếp tăng dần một dãy số được nhập vào từ bàn phím theo giải thuật chèn. 4> Sắp xếp tăng dần một dãy số được nhập vào từ bàn phím theo giải thuật nổi bọt. 5> Tính tổng và trung bình cộng của các số dương của một dãy số được nhập vào từ bàn phím. 6> Nhập vào một dãy số rồi xoá đi phần tử thứ m (m được nhập vào từ bàn phím). In ra dãy sau khi xoá. 7> Nhập vào một dãy số nguyên và một số nguyên x bất kỳ rồi loại bỏ tất cả các số có giá trị bằng x khỏi dãy ban đầu. Viết dãy sau khi loại bỏ ra màn hình. 8> Nhập vào một dãy số nguyên rồi loại bỏ khỏi dãy đó những số bị lặp lại giá trị (trước đó đã có số có cùng giá trị). Viết dãy kết quả ra màn hình. 9> Nhập vào một dãy số. Hãy chèn thêm vào vị trí thứ m phần tử x (x, m nhập từ bàn phím) rồi in dãy số sau khi chèn ra màn hình. 10> Tính tổ hợp chập k của n, với n và k là hai số nguyên được nhập vào từ bàn phím. 11> In ra các số chính phương nằm trong khoảng (1, n) với n nhập vào từ bàn phím. 12> Tính tổng s= 1+ 1/2+ 1/3+…+ 1/n với n nhập vào từ bàn phím. 13> Tính tổng s= 1+ 1/3+ 1/5+…+ 1/(2n+ 1) với n nhập vào từ bàn phím. 14> Tính tổng s= 1+ x/1!+ x 2 /2!+…+ x n /n! với n nhập vào từ bàn phím.

description

Tai lieu lap trinh co so

Transcript of Bài Tập Lập Trình Cơ Sở

Page 1: Bài Tập Lập Trình Cơ Sở

Bài Tập Lập Trình Cơ Sở ── Ngôn Ngữ Lập Trình Pascal

Phần I} Author:

Nguyễn Huy Thao <!-- NHT -->Lớp Tin Học 51 AKhoa Công Nghệ Thông TinTrường Đại Học Nông Nghiệp – Hà NộiYahoo ID nht87_gotoYahoo Mail [email protected] http://www.nht.go.to

// Để có thể chạy luôn chương trình các bạn copy chương trình nguồn sang trình soạn thảo văn bản Notepad của Windows rồi lưu lại tệp với tên có phần mở rộng là “.PAS”, Ví Dụ: Bt1.PAS sau đó mở tệp đó bằng các chương trình biên dịch ngôn ngữ Pascal như Turbo Pascal và chạy chương trình.

// Nếu muốn sửa chữa chương trình các bạn copy sang một tệp khác rồi muốn làm hươu làm vượn gì thì làm, không được sửa ngay trên tệp gốc này.

Kiến thức là kho báu không phải của riêng ai. Vì vậy, bạn đừng ngần ngại khi chia sẻ cho mọi người.─────────────────────────────────────────────────────

Phần II} Đề Bài:

1> Tìm giá trị lớn nhất của một dãy số được nhập vào từ bàn phím.2> Sắp xếp tăng dần một dãy số được nhập vào từ bàn phím theo giải thuật lựa chọn.3> Sắp xếp tăng dần một dãy số được nhập vào từ bàn phím theo giải thuật chèn.4> Sắp xếp tăng dần một dãy số được nhập vào từ bàn phím theo giải thuật nổi bọt.5> Tính tổng và trung bình cộng của các số dương của một dãy số được nhập vào từ bàn phím.6> Nhập vào một dãy số rồi xoá đi phần tử thứ m (m được nhập vào từ bàn phím). In ra dãy sau khi

xoá.7> Nhập vào một dãy số nguyên và một số nguyên x bất kỳ rồi loại bỏ tất cả các số có giá trị bằng x

khỏi dãy ban đầu. Viết dãy sau khi loại bỏ ra màn hình.8> Nhập vào một dãy số nguyên rồi loại bỏ khỏi dãy đó những số bị lặp lại giá trị (trước đó đã có

số có cùng giá trị). Viết dãy kết quả ra màn hình.9> Nhập vào một dãy số. Hãy chèn thêm vào vị trí thứ m phần tử x (x, m nhập từ bàn phím) rồi in dãy

số sau khi chèn ra màn hình.10> Tính tổ hợp chập k của n, với n và k là hai số nguyên được nhập vào từ bàn phím.11> In ra các số chính phương nằm trong khoảng (1, n) với n nhập vào từ bàn phím.12> Tính tổng s= 1+ 1/2+ 1/3+…+ 1/n với n nhập vào từ bàn phím.13> Tính tổng s= 1+ 1/3+ 1/5+…+ 1/(2n+ 1) với n nhập vào từ bàn phím.14> Tính tổng s= 1+ x/1!+ x2/2!+…+ xn/n! với n nhập vào từ bàn phím.15> Tính tổng P(x)= (…((an*x+ an-1)*x+ an-2)*x+…+ a1)*x+ a0 với a0,…,an là các số được nhập vào từ bàn

phím.16> Nhập vào số nguyên n và in ra các số nguyên tố nằm trong đoạn [2,n].17> Tính tổng và trung bình cộng của một dãy số được nhập vào từ bàn phím.18> Tìm ước chung lớn nhất của hai số nguyên dương nhập vào từ bàn phím theo giải thuật đệ quy.19> Nhập vào một ma trận rồi tìm giá trị lớn nhất và nhỏ nhất của các phần tử của ma trận đó.20> Nhập vào một ma trận rồi tính tổng và trung bình cộng của các phần tử của ma trận đó.21> Nhập vào một ma trận vuông rồi tính tổng các phẩn tử nắm trên đường chéo chính.22> Cộng hai ma trận cùng kích thước nhập vào từ bàn phím.23> Nhân hai ma trận có kích thước Amxn và Bnxk được nhập vào từ bàn phím.24> Giải hệ phương trình bậc nhất hai ẩn số (a1x + b1y= c1; a2x + b2y= c2), các hệ số được nhập từ bàn

phím.

Page 2: Bài Tập Lập Trình Cơ Sở

25> Cộng hai đa thức Pn(x)= anxn+ an-1xn-1+ …+ a0 và Qm(x)= bmxm+ bm-1xm-1+ …+ b0 được nhập vào từ bàn phím (sử dụng mảng để lưu trữ các hệ số của đa thức).

26> Nhập vào một xâu ký tự rồi kiểm tra xem xâu đó có đối xứng không. Đếm xem có bao nhiêu ký tự ‘e’ hoặc ‘E’ trong xâu.

27> Viết chương trình nhập vào một xâu ký tự rồi xây dựng xâu ký tự đảo của xâu đó.28> Thống kê số lượng xuất hiện của các chữ cái từ a đến z (không phân biết chữ hoa chữ thường) của

một xâu ký tự nhập vào từ bàn phím.29> Viết chương trình giải quyết bài toán quản lý điểm thi của một phòng thi. Các thông tin cần quản

lý bao gồm: SBD, Họ tên, Điểm Toán, Điểm Lý, Điểm Hoá, Tổng Điểm. Chương trình có các chức năng sau:1. Nhập danh sách thí sinh.2. In danh sách thí sinh ra màn hình.3. Bổ sung một thí sinh vào cuối danh sách.4. Xoá thí sinh có SBD cho trước khỏi danh sách.5. Sắp xếp danh sách thí sinh theo SBD tăng dần.6. Sắp xếp danh sách thí sinh theo tổng điểm giảm dần.7. Sặp xếp danh sách thí sinh theo hai tiêu chí: tổng điểm giảm dần rồi đến SBD tăng dần.8. Sửa điểm của một thí sinh có SBD cho trước.9. In danh sách “thủ khoa”.10. In danh sách thí sinh có điểm tổng lớn hơn hoặc bằng một số cho trước.11. Tra cứu điểm theo số báo danh.12. Tra cứu điểm theo họ tên.13. Thoát khỏi chương trình.

Phần III} Chương Trình:

Program Bt1_Tim_GTLN_CuaDaySo;Uses Crt;Var Day: Array[ 1..100] Of Real; Spt, i: Byte; Max: Real;Begin Clrscr; Write(' So phan tu: '); Readln(Spt); For i:= 1 to spt do Begin Write(' Pt[',i,']= '); Readln(day[i]); End; Max:= day[1]; For i:= 2 to spt do If Max< day[i] then Max:= day[i]; Writeln(' Phan tu lon nhat cua day: ',max:0:2); Readln;End.

Program Bt2_SapXepDay_GiaiThuatChon;Uses Crt;Var InArray: Array[0..50] Of Real; Number, Count, Count1, Count2, Count3: Byte; Middle: Real;Begin

Page 3: Bài Tập Lập Trình Cơ Sở

TextColor(Blue); TextBackGround(White); Clrscr; Writeln; Writeln(' The Program Sort Array With Select Algorithm'); Writeln('ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ'); Writeln; Write(' So Phan tu cua day: '); Readln(Number); Writeln; Writeln(' Nhap day so: '); Writeln; For Count:= 1 to Number do Begin Write(' Array[',Count,']= '); Readln(InArray[Count]); End; Writeln; Writeln(' Day so da nhap:'); Writeln; For Count:= 1 to Number do Write(InArray[Count]:9:3); For Count1:= 1 to Number-1 do Begin Count3:= Count1; For Count2:= Count1+1 to Number do If InArray[Count2]< InArray[Count3] then Count3:= Count2; Middle:= InArray[Count3]; InArray[Count3]:= InArray[Count1]; InArray[Count1]:= Middle; End; Writeln; Writeln; Writeln(' Day So sau khi sap xep: '); Writeln; For Count:= 1 to Number do Write(InArray[Count]:9:3); Readln;End.

Program Bt3_SapXepDay_GiaiThuatChen;Uses Crt;Const Minimum= -9999;Var InArray: Array[0..50] Of Real; Number, Count, Count1, Count2: Byte; Middle: Real;Begin TextColor(Blue); TextBackGround(White); Clrscr; Writeln; Writeln(' The Program Sort Array With Insert Algorithm'); Writeln('ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ'); Writeln; Write(' So phan tu cua day so: '); Readln(Number); Writeln; Writeln(' Nhap day so: '); Writeln; For Count:= 1 to Number do Begin Write(' Array[',Count,']= '); Readln(InArray[Count]); End; Writeln; Writeln(' Day so da nhap:'); Writeln; For Count:= 1 to Number do Write(InArray[Count]:9:3); InArray[0]:= Minimum; For Count1:= 1 to Number do Begin Middle:= InArray[Count1]; Count2:= Count1-1; While Middle< InArray[Count2] do Begin

Page 4: Bài Tập Lập Trình Cơ Sở

InArray[Count2+1]:= InArray[Count2]; Count2:= Count2-1; End; InArray[Count2+1]:= Middle; End; Writeln; Writeln; Writeln(' Day so sau khi sap xep: '); Writeln; For Count:= 1 to Number do Write(InArray[Count]:9:3); Readln;End.

Program Bt4_SapXepDay_GiaiThuatNoiBot;Uses Crt;Var InArray: Array[1..50] Of Real; Number, Count, Count1, Count2: Byte; Middle: Real;Begin TextColor(Blue); TextBackGround(White); Clrscr; Writeln; Write(' So phan tu cua day so: '); Readln(Number); Writeln; Writeln(' Nhap day so: '); Writeln; For Count:= 1 to Number do Begin Write(' Array[',Count,']= '); Readln(InArray[Count]); End; Writeln; Writeln(' Day so da nhap:'); Writeln; For Count:= 1 to Number do Write(InArray[Count]:9:3); For Count1:= 1 to Number-1 do For Count2:= Count1+1 to Number do If InArray[Count1]> InArray[Count2] then Begin Middle:= InArray[Count1]; InArray[Count1]:= InArray[Count2]; InArray[Count2]:= Middle; End; Writeln; Writeln; Writeln(' Day so sau khi sap xep: '); Writeln; For Count:= 1 to Number do Write(InArray[Count]:9:3); Readln;End.

Program Bt5_Tong_TrungBinhCong_CacSoDuong_DaySo;Uses Crt;Var A: Array[ 1..100] Of Real; Spt, i, Dem: Byte; T, Tbc: Real;Begin TextColor(Blue); TextBackGround(White); CLrscr; Writeln(' Tinh tong va trung binh cong cac so duong cua day so'); Writeln('ヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘヘ'); Writeln; Write(' So Phan tu: '); Readln(Spt); Writeln; T:= 0; Dem:= 0;

Page 5: Bài Tập Lập Trình Cơ Sở

For i:= 1 to Spt do Begin Write(' a[',i,']= '); Readln(a[i]); If a[i]> 0 then Begin T:= T+a[i]; Dem:= Dem+1; End; End; Tbc:= t/dem; Writeln; Writeln(' Ket qua:'); Writeln(' Tong cac so: ',t:0:0); Writeln(' Trung binh cong: ',tbc:0:0); Repeat Until KeyPressed;End.

Program Bt6_XoaPhanTu_M_KhoiDay;Uses Crt;Var a: Array[ 1..100] Of Integer; n, i, m: Integer;Begin Clrscr; Writeln('|-------------------------------|'); Writeln('| Xoa phan tu thu m khoi day so |'); Writeln('|-------------------------------|'); Write(' So phan tu: '); Readln(n); For i:= 1 to n do Begin Write(' Pt[',i,']= '); Readln(a[i]); End; Write(' m= '); Readln(m); For i:= m to n-1 do a[i]:= a[i+1]; n:= n-1; For i:= 1 to n do Write(a[i]:5); Readln;End.

Program Bt7_XoaNhungPhanTuBang_X;Uses Crt;Var a: Array[ 1..100] Of Integer; n, i, j, x: integer;Begin TextColor(Blue); TextBackGround(White); Clrscr; Writeln('Ú-------------------------------------¿'); Writeln('³ Xoa tat ca nhung so bang x khoi day ³'); Writeln('À-------------------------------------Ù'); Write(' So phan tu: '); Readln(n); For i:= 1 to n do Begin Write(' Pt[',i,']= '); Readln(a[i]); End; Write(' x= '); Readln(x); i:= 0; While i<= n do Begin i:= i+1;

Page 6: Bài Tập Lập Trình Cơ Sở

If a[i]= x then Begin For j:= i to n-1 do a[j]:= a[j+1]; n:= n-1; End; End; Writeln(' Say so say khi xoa:'); For i:= 1 to n do Write(a[i]:5); Readln;End.

Program Bt8_LoaiNhungPhanTuLap;Uses Crt;Var a: Array[ 1..100] Of Integer; n, i, j, k, tg: Byte;Begin TextColor(Blue); TextBackGround(White); Clrscr; Writeln; Writeln(' Loai Bo Nhung Phan Tu Lap Lai Trong Day So..'); Writeln; Write(' So phan tu: '); Readln(n); For i:= 1 to n do Begin Write(' pt[',i,']= '); Readln(a[i]); End; Writeln; Writeln(' Day da nhap:'); For i:= 1 to n do Write('ÚÄÄÄ¿ '); Writeln; For i:= 1 to n do Write('³',a[i]:3,'³ '); Writeln; For i:= 1 to n do Write('ÀÄÄÄÙ '); Writeln; Writeln; i:= 1; Repeat tg:= a[i]; For j:= i+1 to n do If a[j]= tg then Begin For k:= j to n-1 do a[k]:= a[k+1]; n:= n-1; End; i:= i+1; Until i= n; Writeln; Writeln(' Day sau khi xoa:'); For i:= 1 to n do Write('ÚÄÄÄ¿ '); Writeln; For i:= 1 to n do Write('³',a[i]:3,'³ '); Writeln; For i:= 1 to n do Write('ÀÄÄÄÙ '); Writeln; Readln;End.

Program Bt9_Chen_X_VaoViTri_M;Uses Crt;Var a: Array[ 1..100] Of Integer; n, i, m, x: Integer;Begin TextColor(Blue); TextBackGround(White); Clrscr; Writeln; Write(' So phan tu: '); Readln(n); For i:= 1 to n do Begin

Page 7: Bài Tập Lập Trình Cơ Sở

Write(' pt[',i,']= '); Readln(a[i]); End; Writeln(' Day da nhap:'); For i:= 1 to n do Write(a[i]:5); Writeln; Write(' Phan tu chen: '); Readln(x); Write(' Vi tri chen: '); Readln(m); n:= n+1; For i:= n downto m+1 do a[i]:= a[i-1]; a[m]:= x; Writeln(' Day sau khi chen:'); For i:= 1 to n do Write(a[i]:5); Repeat Until Keypressed;End.

Program Bt10_Tinh_ToHop;Uses Crt;Var n, k, i : Integer; gn, gk, gnk, nck: Real;Begin Clrscr; Textcolor(111); Textbackground(blue); Window(1,1,50,4); Writeln('ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»'); Writeln('º Tinh to hop chap k cua n º'); Writeln('ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ'); Textcolor(red); Textbackground(3); Window(1,5,40,40); clrscr; Repeat Write(' k= '); Readln(k); Write(' n= '); Readln(n); If Not((k>= 0) and (n>= 0) and (n>= k)) then Writeln(' Nhap n>= k>= 0'); Until (k>= 0) and (n>= 0) and (n>= k); gn:= 1; For i:= 1 to n do gn:= gn*i; gk:= 1; For i:= 1 to k do gk:= gk*i; gnk:= 1; For i:=1 to n-k do gnk:= gnk*i; nck:= gn/gk/gnk; Write(' To hop chap ',k,' cua ',n,' la: ',nck:0:0); Readln;End.Program Bt11_TimSoChinhPhuong;Uses Crt;Var n, i: word; dem: byte;Begin TextColor(Blue); TextBackGround(White); Clrscr; Write(' n= '); Readln(n); dem:= 0; For i:= 2 to n-1 do If trunc(sqrt(i))= sqrt(i) then dem:= dem+1; If dem= 0 then Writeln(' Khong co so chinh phuong trong khoang (1, ',n,')') Else Writeln(' Co ',dem,' so chinh phuong trong khoang (1, ',n,') la cac so:'); For i:= 2 to n-1 do If trunc(sqrt(i))= sqrt(i) then Write(i:5);

Page 8: Bài Tập Lập Trình Cơ Sở

Readln;End.

Program Bt12;Uses Crt;Var n, i: integer; s: real;Begin Clrscr; Writeln('É--------------------------------»'); Writeln('³ Tinh tong s= 1/i [ i= 1 to n ] ³'); Writeln('|--------------------------------|'); Write(' n= '); Readln(n); s:= 0; For i:= 1 to n do s:= s + 1/i; Writeln(' Tong s= ',s:4:4); Readln;End.

Program Bt13;Uses Crt;Var n, i: integer; s: real;Begin Clrscr; Writeln('|-----------------------------------------|'); Writeln('| Tinh tong s= 1/i [ i= 1, 3, .. ,2n +1 ] |'); Writeln('|-----------------------------------------|'); Write(' n= '); Readln(n); s:= 0; For i:= 0 to n do s:= s+ 1/(2*i+1); Writeln(' Tong s= ',s:4:4); Readln;End.

Program Bt14;Uses Crt;Var n, i: integer; x, s: real;

Function Lt(u, v: real): real;Begin Lt:= exp(v*ln(u));End;

Function Gt(t: integer): longint;Begin If t= 0 then Gt:= 1 Else Gt:= Gt(t-1)*t;End;

Begin Clrscr; Write(' n= '); Readln(n); Write(' x= '); Readln(x);

Page 9: Bài Tập Lập Trình Cơ Sở

s:= 0; For i:= 0 to n do s:= s+Lt(x, i)/Gt(i); Writeln(' Tong s= ',s:4:4); Readln;End.

Program Bt15;Uses Crt;Var a: array[ 0..100] of real; x: real; n, i: integer; Px: real;Begin Clrscr; Writeln('|--------------------------------------------------------|'); Writeln('|Tinh tong P(x)= (...((an*x+an-1)*x+an-2)*x+...+a1)*x+a0 |'); Writeln('|--------------------------------------------------------|'); Write(' n= '); Readln(n); For i:= n downto 0 do Begin Write(' a[',i,']= '); Readln(a[i]); End; Write(' x= '); Readln(x); Px:= a[n]; For i:= n downto 1 do Px:= Px*x+a[i-1]; Writeln(' Tong P(x)= ',px:4:4); Readln;End.

Program Bt16_TimSoNguyenTo;Uses Crt;Var n, i, j, d: integer;Begin Clrscr; Writeln('|----------------------------------------|'); Writeln('| Tim cac so nguyen to trong doan [2, n] |'); Writeln('|----------------------------------------|'); Write(' n= '); Readln(n); Writeln(' Cac so nguyen to tim duoc:'); For i:= 2 to n do Begin d:= 0; For j:= 1 to i do If i mod j= 0 then d:= d+1; If d= 2 then Write(i:10); End; Readln;End.

Program Bt17_Tong_TBC_DaySo;Uses Crt;Var a: array[1..100] of integer; n, i: integer; t, tbc: real;Begin Clrscr; Writeln('|---------------------------------------------|'); Writeln('| Tinh tong va trung binh cong cua mot day so |'); Writeln('|---------------------------------------------|');

Page 10: Bài Tập Lập Trình Cơ Sở

Write(' So phan tu cua day so: '); Readln(n); t:= 0; For i:= 1 to n do Begin Write(' a[',i,']= '); Readln(a[i]); t:= t+a[i]; End; Tbc:= t/n; Writeln(' Tong cac phan tu: ',t:4:4); Writeln(' Trung binh cong: ',tbc:4:4); Readln;End.

Program Bt18_TimUocChungLonNhat;Var a, b: Integer;

Function ucln(a,b: Integer): Integer;Var r: Integer;Begin If a> b then Begin r:= a mod b; If r= 0 then ucln:= b Else ucln:= ucln(b,r); End Else Begin r:= b mod a; If r= 0 then ucln:= a Else ucln:= ucln(a,r); End;End;

Begin Write(' a= '); readln(a); Write(' b= '); readln(b); Writeln(' Uoc chung lon nhat: ',ucln(a,b)); Readln;End.

Program Bt19_Tim_Max_Min_MaTran;Uses Crt;Var a: Array[ 1..50, 1..50] Of integer; n, m, i, j: byte; max, min: integer; mx1, mx2, mn1, mn2: byte;Begin Clrscr; Writeln('--------- Tim Max, Min cua ma tran ---------'); Write(' So hang: '); Readln(m); Write(' So cot: '); Readln(n); Writeln(' Cac phan tu: '); For i:= 1 to m do For j:= 1 to n do Begin Write(' pt[',i,',',j,']= '); Readln(a[i,j]); End; max:= a[1,1]; mx1:= 1; mx2:= 1; min:= max; mn1:= 1; mn2:= 1; For i:= 1 to m do

Page 11: Bài Tập Lập Trình Cơ Sở

For j:= 1 to n do Begin If a[i,j]> max then Begin max:= a[i,j]; mx1:= i; mx2:= j; End; If a[i,j]< min then Begin min:= a[i,j]; mn1:= i; mn2:= j; End; End; Writeln(' Ma tran: '); Writeln; For i:= 1 to m do Begin For j:= 1 to n do Write(a[i,j]:7); Writeln; End; Writeln(' Phan tu lon nhat pt[',mx1,',',mx2,']= ',max); Writeln(' Phan tu nho nhat pt[',mn1,',',mn2,']= ',min); Readln;End.

Program Bt20_Tong_TBC_MaTran;Uses Crt;Var m: array[ 1..50, 1..50] Of Real; h, c, i, j: byte; t, tbc: Real;Begin Clrscr; Writeln('"______________________________________________________"'); Writeln('| Tinh tong va trung binh cong cac phan tu cua ma tran |'); Writeln('"======================================================"'); Write(' So hang: '); Readln(h); Write(' So cot: '); Readln(c); Writeln(' Nhap cac phan tu: '); t:= 0; For i:= 1 to h do For j:= 1 to c do Begin Write(' pt[',i,',',j,']= '); Readln(m[i,j]); t:= t + m[i,j]; End; Writeln(' Ma tran da nhap:'); For i:= 1 to h do Begin For j:= 1 to c do Write(m[i,j]:7); Writeln; End; tbc:= t/h/c; Writeln(' Tong cac phan tu: ',t:4:4); Writeln(' Trung binh cong: ',tbc:4:4); Readln;End.

Program Bt21_Tong_Duong_Cheo_Chinh;Uses Crt;Var m: Array[ 1..50, 1..50] Of Real; n, i, j: Byte; t: Real;Begin

Page 12: Bài Tập Lập Trình Cơ Sở

Clrscr; Writeln('"_________________________________________________"'); Writeln('| Tinh tong cac phan tu nam tren duong cheo chinh |'); Writeln('ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ"'); Write(' So hang [ so cot ]: '); Readln(n); Writeln(' Nhap cac phan tu: '); t:= 0; For i:= 1 to n do For j:= 1 to n do Begin Write(' pt[',i,',',j,']= '); Readln(m[i,j]); If i= j Then t:= t+m[i,j]; End; Writeln(' Ma tran da nhap:'); For i:= 1 To n Do Begin For j:= 1 to n do Write(m[i,j]:7); Writeln; End; Writeln(' Tong cac phan tu tren duong cheo chinh: ',t:4:4); Readln;End.

Program Bt22_Tong2MaTran;Uses Crt;Var a, b, c: array[ 1..50, 1..50] Of Real; h, t, i, j: byte;Begin Clrscr; Write(' So hang: '); Readln(h); Write(' So cot: '); Readln(t); Writeln(' Nhap ma tran a: '); For i:= 1 to h do For j:= 1 to t do Begin Write(' a[',i,',',j,']= '); Readln(a[i,j]); End; Writeln(' Nhap ma tran b: '); For i:= 1 to h do For j:= 1 to t do Begin Write(' b[',i,',',j,']= '); Readln(b[i,j]); End; For i:= 1 to h do For j:= 1 to t do c[i,j]:= a[i,j]+b[i,j]; Writeln(' Ma tran tong:'); For i:= 1 to h do Begin For j:= 1 to t do Write(c[i,j]:7:4); Writeln; End; Readln;End.

Program Bt23_Tich2MaTran;Uses Crt;Var a, b, c: array[ 1..50, 1..50] Of Real; h1, c1, h2, c2, i, j, k: byte;Begin Clrscr;

Page 13: Bài Tập Lập Trình Cơ Sở

Writeln(' Nhap ma tran a: '); Write(' So hang: '); Readln(h1); Write(' So cot: '); Readln(c1); For i:= 1 to h1 do For j:= 1 to c1 do Begin Write(' a[',i,',',j,']= '); Readln(a[i,j]); End; Writeln(' Nhap ma tran b: '); Write(' So hang: '); Readln(h2); Write(' So cot: '); Readln(c2); For i:= 1 to h2 do For j:= 1 to c2 do Begin Write(' b[',i,',',j,']= '); Readln(b[i,j]); End; If c1<> h2 then Writeln(' Khong the nhan 2 ma tran..') Else Begin For i:= 1 to h1 do For j:= 1 to c2 do Begin c[i,j]:= 0; For k:= 1 to c1 do c[i,j]:= c[i,j]+a[i,k]*b[k,j]; End; End; Writeln(' Ma tran tich:'); For i:= 1 to h1 do Begin For j:= 1 to c2 do Write(c[i,j]:7:2); Writeln; End; Readln;End.

Program Bt24_GiaiHeBacNhat;Uses Crt;Var a1, b1, c1, a2, b2, c2: real; d, dx, dy: real; x, y: real;Begin Clrscr; Writeln; Writeln(' Chuong trinh giai he phuong trinh bac nhat hai an'); Writeln; Writeln(' Nhap cac he so:'); Write(' a1= '); Readln(a1); Write(' b1= '); Readln(b1); Write(' c1= '); Readln(c1); Write(' a2= '); Readln(a2); Write(' b2= '); Readln(b2); Write(' c2= '); Readln(c2); d:= a1*b2-a2*b1; dx:= c1*b2-c2*b1; dy:= a1*c2-a2*c1; If d= 0 then If (dx= 0) And (dy= 0) then Writeln(' He phuong trinh co vo so nghiem.') Else Writeln(' He phuong trinh vo nghiem.') Else Begin Writeln(' He phuong trinh co nghiem duy nhat:'); Writeln(' Ú'); Writeln(' ³ x= ',dx/d:4:4); Writeln(' ´'); Writeln(' ³ y= ',dy/d:4:4); Writeln(' À'); End;

Page 14: Bài Tập Lập Trình Cơ Sở

Readln;End.

Program Bt25_TongDaThuc;Uses Crt;Var a, b: Array[0..50] Of Real; m, n, i, j: Byte; p, q, t, x: Real;Begin Clrscr; Writeln; Writeln(' Nhap da thuc Pn(x): '); Write(' n= '); Readln(n); For i:= n downto 0 do Begin Write(' a[',i,']= '); Readln(a[i]); End; Writeln(' Nhap da thuc Qm(x): '); Write(' m= '); Readln(m); For j:= m downto 0 do Begin Write(' b[',j,']= '); Readln(b[j]); End; Write(' Nhap gia tri x: '); Readln(x); p:= 0; q:= 0; t:= 0; For i:= n downto 0 do p:= p+ a[i]*exp(i*ln(x)); For j:= m downto 0 do q:= q+ b[j]*exp(j*ln(x)); t:= p+ q; Writeln; For i:= n+1 downto 0 do If i= n+1 then Write(' P',n,'(',x:4:2,')= ') Else If i= 0 then Writeln(a[i]:4:2) Else If i= 1 then Write(a[i]:4:2,'*',x:4:2,' +') Else Write(a[i]:4:2,'*',x:4:2,'^',i,' +'); Writeln; For j:= m+1 downto 0 do If j= m+1 then Write(' Q',m,'(',x:4:2,')= ') Else If j= 0 then Writeln(b[j]:4:2) Else If j= 1 then Write(b[j]:4:2,'*',x:4:2,' +') Else Write(b[j]:4:2,'*',x:4:2,'^',j,' +'); Writeln; Writeln(' Tong 2 da thuc: ',t:8:4); Readln;End.

Program Bt26_XauDoiXung;Uses Crt;Var s: String; dx: Boolean; n, d, i: Byte;Begin TextColor(Blue); TextBackGround(White); Clrscr; Writeln; Write(' Nhap xau ky tu: '); Readln(s); n:= length(s); dx:= True; For i:= 1 to n div 2 do If s[i]<> s[n-i+1] then dx:= False; d:= 0; For i:= 1 to n do If UpCase(s[i])= 'E' then d:= d+1;

Page 15: Bài Tập Lập Trình Cơ Sở

Writeln; Writeln(' Xau doi xung la: ',dx); Writeln; Writeln(' So ky tu ','`e'' hoac ','`E'' trong xau la: ',d); Readln;End.

Program Bt27_XauDao;Uses Crt;Var v, r: String; i: Byte;Begin Clrscr; Writeln; Write(' Nhap xau ky tu: '); Readln(v); r:= ''; For i:= 1 to length(v) do r:= v[i]+ r; Write(' Xau dao: ',r); Readln;End.

Program Bt28_TanSuatChuCai;Uses Crt;Var s: String; i, n: Byte; j: Char; t: Array['A'..'Z'] Of Byte;

Begin Clrscr; Writeln; Write(' Nhap xau ky tu: '); Readln(s); n:= length(s); For j:= 'A' to 'Z' do t[j]:= 0; For i:= 1 to n do For j:= 'A' to 'Z' do If UpCase(s[i])= j then t[j]:= t[j]+1; Writeln(' Tan Suat Cac Chu Cai'); Window(1,5,40,50); For j:= 'A' to 'M' do Begin Writeln('³ Tan Suat Cua ',j,' La: ',t[j],' ³'); End; Window(41,5,80,50); For j:= 'N' to 'Z' do Begin Writeln('³ Tan Suat Cua ',j,' La: ',t[j],' ³'); End; Readln;End.

Program Bt29_Quan_Ly_Diem_Thi;Uses Crt;Label h1, h2, h3, h4, h5, h6, h7, h8, h9, h10, h11, h12, h13;Type ThiSinh= Record SBD: String; Hodem: String[15]; Ten: String[7]; Dt, Dl, Dh, Td: Real; End;Var Ds: Array[ 1..100] Of ThiSinh; c: Array[1..20] Of String; n: Word; Chon: Char;

Procedure w(mau: Byte; x1,y1,x2,y2: Byte; c: String);Begin TextColor(15);

Page 16: Bài Tập Lập Trình Cơ Sở

TextBackGround(mau); Window(x1,y1,x2,y2); Write(c); GotoXY(1,1);End;

Procedure Nhapds;Var i: Byte; tg: Thisinh;Begin Clrscr; Writeln(' Nhap thong tin cua thi sinh:'); n:= 0; While True do With tg do Begin Write(' (Bam 0 de thoat)_Nhap so bao danh: '); Readln(sbd); If sbd= '0' then break; Write(' Ho dem: '); Readln(hodem); Write(' Ten: '); Readln(ten); Write(' Diem Toan: '); Readln(dt); Write(' Diem Ly: '); Readln(dl); Write(' Diem Hoa: '); Readln(dh); td:= dt+ dl+ dh; n:= n+1; ds[n]:= tg; End;End;

Procedure Inds;Var i: Byte;Begin Clrscr; Writeln(' Danh sach thi sinh:'); Writeln('ÚÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄ¿'); Writeln('³ SBD ³ Ho dem ³ Ten ³Diem Toan ³Diem Ly ³Diem Hoa ³Tong Diem ³'); Writeln('ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄ´'); For i:= 1 to n do With ds[i] do Begin Write('³',sbd,'³':11-length(sbd),Hodem,'³':16-length(hodem),Ten,'³':8-length(ten)); Writeln(dt:5:2,'³':6,dl:5:2,'³':4,dh:5:2,'³':5,td:5:1,'³':6); if i<> n then Writeln('ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄ´') else Writeln('ÀÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÙ'); End; Readln;End;

Procedure Bs;Var tg: Thisinh; tiep: Char; i: Byte;Begin Clrscr;

Page 17: Bài Tập Lập Trình Cơ Sở

Writeln(' Bo sung thi sinh:'); Repeat With tg do Begin Write(' Nhap so bao danh: '); Readln(sbd); Write(' Ho dem: '); Readln(hodem); Write(' Ten: '); Readln(ten); Write(' Diem Toan: '); Readln(dt); Write(' Diem Ly: '); Readln(dl); Write(' Diem Hoa: '); Readln(dh); td:= dt+ dl+ dh; n:= n+1; ds[n]:= tg; End; Write(' Co tiep tuc khong-?_C/k '); Readln(tiep); Until Upcase(tiep)= 'K'; Clrscr; Writeln(' Danh sach thi sinh sau khi bo sung:'); Writeln('ÚÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄ¿'); Writeln('³ SBD ³ Ho dem ³ Ten ³Diem Toan ³Diem Ly ³Diem Hoa ³Tong Diem ³'); Writeln('ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄ´'); For i:= 1 to n do With ds[i] do Begin Write('³',sbd,'³':11-length(sbd),Hodem,'³':16-length(hodem),Ten,'³':8-length(ten)); Writeln(dt:5:2,'³':6,dl:5:2,'³':4,dh:5:2,'³':5,td:5:1,'³':6); if i<> n then Writeln('ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄ´') else Writeln('ÀÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÙ'); End; Readln;End;

Procedure Xoa;Var x: String; i, j: Byte;Begin Clrscr; Writeln(' Xoa thi sinh khoi danh sach:'); Write(' So bao danh: '); Readln(x); For i:= 1 to n do With ds[i] do If sbd= x then Begin For j:= i to n-1 do ds[j]:= ds[j+1]; n:= n-1; End; Writeln(' Danh sach thi sinh sau khi xoa:'); Writeln('ÚÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄ¿'); Writeln('³ SBD ³ Ho dem ³ Ten ³Diem Toan ³Diem Ly ³Diem Hoa ³Tong Diem ³'); Writeln('ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄ´');

Page 18: Bài Tập Lập Trình Cơ Sở

For i:= 1 to n do With ds[i] do Begin Write('³',sbd,'³':11-length(sbd),Hodem,'³':16-length(hodem),Ten,'³':8-length(ten)); Writeln(dt:5:2,'³':6,dl:5:2,'³':4,dh:5:2,'³':5,td:5:1,'³':6); if i<> n then Writeln('ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄ´') else Writeln('ÀÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÙ'); End; Readln;End;

Procedure SxSBd;Var i, j: Byte; tg: ThiSinh;Begin Clrscr; For i:= 1 to n-1 do For j:= i+1 to n do If ds[i].sbd> ds[j].sbd then Begin tg:= ds[i]; ds[i]:= ds[j]; ds[j]:= tg; End; Writeln(' Danh sach thi sinh sau khi sap xep:'); Writeln('ÚÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄ¿'); Writeln('³ SBD ³ Ho dem ³ Ten ³Diem Toan ³Diem Ly ³Diem Hoa ³Tong Diem ³'); Writeln('ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄ´'); For i:= 1 to n do With ds[i] do Begin Write('³',sbd,'³':11-length(sbd),Hodem,'³':16-length(hodem),Ten,'³':8-length(ten)); Writeln(dt:5:2,'³':6,dl:5:2,'³':4,dh:5:2,'³':5,td:5:1,'³':6); if i<> n then Writeln('ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄ´') else Writeln('ÀÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÙ'); End; Readln;End;

Procedure SxTd;Var i, j: Byte; Tg: ThiSinh;Begin Clrscr; For i:= 1 to n-1 do For j:= i+1 to n do If ds[i].td< ds[j].td then Begin tg:= ds[i]; ds[i]:= ds[j]; ds[j]:= tg; End; Writeln(' Danh sach thi sinh sau khi sap xep:'); Writeln('ÚÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄ¿');

Page 19: Bài Tập Lập Trình Cơ Sở

Writeln('³ SBD ³ Ho dem ³ Ten ³Diem Toan ³Diem Ly ³Diem Hoa ³Tong Diem ³'); Writeln('ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄ´'); For i:= 1 to n do With ds[i] do Begin Write('³',sbd,'³':11-length(sbd),Hodem,'³':16-length(hodem),Ten,'³':8-length(ten)); Writeln(dt:5:2,'³':6,dl:5:2,'³':4,dh:5:2,'³':5,td:5:1,'³':6); if i<> n then Writeln('ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄ´') else Writeln('ÀÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÙ'); End; Readln;End;

{Procedure Sxht;Var i, j: Byte; Tg: ThiSinh;Begin Clrscr; For i:= 1 to n-1 do For j:= i+1 to n do If ds[i].ten> ds[j].ten then Begin tg:= ds[i]; ds[i]:= ds[j]; ds[j]:= tg; End Else If ds[i].ten= ds[j].ten then If ds[i].hodem> ds[j].hodem then Begin tg:= ds[i]; ds[i]:= ds[j]; ds[j]:= tg; End; Writeln(' Danh sach thi sinh sau khi sap xep:'); Writeln('ÚÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄ¿'); Writeln('³ SBD ³ Ho dem ³ Ten ³Diem Toan ³Diem Ly ³Diem Hoa ³Tong Diem ³'); Writeln('ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄ´'); For i:= 1 to n do With ds[i] do Begin Write('³',sbd,'³':11-length(sbd),Hodem,'³':16-length(hodem),Ten,'³':8-length(ten)); Writeln(dt:5:2,'³':6,dl:5:2,'³':4,dh:5:2,'³':5,td:5:1,'³':6); if i<> n then Writeln('ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄ´') else Writeln('ÀÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÙ'); End; Readln;End;}

Procedure SxTdSbd;Var i, j: Byte; Tg: ThiSinh;Begin Clrscr;

Page 20: Bài Tập Lập Trình Cơ Sở

For i:= 1 to n-1 do For j:= i+1 to n do If ds[i].td< ds[j].td then Begin tg:= ds[i]; ds[i]:= ds[j]; ds[j]:= tg; End Else If ds[i].td= ds[j].td then If ds[i].sbd< ds[j].sbd then Begin tg:= ds[i]; ds[i]:= ds[j]; ds[j]:= tg; End; Writeln(' Danh sach thi sinh sau khi sap xep:'); Writeln('ÚÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄ¿'); Writeln('³ SBD ³ Ho dem ³ Ten ³Diem Toan ³Diem Ly ³Diem Hoa ³Tong Diem ³'); Writeln('ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄ´'); For i:= 1 to n do With ds[i] do Begin Write('³',sbd,'³':11-length(sbd),Hodem,'³':16-length(hodem),Ten,'³':8-length(ten)); Writeln(dt:5:2,'³':6,dl:5:2,'³':4,dh:5:2,'³':5,td:5:1,'³':6); if i<> n then Writeln('ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄ´') else Writeln('ÀÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÙ'); End; Readln;End;

Procedure Sua;Var x: string; i: integer;Begin Clrscr; Write(' Nhap SBD: '); Readln(x); For i:= 1 to n do If ds[i].sbd= x then With ds[i] do Begin Write(' Diem Toan: '); Readln(dt); Write(' Diem Ly: '); Readln(dl); Write(' Diem Hoa: '); Readln(dh); td:= dt+ dl+ dh; End; Writeln(' Da sua xong. Bam Enter de quay ve Menu.'); Readln;End;

Procedure Intk;Var max: real; i, j: integer;Begin Clrscr; max:= ds[1].td; For i:= 1 to n do If ds[i].td> max then Begin max:= ds[i].td; j:= i;

Page 21: Bài Tập Lập Trình Cơ Sở

End Else If ds[i].td= max then j:= i; Writeln(' Danh sach Thu khoa: '); Writeln('ÚÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄ¿'); Writeln('³ SBD ³ Ho dem ³ Ten ³Diem Toan ³Diem Ly ³Diem Hoa ³Tong Diem ³'); Writeln('ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄ´'); For i:= 1 to n do If ds[i].td= max then With ds[i] do Begin Write('³',sbd,'³':11-length(sbd),Hodem,'³':16-length(hodem),Ten,'³':8-length(ten)); Writeln(dt:5:2,'³':6,dl:5:2,'³':4,dh:5:2,'³':5,td:5:1,'³':6); if i<> j then Writeln('ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄ´') else Writeln('ÀÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÙ'); End; Readln;End;

Procedure Intd;Var x: real; i, j: integer;Begin Clrscr; Write(' Nhap diem: '); Readln(x); For i:= 1 to n do If ds[i].td>= x then j:= i; Writeln(' Danh sach thi sinh: '); Writeln('ÚÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄ¿'); Writeln('³ SBD ³ Ho dem ³ Ten ³Diem Toan ³Diem Ly ³Diem Hoa ³Tong Diem ³'); Writeln('ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄ´'); For i:= 1 to n do If ds[i].td>= x then With ds[i] do Begin Write('³',sbd,'³':11-length(sbd),Hodem,'³':16-length(hodem),Ten,'³':8-length(ten)); Writeln(dt:5:2,'³':6,dl:5:2,'³':4,dh:5:2,'³':5,td:5:1,'³':6); if i<> j then Writeln('ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄ´') else Writeln('ÀÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÙ'); End; Readln;End;

Procedure TcSbd;Var x: string; i, d: integer;Begin Clrscr; Write(' Nhap SBD: '); Readln(x); d:= 0; For i:= 1 to n do If ds[i].sbd= x then Begin

Page 22: Bài Tập Lập Trình Cơ Sở

d:= d+1; With ds[i] do Begin Writeln('ÚÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄ¿'); Writeln('³ SBD ³ Ho dem ³ Ten ³Diem Toan ³Diem Ly ³Diem Hoa ³Tong Diem ³'); Writeln('ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄ´'); Write('³',sbd,'³':11-length(sbd),Hodem,'³':16-length(hodem),Ten,'³':8-length(ten)); Writeln(dt:5:2,'³':6,dl:5:2,'³':4,dh:5:2,'³':5,td:5:1,'³':6); Writeln('ÀÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÙ'); End; End; If d= 0 then Writeln(' Khong tim thay thi sinh co SBD ',x); Readln;End;

Procedure Tcht;Var x: string[7]; i, j, k, d: integer;Begin Clrscr; Write(' Nhap ten: '); Readln(x); For i:= 1 to length(x) do x[i]:= UpCase(x[i]); d:= 0; For i:= 1 to n do Begin For j:= 1 to length(ds[i].ten) do ds[i].ten[j]:= UpCase(ds[i].ten[j]); If pos(x,ds[i].ten)> 0 then d:= d+1; End; j:= 0; If d> 0 then Begin Writeln('ÚÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄ¿'); Writeln('³ SBD ³ Ho dem ³ Ten ³Diem Toan ³Diem Ly ³Diem Hoa ³Tong Diem ³'); Writeln('ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄ´'); For i:= 1 to n do If pos(x,ds[i].ten)> 0 then With ds[i] do Begin Write('³',sbd,'³':11-length(sbd),Hodem,'³':16-length(hodem),Ten,'³':8-length(ten)); Writeln(dt:5:2,'³':6,dl:5:2,'³':4,dh:5:2,'³':5,td:5:1,'³':6); j:= j+1; If j= d then Writeln('ÀÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÙ') Else Writeln('ÃÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄ´') End; End Else Writeln(' Khong tim thay thi sinh co ten ',x); Readln;End;

Begin c[1]:= ' 1.Nhap danh sach thi sinh.'; c[2]:= ' 2.In danh sach thi sinh.'; c[3]:= ' 3.Bo sung thi sinh vao danh sach.'; c[4]:= ' 4.Xoa thi sinh co so bao danh cho truoc.'; c[5]:= ' 5.Sap xep danh sach theo so bao danh.';

Page 23: Bài Tập Lập Trình Cơ Sở

c[6]:= ' 6.Sap xep danh sach theo tong diem.'; c[7]:= ' 7.Sap xep DS theo tong diem va SBD.'; c[8]:= ' 8.Sua diem cua mot TS co SBD cho truoc.'; c[9]:= ' 9.In danh sach thu khoa.'; c[10]:= '10.In DS TS co tong diem>= so cho truoc.'; c[11]:= '11.Tra cuu diem theo so bao danh.'; c[12]:= '12.Tra cuu diem theo ho ten.'; c[13]:= '13.Thoat khoi chuong trinh.'; TextBackGround(0); Clrscr; Writeln(' Dung cac phim mui ten, enter, esc de thuc hien.'); h1: TextBackGround(0); w(0,1,3,45,4,c[2]); w(0,1,4,45,5,c[3]); w(0,1,5,45,6,c[4]); w(0,1,6,45,7,c[5]); w(0,1,7,45,8,c[6]); w(0,1,8,45,9,c[7]); w(0,1,9,45,10,c[8]); w(0,1,10,45,11,c[9]); w(0,1,11,45,12,c[10]); w(0,1,12,45,13,c[11]); w(0,1,13,45,14,c[12]); w(0,1,14,45,15,c[13]); w(1,1,2,45,3,c[1]); chon:= ReadKey; If chon= #13 then Begin TextColor(15); TextBackGround(0); Window(1,1,80,50); Nhapds; Clrscr; Goto h1; End Else Begin If chon= #0 then chon:= ReadKey; Case chon of #27: Halt; #72: Goto h13; #80: Goto h2; End; End; h2: TextBackGround(0); w(0,1,2,45,3,c[1]); w(0,1,4,45,5,c[3]); w(0,1,5,45,6,c[4]); w(0,1,6,45,7,c[5]); w(0,1,7,45,8,c[6]); w(0,1,8,45,9,c[7]); w(0,1,9,45,10,c[8]); w(0,1,10,45,11,c[9]); w(0,1,11,45,12,c[10]); w(0,1,12,45,13,c[11]); w(0,1,13,45,14,c[12]); w(0,1,14,45,15,c[13]); w(1,1,3,45,4,c[2]); chon:= ReadKey; If chon= #13 then Begin TextColor(15); TextBackGround(0); Window(1,1,80,50); Inds; Clrscr; Goto h2; End Else Begin If chon= #0 then chon:= ReadKey; Case chon of #27: Halt; #72: Goto h1; #80: Goto h3; End; End; h3: TextBackGround(0); w(0,1,2,45,3,c[1]); w(0,1,3,45,4,c[2]); w(0,1,5,45,6,c[4]); w(0,1,6,45,7,c[5]); w(0,1,7,45,8,c[6]); w(0,1,8,45,9,c[7]); w(0,1,9,45,10,c[8]); w(0,1,10,45,11,c[9]); w(0,1,11,45,12,c[10]); w(0,1,12,45,13,c[11]); w(0,1,13,45,14,c[12]); w(0,1,14,45,15,c[13]); w(1,1,4,45,5,c[3]); chon:= ReadKey; If chon= #13 then Begin TextColor(15);

Page 24: Bài Tập Lập Trình Cơ Sở

TextBackGround(0); Window(1,1,80,50); Bs; Clrscr; Goto h3; End Else Begin If chon= #0 then chon:= ReadKey; Case chon of #27: Halt; #72: Goto h2; #80: Goto h4; End; End; h4: TextBackGround(0); w(0,1,2,45,3,c[1]); w(0,1,3,45,4,c[2]); w(0,1,4,45,5,c[3]); w(0,1,6,45,7,c[5]); w(0,1,7,45,8,c[6]); w(0,1,8,45,9,c[7]); w(0,1,9,45,10,c[8]); w(0,1,10,45,11,c[9]); w(0,1,11,45,12,c[10]); w(0,1,12,45,13,c[11]); w(0,1,13,45,14,c[12]); w(0,1,14,45,15,c[13]); w(1,1,5,45,6,c[4]); chon:= ReadKey; If chon= #13 then Begin TextColor(15); TextBackGround(0); Window(1,1,80,50); Xoa; Clrscr; Goto h4; End Else Begin If chon= #0 then chon:= ReadKey; Case chon of #27: Halt; #72: Goto h3; #80: Goto h5; End; End; h5: TextBackGround(0); w(0,1,2,45,3,c[1]); w(0,1,3,45,4,c[2]); w(0,1,4,45,5,c[3]); w(0,1,5,45,6,c[4]); w(0,1,7,45,8,c[6]); w(0,1,8,45,9,c[7]); w(0,1,9,45,10,c[8]); w(0,1,10,45,11,c[9]); w(0,1,11,45,12,c[10]); w(0,1,12,45,13,c[11]); w(0,1,13,45,14,c[12]); w(0,1,14,45,15,c[13]); w(1,1,6,45,7,c[5]); chon:= ReadKey; If chon= #13 then Begin TextColor(15); TextBackGround(0); Window(1,1,80,50); SxSbd; Clrscr; Goto h5; End Else Begin If chon= #0 then chon:= ReadKey; Case chon of #27: Halt; #72: Goto h4; #80: Goto h6; End; End; h6: TextBackGround(0); w(0,1,2,45,3,c[1]); w(0,1,3,45,4,c[2]); w(0,1,4,45,5,c[3]); w(0,1,5,45,6,c[4]); w(0,1,6,45,7,c[5]); w(0,1,8,45,9,c[7]); w(0,1,9,45,10,c[8]); w(0,1,10,45,11,c[9]); w(0,1,11,45,12,c[10]); w(0,1,12,45,13,c[11]); w(0,1,13,45,14,c[12]); w(0,1,14,45,15,c[13]); w(1,1,7,45,8,c[6]);

Page 25: Bài Tập Lập Trình Cơ Sở

chon:= ReadKey; If chon= #13 then Begin TextColor(15); TextBackGround(0); Window(1,1,80,50); Sxtd; Clrscr; Goto h6; End Else Begin If chon= #0 then chon:= ReadKey; Case chon of #27: Halt; #72: Goto h5; #80: Goto h7; End; End; h7: TextBackGround(0); w(0,1,2,45,3,c[1]); w(0,1,3,45,4,c[2]); w(0,1,4,45,5,c[3]); w(0,1,5,45,6,c[4]); w(0,1,6,45,7,c[5]); w(0,1,7,45,8,c[6]); w(0,1,9,45,10,c[8]); w(0,1,10,45,11,c[9]); w(0,1,11,45,12,c[10]); w(0,1,12,45,13,c[11]); w(0,1,13,45,14,c[12]); w(0,1,14,45,15,c[13]); w(1,1,8,45,9,c[7]); chon:= ReadKey; If chon= #13 then Begin TextColor(15); TextBackGround(0); Window(1,1,80,50); Sxtdsbd; Clrscr; Goto h7; End Else Begin If chon= #0 then chon:= ReadKey; Case chon of #27: Halt; #72: Goto h6; #80: Goto h8; End; End; h8: TextBackGround(0); w(0,1,2,45,3,c[1]); w(0,1,3,45,4,c[2]); w(0,1,4,45,5,c[3]); w(0,1,5,45,6,c[4]); w(0,1,6,45,7,c[5]); w(0,1,7,45,8,c[6]); w(0,1,8,45,9,c[7]); w(0,1,10,45,11,c[9]); w(0,1,11,45,12,c[10]); w(0,1,12,45,13,c[11]); w(0,1,13,45,14,c[12]); w(0,1,14,45,15,c[13]); w(1,1,9,45,10,c[8]); chon:= ReadKey; If chon= #13 then Begin TextColor(15); TextBackGround(0); Window(1,1,80,50); Sua; Clrscr; Goto h8; End Else Begin If chon= #0 then chon:= ReadKey; Case chon of #27: Halt; #72: Goto h7; #80: Goto h9; End; End; h9: TextBackGround(0); w(0,1,2,45,3,c[1]); w(0,1,3,45,4,c[2]); w(0,1,4,45,5,c[3]); w(0,1,5,45,6,c[4]); w(0,1,6,45,7,c[5]); w(0,1,7,45,8,c[6]); w(0,1,8,45,9,c[7]); w(0,1,9,45,10,c[8]); w(0,1,11,45,12,c[10]);

Page 26: Bài Tập Lập Trình Cơ Sở

w(0,1,12,45,13,c[11]); w(0,1,13,45,14,c[12]); w(0,1,14,45,15,c[13]); w(1,1,10,45,11,c[9]); chon:= ReadKey; If chon= #13 then Begin TextColor(15); TextBackGround(0); Window(1,1,80,50); Intk; Clrscr; Goto h9; End Else Begin If chon= #0 then chon:= ReadKey; Case chon of #27: Halt; #72: Goto h8; #80: Goto h10; End; End; h10: TextBackGround(0); w(0,1,2,45,3,c[1]); w(0,1,3,45,4,c[2]); w(0,1,4,45,5,c[3]); w(0,1,5,45,6,c[4]); w(0,1,6,45,7,c[5]); w(0,1,7,45,8,c[6]); w(0,1,8,45,9,c[7]); w(0,1,9,45,10,c[8]); w(0,1,10,45,11,c[9]); w(0,1,12,45,13,c[11]); w(0,1,13,45,14,c[12]); w(0,1,14,45,15,c[13]); w(1,1,11,45,12,c[10]); chon:= ReadKey; If chon= #13 then Begin TextColor(15); TextBackGround(0); Window(1,1,80,50); Intd; Clrscr; Goto h10; End Else Begin If chon= #0 then chon:= ReadKey; Case chon of #27: Halt; #72: Goto h9; #80: Goto h11; End; End; h11: TextBackGround(0); w(0,1,2,45,3,c[1]); w(0,1,3,45,4,c[2]); w(0,1,4,45,5,c[3]); w(0,1,5,45,6,c[4]); w(0,1,6,45,7,c[5]); w(0,1,7,45,8,c[6]); w(0,1,8,45,9,c[7]); w(0,1,9,45,10,c[8]); w(0,1,10,45,11,c[9]); w(0,1,11,45,12,c[10]); w(0,1,13,45,14,c[12]); w(0,1,14,45,15,c[13]); w(1,1,12,45,13,c[11]); chon:= ReadKey; If chon= #13 then Begin TextColor(15); TextBackGround(0); Window(1,1,80,50); TcSbd; Clrscr; Goto h11; End Else Begin If chon= #0 then chon:= ReadKey; Case chon of #27: Halt; #72: Goto h10; #80: Goto h12; End; End; h12: TextBackGround(0); w(0,1,2,45,3,c[1]); w(0,1,3,45,4,c[2]); w(0,1,4,45,5,c[3]); w(0,1,5,45,6,c[4]); w(0,1,6,45,7,c[5]); w(0,1,7,45,8,c[6]);

Page 27: Bài Tập Lập Trình Cơ Sở

w(0,1,8,45,9,c[7]); w(0,1,9,45,10,c[8]); w(0,1,10,45,11,c[9]); w(0,1,11,45,12,c[10]); w(0,1,12,45,13,c[11]); w(0,1,14,45,15,c[13]); w(1,1,13,45,14,c[12]); chon:= ReadKey; If chon= #13 then Begin TextColor(15); TextBackGround(0); Window(1,1,80,50); Tcht; Clrscr; Goto h12; End Else Begin If chon= #0 then chon:= ReadKey; Case chon of #27: Halt; #72: Goto h11; #80: Goto h13; End; End; h13: TextBackGround(0); w(0,1,2,45,3,c[1]); w(0,1,3,45,4,c[2]); w(0,1,4,45,5,c[3]); w(0,1,5,45,6,c[4]); w(0,1,6,45,7,c[5]); w(0,1,7,45,8,c[6]); w(0,1,8,45,9,c[7]); w(0,1,9,45,10,c[8]); w(0,1,10,45,11,c[9]); w(0,1,11,45,12,c[10]); w(0,1,12,45,13,c[11]); w(0,1,13,45,14,c[12]); w(1,1,14,45,15,c[13]); chon:= ReadKey; If chon= #13 then Halt Else Begin If chon= #0 then chon:= ReadKey; Case chon of #27: Halt; #72: Goto h12; #80: Goto h1; End; End;End.