Add Pascal's triangle. (#149)

* Add Pascal's triangle.

* Update pascalTriangle.js

* Update pascalTriangle.js

Co-authored-by: vinayak <itssvinayak@gmail.com>
This commit is contained in:
Nour B
2020-05-05 13:22:32 +01:00
committed by GitHub
parent 9d4349cf26
commit 67a4f0dc45

31
maths/pascalTriangle.js Normal file
View File

@ -0,0 +1,31 @@
const numRows = 5
var generate = function (numRows) {
const triangle = [[1], [1, 1]]
if (numRows === 0) {
return []
} else if (numRows === 1) {
return [[1]]
} else if (numRows === 2) {
return [[1], [1, 1]]
} else {
for (let i = 2; i < numRows; i++) {
addRow(triangle)
}
}
return triangle
}
var addRow = function (triangle) {
const previous = triangle[triangle.length - 1]
const newRow = [1]
for (let i = 0; i < previous.length - 1; i++) {
const current = previous[i]
const next = previous[i + 1]
newRow.push(current + next)
}
newRow.push(1)
return triangle.push(newRow)
}
generate(numRows)