Determinant and permanent: Difference between revisions
Content added Content deleted
m (→{{header|Wren}}: Minor tidy) |
(added RPL) |
||
Line 2,745: | Line 2,745: | ||
permanent=6778800 |
permanent=6778800 |
||
--------------------------------------------------</pre> |
--------------------------------------------------</pre> |
||
=={{header|RPL}}== |
|||
{{trans|Phix}} |
|||
{{works with|HP|48G}} |
|||
« → a x y |
|||
« a SIZE {-1 -1} ADD 0 CON |
|||
1 OVER SIZE 1 GET '''FOR''' k |
|||
1 OVER SIZE 1 GET '''FOR''' j |
|||
k j 2 →LIST |
|||
a k DUP x ≥ + j DUP y ≥ + 2 →LIST GET |
|||
PUT |
|||
'''NEXT NEXT''' |
|||
» » '<span style="color:blue">MINOR</span>' STO <span style="color:grey">@ ''( matrix x y → matrix )''</span> |
|||
« DUP SIZE 1 GET |
|||
'''IF''' DUP 1 == '''THEN''' GET |
|||
'''ELSE''' |
|||
0 |
|||
1 ROT '''FOR''' k |
|||
OVER { 1 } k + GET |
|||
3 PICK 1 k <span style="color:blue">MINOR PRM</span> * + |
|||
'''NEXT''' |
|||
SWAP DROP |
|||
END |
|||
» '<span style="color:blue">PRM</span>' STO <span style="color:grey">@ ''( matrix → permanent )''</span> |
|||
[[ 1 2 ] |
|||
[ 3 4 ]] DET LASTARG <span style="color:blue">PRM</span> |
|||
[[2 9 4] |
|||
[7 5 3] |
|||
[6 1 8]] DET LASTARG <span style="color:blue">PRM</span> |
|||
{{out}} |
|||
<pre> |
|||
4: -2 |
|||
3: 10 |
|||
2: -360 |
|||
1: 900 |
|||
</pre> |
|||
=={{header|Ruby}}== |
=={{header|Ruby}}== |
||
Line 2,785: | Line 2,823: | ||
permanent: 6778800 |
permanent: 6778800 |
||
</pre> |
</pre> |
||
=={{header|Rust}}== |
=={{header|Rust}}== |
||
{{trans|Java}} |
{{trans|Java}} |