1. ホーム
  2. prolog

[解決済み] Prolog - 回文ファンクタ

2022-02-17 14:41:20

質問

私は述語を書こうとしています palindrome/1 は、そのリスト入力が回文リストからなる場合にのみ真となる。

を例にとると

?- palindrome([1,2,3,4,5,4,3,2,1]).

が真であることを示します。

何かアイデアや解決策があれば教えてください。

解決方法は?

回文リストは、逆から読んでも同じになるリストなので、リストを逆にして同じリストが得られるかどうかを確認することができます。

palindrome(L):-
  reverse(L, L).