prolog

    3热度

    2回答

    我想从列表A和B中删除每个第n个元素,它们与彼此的第n个元素不相对应。因此,例如:我列出了包含[1,2,3,4,5]的列表A和包含[1,2,2,4,7]的列表B。结果应该是包含[3,5]的列表C和包含[2,7]的列表D。我想出了这一小段代码,但它还没有正常工作。 without_doubles([], [], [_], [_]). without_doubles([H|T1], [H|T2],

    1热度

    1回答

    我想通过使用Prolog来解决问题。 我收到了一个事实清单book/2代表book(title,author)。 ... book('Kamizelka', 'Boleslaw Prus'). book('Katarynka', 'Boleslaw Prus'). book('Kazania sejmowe', 'Piotr Skarga'). book('Konrad Wallenrod

    0热度

    1回答

    我想导出结果的计算,以在Prolog的文本文件,尝试以下操作: 我编译下面的程序test.pl: write_to_file(File, Text) :- open(File, write, Stream), write(Stream, Text), nl, close(Stream). 我做到以下几点: Y is 2**10000. 最后: write_to_f

    1热度

    1回答

    目前试图建立在序言图书馆推荐系统为大专分配和是很新的Prolog的,我完全迷失了方向,并想知道如果我能有一些这方面给我解释详细细节。 这里是我的事实和规则目前: book(after_dark, haruki_murakami,fiction,182). book(python, charlie, revision, 560). book(nt_bible, sams, reference,

    1热度

    2回答

    SWI prolog中的#=和=:=有什么区别? 我已经找到了SWI prolog的定义,但仍然对此感到困惑。 http://www.swi-prolog.org/pldoc/man?section=arithpreds http://www.swi-prolog.org/pldoc/man?section=clpfd-arith-constraints ?- 3=:=3. true. ?-

    -2热度

    1回答

    我想写一个函数来确定矩阵中的所有对角线元素是相同的。 例如: ?-diagonal([[1,2,3,4], [2,1,5,6], [6,2,1,9], [8,7,5,1]]). true. 任何帮助表示赞赏。

    2热度

    2回答

    我需要定义一个谓词eats/3(Eater,Food,Time)来检查食者是否吃掉食物,这取决于它是什么时间。 我有描述其组成部分之间的生物关系以下语义框架: is_a(animal, living_being). is_a(plant, living_being). is_a(herbivore, animal). is_a(carnivore, animal). is_a(omnivo

    1热度

    1回答

    我正在尝试通过中间旅行方法中的二叉树 我的目标是在树 中寻找特定键的发生例如, 我有以下三种: t(t(t(nil,"d",t(nil,"g",nil)),"b",t(nil,"e",nil)),"a",t(t(nil,"f",t(nil,"h",nil)),"c",nil)) 时,我会用我的inorder_finder我会得到如下: 为“C”我会得到8 为“d”我会得到1 的“w “我会得到

    0热度

    2回答

    我试图完成的是获得什么'组件'没有被使用。所以我创建了一个包含所有'组件'和'使用组件'的列表。 我的想法是比较这个列表并创建另一个不匹配元素的列表。 component('name 1', 1). component('name 2', 2). component('name 3', 3). component('name 4', 4). component('name 5', 5).

    1热度

    1回答

    我是prolog的初学者,我试图用图片https://i.stack.imgur.com/BechG.png中显示的方框来解决问题。我的代码是: box(a). box(b). box(c). table(t). on(a,t). on(b,t). on(c,a). free(b). free(c). move(X,Z),free(Y):- free(X),