1. Trang chủ
  2. » Luận Văn - Báo Cáo

Giáo trình về LẬP TRÌNH NÂNG CAO

165 1 0

Đ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

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 Bộ GD&ðT phê chuẩn) Hà nội, 2005 Lời mở đầu Cuốn giáo trình ñược biên soạn theo ñúng ñề cương chi tiết mơn họ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 sử dụng tài liệu tham khảo cho sinh viên chuyên Tin hệ cao ñẳng người muốn nghiên cứu nâng cao lập trình Mục đích biên soạn giáo trình cung cấp cho người đọc tài liệu đơn giản, đọng kiến thức lập trình nâng cao Người đọc tự học mà khơng 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, chủ yếu ñi sâu vào khái niệm tham số, cách thức mà hệ thống dành 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 liệu có cấu trúc, tập trung vào kiểu liệu mà sinh viên chưa học 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 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, chương khó, vừa liên quan ñến quản lý nhớ, vừa liên quan ñến kiến thức môn học Cấu trúc liệu Giải thuật chương trình bày nhiều ví dụ để người đọc tham khảo Chương 5: Giải thuật đệ quy, trình bày “hơi dài dịng” đặc thù tính đệ quy Bài tốn Tháp Hanoi mơ tả khác hồn tồn so với tất sách Pascal có Chương 6: ðồ hoạ, ngồi việc giới thiệu thủ tục vẽ thơng thường, dành phần trọng tâm cho việc xử lý ảnh Bitmap Trong chương có sử dụng vài ví dụ tác giả khác (xem phần tài liệu tham khảo) ñã ñược cải tiến ñi nhiều Phụ lục 1: Bảng mã ASCII Phụ lục 2: Tóm tắt thủ tục hàm 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 hạn chế số trang tác giả nên giáo trình chưa đưa vào 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 thiếu sót, tác giả mong nhận góp ý bạn đọc ñồng nghiệp ñể lần xuất sau tốt Mọi góp ý xin gửi đị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 - Chương I Chương trình - Thủ tục hàm Khái niệm chương trình trình bày mơn học Tin học ñại cương, chương nhắc lại sơ qua số khái niệm cũ dành thời gian cho việc tìm hiểu sâu 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 tồ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 loại biến  Thứ tự xây dựng chương trình có ảnh hưởng đến tồn chương trình  Thế tính đệ quy chương trình  Lời gọi chương trình ñượ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 - Khái niệm chương trình Chương trình Pascal hiểu chương trình nằm lịng 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 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 bật chương trình có tính đệ quy nhờ mà nhiều tốn giải dễ dàng Khi chương trình gọi biến khai báo chương trình (ta gọi biến cục bộ) ñược cấp phát nhớ Kết thúc chương trình con, biến cục ñược giải phóng, ñiều ñược lặp lại chương trình gọi đồng nghĩa với việc thời gian xử lý toán tăng lên Bản thân tên gọi hai loại chương trình nói lên phần khác chúng Function (Hàm) loại chương trình cho kết giá trị vô hướng Khi gọi tên Function với tham số hợp lệ ta nhận giá trị, tên hàm đưa vào biểu thức tính tốn tốn hạng Procedure loại chương trình thực không cho kết giá trị, Procedure nhằm thực nhóm cơng việc chương trình mẹ, tên 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 phân mảnh chương trình cho nhiều người làm ñạo thống người chủ trì Trong Turbo Pascal có sẵn số chương trình con, ví dụ: sin(x), sqrt(x) Function, read(), write(), gotoxy (x1,x2) Procedure Trong chương trình chương trình bố trí sau phần khai báo biến Cấu trúc tổng quá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 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 - 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 nguyên tắc bao gồm phần khai báo báo chương trình mẹ, phần khơng cần thiết khơng khai ðiều khác thân chương trình nằm hai từ khố Begin End; (sau End dấu ";" dấu "." chương trình mẹ) ngồi chương trình cịn 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 khơng cần tham số mà 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ố khai báo sau tên chương trình gọi tham số hình thức Những giá trị lưu trữ biến tồn cục chương trình mẹ, truyền cho thủ tục hàm thơng qua lời gọi tên chúng 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 giá trị mà chương trình nhận từ chương trình mẹ, giá trị biến đổi chương trình chương trình kết thúc giá trị ñược trả 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 liệu); 2.2 Tham trị (Value parameter) Những tham số truyền vào cho chương trình xử lý quay chương trình mẹ phải giữ ngun 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 liệu); Dưới 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 - PROCEDURE VIDU(x,y,z: integer; lam:boolean; var qq: char); Câu lệnh khai báo chương trình đồ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 viết sau từ khố VAR Ví dụ 1.1: Lập chương trình tìm số lớn n số ngun 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 liệu dayso kiểu mảng gồm nhiều 100 phần tử*) VAR a: dayso (*khai báo biến chương trình mẹ*) n: integer; PROCEDURE nhapso(m:integer; var x:dayso); (* Nhập dãy số cần tìm cực đại vào mảng chiều x[i]*) Var i : integer; (*khai báo biến cục chương trình con*) Begin writeln('Nhap day so kieu integer); For i:=1 to m Do (* m 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 dãy số ñã nhập, kiểu giá trị hàm kiểu integer *) VAR i,t: integer; (* Biến riêng hàm Max *) Begin t:=b[1]; (* Gán phần thứ mảng b[i] cho biến t *) For i:=2 to m Do if ty[i] then ymin:=y[i]; If ymax=dmin) and (d=cmin) and (c

Ngày đăng: 07/07/2023, 00:52

Xem thêm:

w