49 lines
1.5 KiB
Markdown
49 lines
1.5 KiB
Markdown
---
|
|
id: 5900f41e1000cf542c50ff30
|
|
title: 'Problem 177: Integer angled Quadrilaterals'
|
|
challengeType: 5
|
|
forumTopicId: 301812
|
|
dashedName: problem-177-integer-angled-quadrilaterals
|
|
---
|
|
|
|
# --description--
|
|
|
|
Let ABCD be a convex quadrilateral, with diagonals AC and BD. At each vertex the diagonal makes an angle with each of the two sides, creating eight corner angles.
|
|
|
|
<img class="img-responsive center-block" alt="convex quadrilateral ABCD, with diagonals AC and BD" src="https://cdn.freecodecamp.org/curriculum/project-euler/integer-angled-quadrilaterals.gif" style="background-color: white; padding: 10px;">
|
|
|
|
For example, at vertex A, the two angles are CAD, CAB.
|
|
|
|
We call such a quadrilateral for which all eight corner angles have integer values when measured in degrees an "integer angled quadrilateral". An example of an integer angled quadrilateral is a square, where all eight corner angles are 45°. Another example is given by DAC = 20°, BAC = 60°, ABD = 50°, CBD = 30°, BCA = 40°, DCA = 30°, CDB = 80°, ADB = 50°.
|
|
|
|
What is the total number of non-similar integer angled quadrilaterals?
|
|
|
|
**Note:** In your calculations you may assume that a calculated angle is integral if it is within a tolerance of ${10}^{-9}$ of an integer value.
|
|
|
|
# --hints--
|
|
|
|
`integerAngledQuadrilaterals()` should return `129325`.
|
|
|
|
```js
|
|
assert.strictEqual(integerAngledQuadrilaterals(), 129325);
|
|
```
|
|
|
|
# --seed--
|
|
|
|
## --seed-contents--
|
|
|
|
```js
|
|
function integerAngledQuadrilaterals() {
|
|
|
|
return true;
|
|
}
|
|
|
|
integerAngledQuadrilaterals();
|
|
```
|
|
|
|
# --solutions--
|
|
|
|
```js
|
|
// solution required
|
|
```
|