mirror of
https://github.com/correl/elm.git
synced 2024-12-23 11:15:00 +00:00
6151955420
We are working towards making exercises stand-alone. That is to say: no more generating READMEs on the fly. This will give maintainers more control over each individual exercise README, and it will also make some of the backend logic for delivering exercises simpler. The README template uses the Go text/template package, and the default templates generate the same READMEs as we have been generating on the fly. See the documentation in [regenerating exercise readmes][regenerate-docs] for details. The READMEs can be generated at any time using a new 'generate' command in configlet. This command has not yet landed in master or been released, but can be built from source in the generate-readmes branch on [configlet][]. [configlet]: https://github.com/exercism/configlet [regenerate-docs]: https://github.com/exercism/docs/blob/master/maintaining-a-track/regenerating-exercise-readmes.md
56 lines
1.7 KiB
Markdown
56 lines
1.7 KiB
Markdown
# Triangle
|
|
|
|
Determine if a triangle is equilateral, isosceles, or scalene.
|
|
|
|
An _equilateral_ triangle has all three sides the same length.<br/>
|
|
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.)<br/>
|
|
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. See [Triangle Inequality](https://en.wikipedia.org/wiki/Triangle_inequality).
|
|
|
|
## Dig Deeper
|
|
|
|
The case where the sum of the lengths of two sides _equals_ that of the
|
|
third is known as a _degenerate_ triangle - it has zero area and looks like
|
|
a single line. Feel free to add your own code/tests to check for degenerate triangles.
|
|
## Elm Installation
|
|
|
|
Refer to the [Exercism help page](http://exercism.io/languages/elm) for Elm
|
|
installation and learning resources.
|
|
|
|
## Writing the Code
|
|
|
|
The first time you start an exercise, you'll need to ensure you have the
|
|
appropriate dependencies installed.
|
|
|
|
```bash
|
|
$ npm install
|
|
```
|
|
|
|
Execute the tests with:
|
|
|
|
```bash
|
|
$ npm test
|
|
```
|
|
|
|
Automatically run tests again when you save changes:
|
|
|
|
```bash
|
|
$ npm run watch
|
|
```
|
|
|
|
As you work your way through the test suite, be sure to remove the `skip <|`
|
|
calls from each test until you get them all passing!
|
|
|
|
## Source
|
|
|
|
The Ruby Koans triangle project, parts 1 & 2 [http://rubykoans.com](http://rubykoans.com)
|
|
|
|
## Submitting Incomplete Solutions
|
|
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|