aboutsummaryrefslogtreecommitdiff
path: root/challenge-027
diff options
context:
space:
mode:
authorRuben Westerberg <drclaw@mac.com>2019-09-29 12:41:46 +1000
committerRuben Westerberg <drclaw@mac.com>2019-09-29 12:41:46 +1000
commit1d50267e1aaf80b678ec31b32825d96b396a504f (patch)
treee7952299eb05fdcfb7d3ec7b2fff43ff1bcae181 /challenge-027
parent11fba8cbf38f61ade47560244c4ebf18a2b75f60 (diff)
downloadperlweeklychallenge-club-1d50267e1aaf80b678ec31b32825d96b396a504f.tar.gz
perlweeklychallenge-club-1d50267e1aaf80b678ec31b32825d96b396a504f.tar.bz2
perlweeklychallenge-club-1d50267e1aaf80b678ec31b32825d96b396a504f.zip
Added ch-1.p6. Fixed deleted line in ch-1.pl
Diffstat (limited to 'challenge-027')
-rwxr-xr-xchallenge-027/ruben-westerberg/perl5/ch-1.pl5
-rwxr-xr-xchallenge-027/ruben-westerberg/perl6/ch-1.p620
2 files changed, 24 insertions, 1 deletions
diff --git a/challenge-027/ruben-westerberg/perl5/ch-1.pl b/challenge-027/ruben-westerberg/perl5/ch-1.pl
index 0bb1428281..8e55486e6d 100755
--- a/challenge-027/ruben-westerberg/perl5/ch-1.pl
+++ b/challenge-027/ruben-westerberg/perl5/ch-1.pl
@@ -14,7 +14,10 @@ while (@l<2) {
}
}
-for (@l) { $$_{c}=$$_{py}[0]-($$_{m}*$$_{px}[0]); }
+for (@l) {
+ $$_{m}=($$_{py}[1]-$$_{py}[0])/($$_{px}[1]-$$_{px}[0]);
+ $$_{c}=$$_{py}[0]-($$_{m}*$$_{px}[0]);
+}
my $x=($l[0]{c}-$l[1]{c})/( $l[1]{m}-$l[0]{m});
my $y=$l[0]{m}*$x+$l[0]{c};
diff --git a/challenge-027/ruben-westerberg/perl6/ch-1.p6 b/challenge-027/ruben-westerberg/perl6/ch-1.p6
new file mode 100755
index 0000000000..9718354d9d
--- /dev/null
+++ b/challenge-027/ruben-westerberg/perl6/ch-1.p6
@@ -0,0 +1,20 @@
+#!/usr/bin/env perl6
+my @l;
+while @l < 2 {
+ my @p=split " ", prompt("Enter line"~(@l+1)~": x1 y1 x2 y2\n"), :skip-empty;
+ if (@p==4) {
+ push @l, {px=>[@p[0,2]],py=>[@p[1,3]],m=>Any,c=>Any};
+ }
+ else {
+ print "not a valid line! \n";
+ }
+}
+
+for @l {
+ $_<m>=($_<py>[1]-$_<py>[0])/($_<px>[1]-$_<px>[0]);
+ $_<c>=$_<py>[0]- ($_<m>*$_<px>[0]);
+}
+my $x=(@l[0]<c>-@l[1]<c>)/( @l[1]<m>-@l[0]<m>);
+my $y=@l[0]<m>*$x+@l[0]<c>;
+
+put "Intercept point: $x, $y";