prolog-toplevel

    4熱度

    2回答

    ?-在Prolog中的含義是什麼? 例如: ?- consult(solve)

    1熱度

    2回答

    我在是新的Prolog,我想設置規則的SWI-Prolog的殼如 - listensToMusic(X) :- happy(X). 但它提示 - ERROR: Undefined procedure: (:-)/2 我用SWI-Prolog的版本6.2.6

    0熱度

    1回答

    可能重複: Using SWI-Prolog Interactively - Output Taken off 我在序言寫了一個程序,以取代1 X出現了8 。 該程序工作正確,因爲它提供正確的輸出。但是當我給它長時間的輸入時它會縮短我的輸出。如何防止這一點? 實施例: X = [2, 8, 3, 8, 4, 8, 5, 1, 6|...] . 是對輸出 replace_first_k(3,[2

    2熱度

    1回答

    鍵入 「序言」 時獲得的終端正確的答案,但錯誤的答案得: GNU Prolog 1.3.0 By Daniel Diaz Copyright (C) 1999-2007 Daniel Diaz | ?- 打字: | ?- member(2, [1,2,3]). 獲取: true ? 然後按Enter鍵獲取: yes 打字: | ?- member(4, [1,2,3])

    1熱度

    1回答

    我有事實: /**--(course,time,location)--*/ ctl('course1', 'time1','location1'). ctl('course2', 'time1','location2'). ctl('course3', 'time2','location3'). /**--Lecturer,course-*/ lc('lecturer1','cou

    1熱度

    3回答

    我剛開始學習Prolog,遇到一個我不明白的問題。 當我問: ?- fail; true. Prolog的答案: true 這是我的預期。但是,如果我問: ?- true; fail. Prolog的答案: true ; false. ..和我不明白爲什麼。析取運算符應該是可交換的。爲什麼這兩個Prolog的答案不同?

    6熱度

    2回答

    我是新來的prolog,並且正在試驗如何讓它在找到一個答案後停止查詢。我使用此代碼: member1(L,[L|_]). member1(L,[_|RS]) :- member1(L,RS),!. 的結果是:「真正的」 | ?- member1(3,[3,2,3]). true ? a yes 我迷路了,我怎麼能拿序言停止打印而只是打印「是」。我試過使用if/else

    1熱度

    2回答

    不知道問題的措辭是否正確,我的道歉。基本上我想要做的是在Prolog中創建某種錯誤處理。例如: fruit(apple, pear). 現在,如果用戶要查詢: ?- fruit(X). 我怎麼會告訴他們已經犯了一個錯誤的用戶?並返回一條消息: Data should be entered in the format: 'fruit(X, Y)' Please check your quer

    5熱度

    1回答

    我想用Prolog編寫一個小型的基於文本的冒險遊戲(這可能是一個愚蠢的想法,但我不在這裏討論)。 唯一的問題是我不能在屏幕上打印文本而沒有顯示「true」和「false」值。 舉例來說,如果我嘗試類似: take(desk) :- write('This thing is way too heavy for me to carry!'). 其中take是一個謂詞和desk一個名字,我得到的輸出

    2熱度

    1回答

    我是Prolog的新手。我有這樣的代碼: loves(vincent, mia). loves(marsellus,mia). jealous(X,Y):- loves(X,Z), loves(Y,Z). 我查詢了jealous(vincent,W)。但SWI-Prolog給我W = vincent! 是不是應該是W = marsellus?