Question: Use SWI Prolog to write the following programs . Make sure the output from your programs looks just like the sample output in the problems.
3. Write a function, palindrome, that takes a list as input and returns the original list if the list is a palindrome, ie reads the same in both directions, and otherwise returns the original list made into a palindrome by reversing it and appending it to itself, but not replicating the last element. Here is a sample run: ?- palindrome ([a,b, [c,d],e],x). X-[a,b, [c,d],e, [d, c],b, a] ?- palindrome ([a, [b,c, [d],[d,c,bl,a],x). 4. Write a function, permutations, that takes a list as input and generates a list containing all possible permutations of the list elements. Here is a sample application: ?- permutations([1,2,31,x). Yes
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
