# Triangle Number

A triangle number is the number of dots that form a triangle. Find how many triangles exist from triangle number 1 to the first triangle with triangle number >= 500.

In the illustration below, triangle numbers are: 1, 3, 6, 10, and would continue with 15, 21, 28, 36, …

```                            .
.        . .
.      . .      . . .
.    . .    . . .    . . . .
1     3       6        10```

First, determine the number of dots for each triangle i. That happens to be the sum of numbers between 1 and i, for a triangle i.
i = 1, 1=1
i = 2, 1+2=3
i = 3, 1+2+3=6
i = 4, 1+2+3+4=10

```function getTriangleNumber(t) {
return (t*(t+1))/2
}

function getTriangles(number) {
let triangles = []

for (let i = 1; true; i++) {
let n = getTriangleNumber(i)
triangles.push(n)

if (n >= number) {
return triangles.length
}
}

return -1
}```

Another approach is to keep a running sum of triangle numbers. A triangle number for triangle i is i + triangle number at i-1.

```function getTriangles(number) {
let triangles = []
let n = 0

for (let i = 1; true; i++) {
let n = n + i
triangles.push(n)

if (n >= number) {
return triangles.length
}
}

return -1
}```
Scroll to top