***// CODE THIS IN PROLOG PROGRAMMING//*** Write a Prolog procedure remove_dups/
ID: 3858786 • Letter: #
Question
***// CODE THIS IN PROLOG PROGRAMMING//***
Write a Prolog procedure remove_dups/2 which succeeds when the first parameter is a list of words/letters and the second parameter is the first list with consecutive repeated words/letters removed For example: remove_dups([1,1,1,2,2,3,3,1,1,2,2,3],[1,2,3,1,2,3]).
Write a recursive procedure/function which calculates the following recursive function in the specified languages. Do not include the entire program or sample output, only the procedure/function.
f(0) = 1
f(1) = 1
f(x) = x2 * f(x -2)
Explanation / Answer
Define member(X,L) to mean “X is a member of the list L”.
The predicate succeeds if X is the first element of L.
member(X, [X|T]).
If the item is not in the list, the recursion eventually tries a query
of the form member(X,[]).
This fails since the head of no clause for member has [] as
second argument.
here we are taking myFunction
below procedure evaluate true
myFunction(X,[X|_]).
myFunction(X,[_|T]) :- myFunction(X,T).
not(A) :- + call(A).
set([],[]).
set([H|T],[H|Out]) :-
not(myFunction(H,T)),
set(T,Out).
set([H|T],Out) :-
myFunction(H,T),
set(T,Out).
recursion
(* for n>=0, recurs_n n evaluates to (a, b), where a is the nth Fibonacci number and b is the (n-2)st *)
fun recurs_n 0 = (1, 0)
| recurs_n 1 = (1, 1)
| recurs_n (n:int) =
let
val (a:int, b:int) = recurs_n (n-2)
in
(a+b, a)
end
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.