Bài giảng Ngôn ngữ lập trình - Chương 6: Lập trình hàm - Nguyễn Văn Linh

NGÔN NGỮ LISP

Giới thiệu.

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

Các hàm.

Đệ quy.

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

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

Hướng dẫn sử dụng Lisp.

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.

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

Nguyên tử (Atom): Số, kí hiệu.

Danh sách: Dã̃y 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.

 

pptx 11 trang kimcuc 7320
Bạn đang xem tài liệu "Bài giảng Ngôn ngữ lập trình - Chương 6: Lập trình hàm - Nguyễn Văn Linh", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Bài giảng Ngôn ngữ lập trình - Chương 6: Lập trình hàm - Nguyễn Văn Linh

Bài giảng Ngôn ngữ lập trình - Chương 6: Lập trình hàm - Nguyễn Văn Linh
Nguyễn Văn Linh - Programing Language - Chapter 1 
1 
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: nvlinh@ctu.edu.vn 
 Tel: (84) (71) 831301 
Nguyen Van Linh - Programing Language - Chapter 8 
2 
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 
3 
NGÔN NGỮ LISP 
Giới thiệu. 
Các khái niệm cơ bản. 
Các hàm. 
Đệ quy. 
Biến toàn cục và biến cục bộ. 
Các hàm nhập xuất. 
Hướng dẫn sử dụng Lisp. 
Nguyen Van Linh - Programing Language - Chapter 8 
4 
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 
5 
CÁC KHÁI NIỆM CƠ BẢN 
Nguyên tử (Atom): Số, kí hiệu. 
Danh sách: Dã̃y 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 
6 
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 
7 
HÀM DO NGƯỜI DÙNG ĐỊNH NGHĨA 
Cú pháp: 
(defun (Các tham số hình thức) 
) 
Ví dụ: 
(defun binh_phuong (n) 
	(* n n) 
) 
(defun lap_phuong (n) 
	(* n (binh_phuong n)) 
) 
Nguyen Van Linh - Programing Language - Chapter 8 
8 
ĐỆ QUY 
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 
9 
BIẾN TOÀN CỤC &  BIẾN CỤC BỘ 
(SETQ ). 
(LET ((var 1 E 1 ) (var 2 E 2 ) ... (var k E k )) E k+1 ... E n ) 
Hạn chế sử dụng biến toàn cục. 
Nguyen Van Linh - Programing Language - Chapter 8 
10 
CÁC HÀM NHẬP XUẤT 
LOAD( ). 
(READ) 
(PRINT e) 
(PRINC e) 
(TERPRI) 
Nguyen Van Linh - Programing Language - Chapter 8 
11 
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. 

File đính kèm:

  • pptxbai_giang_ngon_ngu_lap_trinh_chuong_6_lap_trinh_ham_nguyen_v.pptx