Tải bản đầy đủ (.pdf) (11 trang)

Bài giảng ngôn ngữ lập trình chương 6 lập trình hàm

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (153.38 KB, 11 trang )

NGƠN NGỮ LẬP TRÌNH
45 tiết = 3 đơn vị học trình

Giảng viên: Nguyễn Văn
Linh

E-mail:

Tel: (84) (71) 831301


Nguyễn Văn Linh ­ Programing 
Language ­ Chapter 1

1


CHƯƠNG 6:
LẬP TRÌNH HÀM




Ngơn ngữ lập trình hàm


Giới thiệu.



Hàm toán học.





Dạng hàm.



Bản chất của lập trình hàm.

Ngơn ngữ LISP

Nguyen Van Linh ­ Programing 
Language ­ Chapter 8

2


NGÔN NGỮ LISP
v

Giới thiệu.

v

Các khái niệm cơ bản.

v

Các hàm.


v

Đệ quy.

v

Biến toàn cục và biến cục bộ.

v

Các hàm nhập xuất.

v

Hướng dẫn sử dụng Lisp.
Nguyen Van Linh ­ Programing 
Language ­ Chapter 8

3


LISP: GIỚI THIỆU


Được J. MAC CARTHY viết năm 1958.



Phát triển mạnh vào đầu những năm 80.




Cú pháp đơn gỉan.



Là mợt ngơn ngữ mạnh.



Mềm dẻo và dễ phát triển.



Áp dụng trong lĩnh vực trí tuệ nhân tạo.
Nguyen Van Linh ­ Programing 
Language ­ Chapter 8

4


CÁC KHÁI NIỆM CƠ BẢN





Ngun tử (Atom): Sớ, kí hiệu.
Danh sách: Dãỹ có thứ tự các nguyên tử
hoặc danh sách, nằm trong cặp dấu ngoặc

đơn ().
Biểu thức và nguyên tắc lượng giá:


Sớ.



Ký hiệu.



Danh sách.
Nguyen Van Linh ­ Programing 
Language ­ Chapter 8

5


HÀM ĐỊNH NGHĨA TRƯỚC


Các hàm sớ học: +, -, *, /, 1+, 1-



Các hàm so sánh: <, >, <=, >=, =, eq.






Các hàm thao tác trên danh sách: CAR, CDR,
CONS và LIST.
Các vị từ kiểm tra: (atom a), (numberp n), (listp
l), (symbol s),...



Các hàm logic AND, OR, NOT.



Các hàm điều khiển IF, COND, PROGN, PROG1
Nguyen Van Linh ­ Programing 
Language ­ Chapter 8

6


HÀM DO NGƯỜI DÙNG ĐỊNH
NGHĨA


Cú pháp:

(defun <tên hàm> (Các tham sớ hình thức)

<biểu thức>
)



Ví dụ:

(defun binh_phuong (n)
(* n n)
)
(defun lap_phuong (n)
(* n (binh_phuongNguyen Van Linh ­ Programing 
n))
Language ­ Chapter 8

7


ĐỆ QUY
v

v

v

Một trường hợp “nguyên tố” để kết thúc việc gọi
đệ quy.
Lời gọi đệ quy phải bao hàm yếu tố dẫn đến
trường hợp “nguyên tố”.
Ví du: Tính n giai thừa

(defun giai_thua (n)
(if (= n 0) 1 ; Trường hợp “nguyên tố”


(* n (giai_thua (1- n)))
)
)

Nguyen Van Linh ­ Programing 
Language ­ Chapter 8

8


BIẾN TOÀN CỤC &
BIẾN CỤC BỘ
v

v

v

(SETQ <tên biến> <biểu thức>).
(LET ((var1 E1) (var2 E2) ... (vark Ek))
Ek+1 ... En)

Hạn chế sử dụng biến toàn cục.

Nguyen Van Linh ­ Programing 
Language ­ Chapter 8

9



CÁC HÀM NHẬP XUẤT


LOAD( <tên tập tin>).



(READ)



(PRINT e)



(PRINC e)



(TERPRI)

Nguyen Van Linh ­ Programing 
Language ­ Chapter 8

10


HƯỚNG DẪN SỬ DỤNG
CHƯƠNG TRÌNH





Soạn thảo chương trình:


Sử dụng bất kỳ editor nào.



Phần
̀ mở rợng .LSP.



Trong mợt tập tin, có thể định nghĩa nhiều hàm.

Gọi thực hiện XLISP:


Trong Windows 3.x.



Trong Windows 9x.



Sử dụng menu File-Open/Load để mở tập tin chương

trình.
Nguyen Van Linh ­ Programing 
Language ­ Chapter 8

11



×