Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 20 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
20
Dung lượng
296,15 KB
Nội dung
TRƯ NG ð I H C NÔNG NGHI P I - HÀ N I B MÔN CÔNG NGH PH N M M TS DƯƠNG XUÂN THÀNH Giáo trình L P TRÌNH NÂNG CAO ( Trên ngơn ng Pascal ) (So n theo chương trình đư c B GD&ðT phê chu n) Hà n i, 2005 ThuVienDeThi.com L im ñ u Cu n giáo trình đư c biên so n theo đ cương chi ti t mơn h c ñã ñư c B Giáo d c ðào t o phê chu n Th i gian h c mơn h c 60 ti t có 10 ti t th c hành máy Tác gi ngư i ñã tr c ti p gi ng d y l p trình Pascal nhi u năm cho sinh viên chuyên tin sinh viên ngành khác ð i tư ng s d ng giáo trình sinh viên chuyên ngành Tin h c h đ i h c quy, nhiên giáo trình có th s d ng m t tài li u tham kh o cho sinh viên chuyên Tin h cao ñ ng nh ng ngư i mu n nghiên c u nâng cao v l p trình M c đích biên so n cu n giáo trình cung c p cho ngư i đ c m t tài li u đơn gi n, đ ng nh ng ki n th c v l p trình nâng cao Ngư i đ c có th t h c mà không nh t thi t ph i có thày hư ng d n Giáo trình bao g m chương ph l c Chương 1: Chương trình - Th t c hàm, sinh viên đư c h c qua chương trình Tin h c ñ i cương, v y ñây ch y u ñi sâu vào khái ni m tham s , cách th c mà h th ng dành b nh cho vi c lưu tr tham s vi c g i chương trình t chương trình khác Chương 2: Các ki u d li u có c u trúc, t p trung vào ki u d li u mà sinh viên chưa ñư c h c b n ghi có c u trúc thay ñ!i, t p h p Chương 3: ðơn v chương trình thư vi n chu n, chương chưa ñư c h c Tin h c ñ i cương , ñây hư ng d n cách thi t k ðơn v" chương trình (Unit), cách th c s d ng Unit t o l p thư vi n chương trình Chương 4: Con tr c u trúc ñ ng, m t chương khó, v a liên quan đ n qu n lý b nh , v a liên quan ñ n ki n th c c a môn h c C u trúc d li u Gi i thu t v y chương trình bày nhi u ví d đ ngư i đ c tham kh o Chương 5: Gi i thu t ñ quy, đư c trình bày “hơi dài dịng” đ#c thù c a tính đ quy Bài tốn Tháp Hanoi đư c mơ t khác hồn tồn so v i t t c sách v Pascal có Chương 6: ð ho , vi c gi i thi u th t c v$ thơng thư ng, cịn dành m t ph%n tr ng tâm cho vi c x lý nh Bitmap Trong chương có s d ng m t vài ví d c a tác gi khác (xem ph%n tài li u tham kh o) ñã ñư c c i ti n ñi r t nhi u Ph l c 1: B ng mã ASCII Ph l c 2: Tóm t&t th t c hàm c a Turbo Pascal 7.0 Ph l c 3: ð"nh hư ng biên d"ch Ph l c 4: Thơng báo l'i Các ph l c đưa nh(m giúp ngư i l p trình ti n tra c u th t c, hàm x lý l'i Pascal thơng báo l'i hình Do ph i bám sát ñ cương s h n ch v s trang tác gi nên giáo trình chưa đưa vào đư c ph%n x lý âm thanh, l p trình hư ng đ i tư ng Vi c biên so n l%n đ%u khơng th tránh ñư c thi u sót, tác gi mong nh n ñư c s góp ý c a b n ñ c ñ ng nghi p ñ l%n xu t b n sau s$ t t M i góp ý xin g i v đ"a ch): B mơn Cơng ngh Ph%n m m, Khoa Công ngh Thông tin, ð i h c Nông nghi p I , Trâu quỳ, Gia lâm, Hà n i Xin trân tr ng c m ơn Hà n i, tháng năm 2005 Ts Dương Xuân Thành Trư ng ð i h c Nông nghi p - Giáo trình L p trình nâng cao ThuVienDeThi.com Chương I Chương trình - Th t c hàm Khái ni m chương trình đư c trình bày mơn h c Tin h c đ i cương, v y chương nh&c l i sơ qua m t s khái ni m cũ dành th i gian cho vi c tìm hi u sâu v tham s (tham bi n tham tr"), l i g i chương trình con, cách th c b trí chương trình thân chương trình m+ Sau h c chương b n ñ c c%n n&m ñư c n i dung ch y u sau: Th bi n toàn c c, bi n đ"a phương Các bi n tồn c c bi n ñ"a phương ñư c b trí đâu T%m tác d ng c a t ng lo i bi n Th t xây d ng chương trình có nh hư ng th đ n tồn b chương trình Th tính đ quy c a chương trình L i g i chương trình th đư c phép Cách khai báo trư c đ g i chương trình không theo th t thi t k Trư ng ð i h c Nơng nghi p - Giáo trình L p trình nâng cao ThuVienDeThi.com Khái ni m v chương trình Chương trình Pascal đư c hi u m t chương trình n(m lịng m t chương trình khác Chương trình g m hai lo i: Th t c (Procedure) hàm (Function) Các chương trình đư c dùng r ng rãi xây d ng chương trình l n nh(m làm cho chương trình d, theo dõi, d, s a ch a M t ñ#c ñi m n!i b t c a chương trình có tính đ quy nh th mà nhi u tốn s$ đư c gi i quy t d, dàng Khi m t chương trình đư c g i bi n đư c khai báo chương trình (ta g i bi n c c b ) s$ ñư c c p phát b nh K t thúc chương trình con, bi n c c b đư c gi i phóng, u s$ đư c l#p l i m'i chương trình đư c g i đ ng nghĩa v i vi c th i gian x lý toán s$ tăng lên B n thân tên g i c a hai lo i chương trình nói lên ph%n s khác gi a chúng Function (Hàm) m t lo i chương trình cho k t qu m t giá tr" vô hư ng Khi g i tên Function v i tham s h p l ta s$ nh n ñư c giá tr", b i v y tên hàm có th đưa vào bi u th c tính tốn tốn h ng Procedure lo i chương trình th c hi n không cho k t qu m t giá tr", m'i Procedure nh(m th c hi n m t nhóm cơng vi c c a chương trình m+, v y tên c a Procedure khơng th đưa vào bi u th c tính tốn B(ng cách xây d ng chương trình ngư i l p trình có th phân m nh chương trình cho nhi u ngư i làm dư i s ch) ñ o th ng nh t c a ngư i ch trì Trong Turbo Pascal có s.n m t s chương trình con, ví d : sin(x), sqrt(x) Function, read(), write(), gotoxy (x1,x2) Procedure Trong m t chương trình chương trình đư c b trí sau ph%n khai báo bi n C u trúc t!ng quát m t chương trình Pascal sau: PROGRAM tên_chương_trình; USES tên UNIT; (*khai báo ñơn v" chương trình c%n thi t*) LABEL (*khai báo nhãn*) CONST (*Khai báo h(ng*) TYPE (*ñ"nh nghĩa ki u d li u m i*) VAR (*khai báo bi n*) PROCEDURE Tên_CTC1 (danh sách tham s hình th c); Begin (*thân th t c th nh t*) End; PROCEDURE Tên_CTC2 (danh sách tham s hình th c); Begin (*thân th t c th hai*) End; Trư ng ð i h c Nơng nghi p - Giáo trình L p trình nâng cao ThuVienDeThi.com FUNCTION Tên_HAM1(danh sách tham s hình th c):ki u hàm; Begin (*thân hàm th nh t*) End; BEGIN END (*b&t đ%u chương trình m+*) Ghi chú: Các chương trình v nguyên t c bao g m ph n khai báo báo ñ i v i m t chương trình m , ph n khơng c n thi t khơng khai ði u khác b n thân chương trình n m gi a hai t khoá Begin End; (sau End d u ";" ch không ph i d u "." chương trình m ) ngồi chương trình cịn có th thêm ph n khai báo tham s hình th c, tham s hình th c ñư c ñ t d u () vi t sau tên chương trình N u chương trình Function cu i chương trình c n có l nh gán giá tr vào tên chương trình Tham s! chương trình Các chương trình có th khơng c%n tham s mà ch) có bi n riêng (bi n c c b ) Trong trư ng h p c%n nh n giá tr" mà chương trình m+ truy n cho chương trình c%n ph i có tham s (Parameter) Tham s ñư c khai báo sau tên chương trình đư c g i tham s hình th c Nh ng giá tr" lưu tr bi n toàn c c c a chương trình m+, n u đư c truy n cho th t c ho#c hàm thông qua l i g i tên chúng đư c g i Tham s th c Tham s hình th c bao g m hai lo i: 2.1 Tham bi"n (Variabic parameter) Tham bi n nh ng giá tr" mà chương trình nh n t chương trình m+, giá tr" có th bi n đ!i chương trình chương trình k t thúc giá tr" s$ ñư c tr v cho tham s th c Cách khai báo tham bi n: Tên chương trình (Var tên tham bi"n : ki u d li u); 2.2 Tham tr (Value parameter) Nh ng tham s truy n vào cho chương trình x lý quay v chương trình m+ v n ph i gi nguyên giá tr" ban ñ%u đư c g i tham tr Cách khai báo tham tr": Tên chương trình (tên tham tr : ki u d li u); Dư i ñây m t ví d khai báo tham s : Trư ng ð i h c Nông nghi p - Giáo trình L p trình nâng cao ThuVienDeThi.com PROCEDURE VIDU(x,y,z: integer; lam:boolean; var qq: char); Câu l nh khai báo chương trình ñây ñ ng th i khai báo tham s hình th c x, y,z, lam tham tr", v i x, y,z có ki u integer, lam có ki u boolean, qq tham bi n đư c vi t sau t khố VAR Ví d L p chương trình tìm s l n nh t n s nguyên ñư c nh p t bàn phím Program Tim_cuc_dai; Uses Crt; TYPE dayso = array[1 100] of integer; (* ð"nh nghĩa ki u d li u dayso ki u m ng g m nhi u nh t 100 ph%n t *) VAR a: dayso (*khai báo bi n c a chương trình m+*) n: integer; PROCEDURE nhapso(m:integer; var x:dayso); (* Nh p dãy s Var i : integer; c%n tìm c c ñ i vào m ng m t chi u x[i]*) (*khai báo bi n c c b c a chương trình con*) Begin writeln('Nhap day so kieu integer); For i:=1 to m Do (* m ñư c truy n t chương trình m+ qua tham s th c n*) Begin write('a[', i , '] = '); realln (x[i]); End; End; FUNCTION Max(m: integer; b:dayso); integer; (* Hàm MAX dùng đ tìm s l n nh t dãy s ñã nh p, ki u giá tr" c a hàm ki u integer *) VAR i,t: integer; (* Bi n riêng c a hàm Max *) Begin t:=b[1]; (* Gán ph%n th nh t c a m ng b[i] cho bi n t *) For i:=2 to m Do if t
Ngày đăng: 25/03/2022, 11:14
HÌNH ẢNH LIÊN QUAN
Hình 1.1
(Trang 11)
r
ên thanh th c ñơ n ch n Options/Memory Size s$ xu thi nc a s! (hình 1.2) (Trang 12)