Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在prolog语句中表示句子_Prolog - Fatal编程技术网

如何在prolog语句中表示句子

如何在prolog语句中表示句子,prolog,Prolog,问题如下: 在序言中表示以下内容: 布奇是个杀手 2米娅和马塞勒斯结婚了 泽德死了 马塞勒斯杀了所有给米娅做足底按摩的人 米娅喜欢每一个舞蹈家 朱尔斯吃任何有营养或美味的东西 我的答案是这样的,请帮我检查一下我是对还是错。 杀手(布奇) 2人结婚(米娅、马塞勒斯) 3人死亡(泽德) 4次杀戮(马塞勒斯,X):-给予按摩(米娅,X) 5爱(米娅,X):-好舞者(X) 6次进食(朱尔斯,X):-营养丰富(X);美味的(X) 非常感谢:)您已经将这些句子正确地翻译成了序言 但是您的命名约定使得代码很难

问题如下:

在序言中表示以下内容:

布奇是个杀手

2米娅和马塞勒斯结婚了

泽德死了

马塞勒斯杀了所有给米娅做足底按摩的人

米娅喜欢每一个舞蹈家

朱尔斯吃任何有营养或美味的东西

我的答案是这样的,请帮我检查一下我是对还是错。

  • 杀手(布奇)
  • 2人结婚(米娅、马塞勒斯)

    3人死亡(泽德)

    4次杀戮(马塞勒斯,X):-给予按摩(米娅,X)

    5爱(米娅,X):-好舞者(X)

    6次进食(朱尔斯,X):-营养丰富(X);美味的(X)


    非常感谢:)

    您已经将这些句子正确地翻译成了序言

    但是您的命名约定使得代码很难阅读

    一个好的序言命名约定清楚地说明了每个参数的含义

    例如,让我们以您的最后一条为例:

    eats(朱尔斯,X):-营养丰富(X);美味(X)。

    从上下文来看,第一个论点显然是人,第二个论点是食物。一个好的谓词名称使其显式

    与此形成对比的是:

    吃食物的人(朱尔斯,食物):-有营养的(食物);美味(食物)

    我建议你再看一遍每一个翻译,如果可能的话,尽量找到更好的名字