Cartesian product of two or more lists: Difference between revisions
m
→{{header|langur}}
Langurmonkey (talk | contribs) (→{{header|langur}}: updated to use mapX() instead of X()) |
Langurmonkey (talk | contribs) |
||
(6 intermediate revisions by 3 users not shown) | |||
Line 1,747:
[]</pre>
=={{header|EasyLang}}==
{{trans|Go}}
<syntaxhighlight>
proc cart2 a[] b[] . p[][] .
p[][] = [ ]
for a in a[]
for b in b[]
p[][] &= [ a b ]
.
.
.
cart2 [ 1 2 ] [ 3 4 ] r[][]
print r[][]
cart2 [ 3 4 ] [ 1 2 ] r[][]
print r[][]
cart2 [ 1 2 ] [ ] r[][]
print r[][]
cart2 [ ] [ 1 2 ] r[][]
print r[][]
</syntaxhighlight>
=={{header|Erlang}}==
Can do this with list comprehensions.
Line 1,766 ⟶ 1,787:
[{3,1},{3,2},{4,1},{4,2}]
</pre>
=={{header|F Sharp|F#}}==
===The Task===
Line 2,006 ⟶ 2,028:
[[File:Fōrmulæ - Cartesian product of two or more lists 03.png]]
[[File:Fōrmulæ - Cartesian product of two or more lists
'''Test case 2.''' With an empty list
Line 2,012 ⟶ 2,034:
[[File:Fōrmulæ - Cartesian product of two or more lists 05.png]]
[[File:Fōrmulæ - Empty list
[[File:Fōrmulæ - Cartesian product of two or more lists 06.png]]
[[File:Fōrmulæ - Empty list
'''Test case 3.''' Extra credit. n-ary cartesian product
Line 2,022 ⟶ 2,044:
[[File:Fōrmulæ - Cartesian product of two or more lists 07.png]]
[[File:Fōrmulæ - Cartesian product of two or more lists
[[File:Fōrmulæ - Cartesian product of two or more lists 09.png]]
[[File:Fōrmulæ - Cartesian product of two or more lists
[[File:Fōrmulæ - Cartesian product of two or more lists 11.png]]
[[File:Fōrmulæ - Empty list
=={{header|Go}}==
Line 2,974 ⟶ 2,996:
</pre>
=={{header|langur}}==
<syntaxhighlight lang="langur">val .X = fn(... .x) { .x }
writeln mapX
writeln mapX
writeln mapX
writeln mapX(.X, [], [1, 2]) == []
writeln()
writeln mapX
writeln()
writeln mapX
writeln()
writeln mapX
writeln()</syntaxhighlight>
|