Power set: Difference between revisions
Content added Content deleted
(→{{header|TXR}}: Added.) |
|||
Line 1,292: | Line 1,292: | ||
L ) ) ) )</lang> |
L ) ) ) )</lang> |
||
=={{header|Prolog}}== |
|||
<lang Prolog>power_set(T, PS) :- |
|||
bagof(PS1, power_set(T, [], PS1), PS). |
|||
power_set(T, PS, PS1) :- |
|||
select(E, T, T1), !, |
|||
append(PS, [E], PST), |
|||
( PST = PS1; power_set(T1, PS, PS1); power_set(T1, PST, PS1)). |
|||
power_set([], [], []). |
|||
</lang> |
|||
Output : |
|||
<pre>4 ?- power_set([1,2,3,4], L). |
|||
L = [[1],[2],[3],[4],[],[3,4],[2,3],[2,4],[2,3,4],[1,2],[1,3],[1,4],[1,3,4],[1,2,3],[1,2,4],[1,2,3,4]]. |
|||
</pre> |
|||
=={{header|PureBasic}}== |
=={{header|PureBasic}}== |
||
This code is for console mode. |
This code is for console mode. |