Reduced row echelon form: Difference between revisions

Content deleted Content added
CalmoSoft (talk | contribs)
Thundergnat (talk | contribs)
m →‎{{header|Perl 6}}: Update to more modern, idiomatic syntax
Line 2,480:
=={{header|Perl 6}}==
{{trans|Perl}}
{{works with|Rakudo|20152018.1203}}
<lang perl6>sub rref (@m) {
@mreturn orunless return@m;
my ($lead, $rows, $cols) = 0, +@m, +@m[0];
 
for ^$rows -> $r {
return @m if $lead >=< $cols or return @m;
my $i = $r;
until @m[$i][;$lead] {
 
until @m[$i][$lead] {
++$i == $rows or next;
$i = $r;
++$lead == $cols and return @m;
}
my@m[$i, $lvr] = @m[$r][, $leadi] if $r != $i;
 
@m[$i,my $r]lv = @m[$r, ;$ilead];
 
my $lv = @m[$r][$lead];
@m[$r] »/=» $lv;
 
for ^$rows -> $n {
next if $n == $r;
@m[$n] »-=» @m[$r] »*» (@m[$n][;$lead] // 0);
}
++$lead;