prolog - Prolog祖父母关系
问题描述
%Family tree program
% Define facts
parent(mohamed,amer).
parent(mohamed,salah).
parent(amer,hassan).
parent(amer,mohamed).
parent(salah,ahmed).
parent(salah,mostafa).
male(mohamed).
male(amer).
male(hassan).
male(mohamed).
male(salah).
male(ahmed).
male(mosatfa).
% Define rules
offspring(Y,X):-
parent(X,Y).
brother(Y,D):-
parent(Z,Y):-
parent(Z,D).
grandparent(X,Z):-
parent(X,Y):-
parent(Y,Z).
uncle(C,Y):-parent(Z,Y):-brother(Z,C).
当我在 swi-pl 中运行时:祖父母(Y,hassan)。我认为正确的答案是穆罕默德,但输出是错误“错误:未知程序:祖父母/2(DWIM 无法纠正目标)”
解决方案
推荐阅读
- javascript - 如何使用 JS 画布正确渲染透明的多部分对象
- django - 使用 django 主键重命名上传的文件
- java - 如何使用 MongoDB 和 Spring 的存储库更新列表?
- html - 如何删除画布元素两侧的细边框?
- node.js - 当我的终端卡在 Mongoose 会话中的 node app.js 时该怎么办?
- linux - 如何使用内核模块读取某个条目
- swift - SwiftUI:如何使通知交互更改为我的视图的一部分?
- python - 使用 robin_stocks python 包的属性错误
- svg - 我可以使用“符号”和“使用”标签来保留具有 preserveAspectRatio="none" 的 SVG 中文本的纵横比吗?
- python - 我正在尝试在此 excel csv 类型文档中打印类下的所有项目,但我不断收到属性错误