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

Lời giải bài tập prolog chương 2 Ngữ nghĩa của chương trình prolog môn lập trình logic và ràng buộc.

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 (3.67 MB, 31 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO

BỘ GIAO THÔNG VẬN TẢI

TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI TP.HCM
--------- oOo --------

BÁO CÁO CUỐI KỲ
MƠN HỌC: LẬP TRÌNH LOGIC VÀ RÀNG BUỘC
Nội dung: Ngữ nghĩa của chương trình Prolog

TP.HCM.3 NĂM 2023


NHẬN XÉT CỦA GIẢNG VIÊN

I


MỤC LỤC
Phần 1: Lý thuyết……………………………………………………………………1
I. Quan hệ giữa Prolog và logich tốn học ...........................................................................................1
II. Các mức nghĩa của chương trình Prolog ......................................................................................... 2
II.1. Nghĩa khai báo của chương trình Prolog ......................................................................................2
II.2. Khái niệm về gói mệnh đề ............................................................................................................3
II.3. Nghĩa Logich của các mệnh đề .................................................................................................... 4
II.4. Nghĩa thủ tục của Prolog .............................................................................................................. 5
II.5. Tổ hợp các yếu tố khai báo và thủ tục ........................................................................................10
III. Sắp đặt thứ tự các mệnh đề và các đích ....................................................................................... 11
III.1. Nguy cơ lặp các vịng lặp vơ hạn .............................................................................................. 11
III.2. Thay đổi thứ tự mệnh đề và đích trong chương trình ............................................................... 11



Phần 2: Bài tập...........................................................................................................20
Bài 1: .................................................................................................................................................. 19
Bài 2: .................................................................................................................................................. 20
Bài 3: .................................................................................................................................................. 22
Bài 4: .................................................................................................................................................. 23
Bài 5: .................................................................................................................................................. 23
Bài 6: .................................................................................................................................................. 24
Bài 7: .................................................................................................................................................. 24
Bài 8: .................................................................................................................................................. 25
Bài 9: .................................................................................................................................................. 27
Bài 10: ................................................................................................................................................ 27

II


Phần 1: Lý thuyết
I. Quan hệ giữa Prolog và logich toán học

1


II. Các mức nghĩa của chương trình Prolog

II.1. Nghĩa khai báo của chương trình Prolog

2


II.2. Khái niệm về gói mệnh đề


3


II.3. Nghĩa Logich của các mệnh đề

4


II.4. Nghĩa thủ tục của Prolog

5


6


7


8


9


II.5. Tổ hợp các yếu tố khai báo và thủ tục

10



III. Sắp đặt thứ tự các mệnh đề và các đích
III.1. Nguy cơ lặp các vịng lặp vơ hạn

III.2. Thay đổi thứ tự mệnh đề và đích trong chương trình

11


12


13


14


15


Phần 2: BÀI TẬP

16


17


18



BÀI LÀM
Bài 1:
1. Kết quả nhận được khi thực hiện truy vấn "?-flies(X)" trong chương trình Prolog
trên là:
X = percy ;
X = tweety ;
X = peter ;
X = concorde ;
X = jumbo ;
X = fred ;

Hình 1. Chạy chương trình bài 1 trên phần mềm SWI-Prolog

19


Bài 2:

20


Có quay lui. Vì khi xét đến trường hợp thất bại, prolog sẽ quay lui về trước đó
để xét 1 hướng khác, khi khơng cịn khả năng xét nào nữa sẽ đưa ra False.

21


Hình 2. Chạy chương trình bài 2 trên phần mềm SWI-Prolog


Bài 3:
translate(Number,Word):-(Number=1,Word=one).
translate(Number,Word):-(Number=2,Word=two).
translate(Number,Word):-(Number=3,Word=three).

Hình 3. Chạy chương trình bài 3 trên phần mềm SWI-Prolog

22


×