MuPAD
Pro Computing Essentials - Examples
Example 11.4 - Cartesian Product
This is a procedure to produce Cartesian product of two
sets
- CartProd:=proc(A,B)
local cp, a, b;
begin
if testtype(A,Type::Set) and testtype(B,Type::Set) then
cp:=[];
for x in A do
for y in B do
cp:=cp.[[x,y]]
end;
end;
else
return(procname(args()))
end;
end:
-
C:={1,2,3,4,5};
F:={u,b,c,d,e,f}
{1, 2, 3, 4, 5, 7, 8}
{b, c, d, e, f, u}
[[8, f], [8, e], [8, d], [8, c], [8, b], [8, u], [7, f],
[7, e], [7, d],[7, c], [7, b], [7, u], [5, f], [5, e],
[5, d], [5, c], [5, b], [5, u],[4, f], [4, e], [4, d],
[4, c], [4, b], [4, u], [3, f], [3, e], [3, d],[3, c],
[3, b], [3, u], [2, f], [2, e], [2, d], [2, c], [2, b],
[2, u],[1, f], [1, e], [1, d], [1, c], [1, b], [1, u]]
|