1
任何人都可以告訴我,如果有更簡單的方法在Prolog中編寫此代碼,我需要縮小範圍以使其更加緊湊。Prolog簡化
這是我到目前爲止有:
add(X,[],[X]).
add(X,[A|L],[A|L1]) :-
add(X,L,L1).
head([X|_], X).
exist(X,Y,A,B) :-
between(1, 8, X),
between(1, 8, Y),
between(1,8,A),
between(1, 8, B).
exist(X/Y, A/B) :-
exist(X,Y,A,B).
這是一個更大程序的一部分,它可以找到騎士在棋盤上的最短路徑。在我提交我的任務之前,我需要使代碼更簡潔,更簡潔。有什麼方法可以告訴你我到目前爲止的情況,並且可以指導我如何私下改進它。謝謝! ps。我在我的作品中修正了這個間距,之後我才發佈了這個... – zarrexx
@zarrexx如果你只使用'exist/2',將'exist/4'的主體移到那裏並刪除'exist/4'。 –
謝謝,有什麼方法可以將您的完整代碼發給您,您可以幫我解決問題嗎?因爲我不能在這裏發佈我的完整代碼 – zarrexx