1
1
Fork 0
exercism/prolog/triangle/README.md
Christina Sørensen c0c5c65f9f
feat(prolog): queen attack, triangle
Signed-off-by: Christina Sørensen <ces@fem.gg>
2024-12-23 17:33:51 +01:00

53 lines
No EOL
1.4 KiB
Markdown

# Triangle
Welcome to Triangle on Exercism's Prolog Track.
If you need help running the tests or submitting your code, check out `HELP.md`.
## Instructions
Determine if a triangle is equilateral, isosceles, or scalene.
An _equilateral_ triangle has all three sides the same length.
An _isosceles_ triangle has at least two sides the same length.
(It is sometimes specified as having exactly two sides the same length, but for the purposes of this exercise we'll say at least two.)
A _scalene_ triangle has all sides of different lengths.
## Note
For a shape to be a triangle at all, all sides have to be of length > 0, and the sum of the lengths of any two sides must be greater than or equal to the length of the third side.
In equations:
Let `a`, `b`, and `c` be sides of the triangle.
Then all three of the following expressions must be true:
```text
a + b ≥ c
b + c ≥ a
a + c ≥ b
```
See [Triangle Inequality][triangle-inequality]
[triangle-inequality]: https://en.wikipedia.org/wiki/Triangle_inequality
## Bonus: mixed types
If you're up for it, there are a couple of bonus tests where the types of the arguments are not all the same.
These tests are optional, so you don't _have_ to solve before submitting your solution.
## Source
### Created by
- @qjd2413
### Contributed to by
- @parkerl
### Based on
The Ruby Koans triangle project, parts 1 & 2 - https://web.archive.org/web/20220831105330/http://rubykoans.com