Write a program that returns number of elements in the
list.
We can solve this problem using recursion.
Size of empty list is 0.
size([], 0).
Size of non-empty list is 1 + size of tail list.
size([Head|Tail], L) :- size(Tail,N), L is N+1.
listDemo.pl
size([], 0). size([Head|Tail], Length) :- size(Tail,TailListLength), Length is TailListLength+1.
1 ?- consult(listDemo). Warning: c:/users/public/prologexamples/listdemo.pl:2: Singleton variables: [Head] true. 2 ?- size([], X). X = 0. 3 ?- size([2], X). X = 1. 4 ?- size([2, 3, 5], X). X = 3.
No comments:
Post a Comment