File tree Expand file tree Collapse file tree 1 file changed +41
-2
lines changed
05_Chapter03_Exerсises_3_2/src Expand file tree Collapse file tree 1 file changed +41
-2
lines changed Original file line number Diff line number Diff line change 31
31
reverse ([X |Y ], Z ) :-
32
32
reverse(Y , Y1 ),
33
33
conc(Y1 , [X ], Z ).
34
+
35
+ % Last element of list
36
+ last1 (X , L ) :-
37
+ conc(_L1 , [X ], L ).
38
+
39
+ % Palindrome
40
+ palindrome ([] ).
41
+
42
+ palindrome ([_ ]).
43
+
44
+ palindrome ([X |Y ]) :-
45
+ conc(Z , [X ], Y ),
46
+ palindrome(Z ).
47
+
48
+ % Palindrome via reverse
49
+ palindrome1 (X ) :-
50
+ reverse(X , X ).
51
+
52
+ % Shilt list to left by one element
53
+ shift ([] , [] ).
54
+
55
+ shift ([X |Y ], L ) :-
56
+ conc(Y , [X ], L ).
57
+
58
+ % Translate numbers to words
59
+ means (0 , zero ).
60
+ means (1 , one ).
61
+ means (2 , two ).
62
+ means (3 , three ).
63
+ means (4 , four ).
64
+ means (5 , five ).
65
+ means (6 , six ).
66
+ means (7 , seven ).
67
+ means (8 , eight ).
68
+ means (9 , nine ).
34
69
35
- palindrome ([] , [] ).
70
+ translate ([] , [] ).
36
71
37
- palindrome ([X | Y ], ).
72
+ translate ([X |Y ], L ) :-
73
+ translate(Y , Y1 ),
74
+ means(X , W ),
75
+ conc([W ], Y1 , L ).
76
+
You can’t perform that action at this time.
0 commit comments