Prolog编程:菜单构建、专家系统与算术运算
1. 字符处理与菜单构建
1.1 字符代码与输入读取
在Prolog中, put
和 get0
在ISO标准中分别被称为 put_code
和 get_code
。 get
没有直接提供,但可以自定义为:
get(Code):-
repeat,
get_code(Code),
Code>32,
!.
get0
和 put
主要用于从文件读取任意字节、向打印机发送任意控制代码等。当尝试读取文件末尾之后的内容时, get
和 get0
通常返回 -1,但在Arity Prolog中它们会失败,在Cogent Prolog中会返回原子 '!EOF'
。
1.2 构建菜单
可以使用 get
来接受菜单的单键响应。以下是一个示例程序 MENUDEMO.PL
:
% File MENUDEMO.PL
% Illustrates accepting input from a menu
% Knowledge base
capita