diff options
| author | Abigail <abigail@abigail.be> | 2021-07-28 18:13:24 +0200 |
|---|---|---|
| committer | Abigail <abigail@abigail.be> | 2021-07-28 18:13:24 +0200 |
| commit | a42addb6a561d57e470cfed7828109bbfba040fb (patch) | |
| tree | c18527120e6a1f8a71e04910bc03ccc7d1e5fffa /challenge-123/abigail/bc | |
| parent | bd9797e1d52dc5b0853bc5400f04f477ffd6a4cb (diff) | |
| download | perlweeklychallenge-club-a42addb6a561d57e470cfed7828109bbfba040fb.tar.gz perlweeklychallenge-club-a42addb6a561d57e470cfed7828109bbfba040fb.tar.bz2 perlweeklychallenge-club-a42addb6a561d57e470cfed7828109bbfba040fb.zip | |
Use methods to factor out calculations.
Diffstat (limited to 'challenge-123/abigail/bc')
| -rw-r--r-- | challenge-123/abigail/bc/ch-2.bc | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/challenge-123/abigail/bc/ch-2.bc b/challenge-123/abigail/bc/ch-2.bc index 2ea9169a08..70815c52d7 100644 --- a/challenge-123/abigail/bc/ch-2.bc +++ b/challenge-123/abigail/bc/ch-2.bc @@ -8,6 +8,8 @@ # Input should be terminated with a line starting with a 0 # +define dist (a, b, c, d) {return ((a - c) ^ 2 + (b - d) ^ 2)} + while (1) { a = read () if (a == 0) {break} @@ -18,15 +20,13 @@ while (1) { f = read () g = read () h = read () - i = (a - c) ^ 2 + (b - d) ^ 2 - j = (c - e) ^ 2 + (d - f) ^ 2 - k = (e - g) ^ 2 + (f - h) ^ 2 - l = (g - a) ^ 2 + (h - b) ^ 2 - m = (a - e) ^ 2 + (b - f) ^ 2 - n = (c - g) ^ 2 + (d - h) ^ 2 - o = 0 - if (i == j && j == k && k == l && m == n) { - o = 1 + + if (dist (a, b, c, d) == dist (c, d, e, f) && \ + dist (c, d, e, f) == dist (e, f, g, h) && \ + dist (e, f, g, h) == dist (g, h, a, b) && \ + dist (a, b, e, f) == dist (c, d, g, h)) { + 1 + } else { + 0 } - o } |
