Resistor mesh: Difference between revisions
→{{header|Raku}}: extensive refactor
SqrtNegInf (talk | contribs) (→{{header|Raku}}: extensive refactor) |
|||
Line 1,927:
=={{header|Raku}}==
(formerly Perl 6)
{{trans|
<lang perl6>my $
sub set-boundary(@mesh,@p1,@p2) {
}
sub
my @
my @
set-boundary(@fixed,@p1,@p2);
loop {
set-boundary(@V,@p1,@p2);
▲ @v[1][1] = 1;
my @neighbors =
▲ my @neighbors = grep *.defined, @v[$i-1][$j], @v[$i][$j-1], @v[$i+1][$j], @v[$i][$j+1];
▲ @d[$i][$j] = $v = @v[$i][$j] - $v / +@neighbors;
▲ my $diff = 1e10;
▲ my @cur = 0, 0, 0;
▲ for (flat ^$h X ^$w) -> $i, $j {
}
}
my @current;
for (flat ^h X
@current[ @fixed[i;j]+1
}
(@current[2] - @current[0]) / 2
▲ return (@cur[2] - @cur[0]) / 2;
}
say 2 /
</lang>
{{out}}
<pre>1.60899124172989</pre>
|