26 lines
503 B
Plaintext
26 lines
503 B
Plaintext
func PowSet(Set, Size);
|
|
int Set, Size;
|
|
int N, M, Mask, DoComma;
|
|
[ChOut(0, ^{);
|
|
for N:= 0 to 1<<Size -1 do
|
|
[if N>0 then ChOut(0, ^,);
|
|
ChOut(0, ^{);
|
|
Mask:= 1; DoComma:= false;
|
|
for M:= 0 to Size-1 do
|
|
[if Mask & N then
|
|
[if DoComma then ChOut(0, ^,);
|
|
IntOut(0, Set(M));
|
|
DoComma:= true;
|
|
];
|
|
Mask:= Mask << 1;
|
|
];
|
|
ChOut(0, ^});
|
|
];
|
|
Text(0, "}^m^j");
|
|
];
|
|
|
|
[PowSet([2, 3, 5, 7], 4);
|
|
PowSet([1], 1);
|
|
PowSet(0, 0);
|
|
]
|