Множество представяме чрез списък, без повторение на елементите.

1. Да се състави предикат notmember(X,L), който се удовлетворява, ако X не е елемент от L.

2. Да се състави предикат isset(L), който се удовлетворява, ако L е списък

3. Да се съставят предикатите union(A,B,C), intersect(A,B,C) и diff(A,B,C), реализиращи съответните теоретико-множествени операции обединение, сечение и разлика. Да се обърне внимание на разликите между трите предиката.

4. Да се съставят предикатите flatten, reverse и palindrom, където flatten(L,L1) се удовлетворява например за L=[1,2,[3,[4,5]],6,7] и в L1 получаваме L1=[1,2,3,4,5,6,7]. Reverse обръща списъка, а palindrom проверява дали списъка е симетричен отностно средата. Да се направи palindrom със и без reverse.

Последно модифициране: събота, 12 ноември 2011, 17:38