Solve equations with substitution method: Difference between revisions

Content added Content deleted
m (→‎{{header|Phix}}: added translation of Raku version)
(Added Perl)
Line 36: Line 36:
@show solvetwolinear("3x + y = -1", "2x - 3y = -19") # solvetwolinear("3x + y = -1", "2x - 3y = -19") = (-2.0, 5.0)
@show solvetwolinear("3x + y = -1", "2x - 3y = -19") # solvetwolinear("3x + y = -1", "2x - 3y = -19") = (-2.0, 5.0)
</lang>
</lang>

=={{header|Perl}}==
<lang perl>use strict;
use warnings;
use feature 'say';

sub parse {
my($e) = @_;
$e =~ s/ ([xy])/ 1$1/;
$e =~ s/[ =\+]//g;
split /[xy=]/, $e;
}

sub solve {
my($a1, $b1, $c1, $a2, $b2, $c2) = @_;
my $X = ( $b2 * $c1 - $b1 * $c2 )
/ ( $b2 * $a1 - $b1 * $a2 );
my $Y = ( $a1 * $X - $c1 ) / -$b1;
return $X, $Y;
}

say my $result = join ' ', solve( parse('3x + y = -1'), parse('2x - 3y = -19') );</lang>
{{out}}
<pre>-2 5</pre>


=={{header|Phix}}==
=={{header|Phix}}==