Prolog学习笔记(五)

一、数据库

以家庭为例,Prolog可以构造一个结构去表示家庭,并且通过facts的形式储存family的数据内容:

进一步,我们将多个family放入familyBase这个fact内:

这样,我们就写好了一个简单的数据库。

二、数据抽象

操作数据时必须要准确地知道我们数据的结构是麻烦的。因此我们将会利用结构的知识去设计query。这意味着我们需要利用更高层次的视图去操作数据。

选择器关系(selector relations):

三、八皇后问题

八皇后问题是一个以国际象棋为背景的问题:如何能够在 8×8 的国际象棋棋盘上放置八个皇后,使得任何一个皇后都无法直接吃掉其他的皇后?为了达到此目的,任两个皇后都不能处于同一条横行、纵行或斜线上。——维基百科

Prolog递归实现:

Be First to Comment

发表评论

电子邮件地址不会被公开。 必填项已用*标注