KnowMeNot
KnowMeNot

Reputation: 47

Debug Pascal's Triangle

Could someone please walk me through as to what I did incorrectly on Pascal's Triangle in Javascript? I saw a thread that already exists using recursion however, without copying verbatim, the code, in my eyes, looks too similar to decipher what I'm doing wrong. I could use some fresh eyes on what I've missed or could improve. Thank you

var pTri = [[1]]

function pascalTriangle(num, pTri) {

  if (num < 2) {
    return pTri;
  }

  var newRow = [1];
  var lastRow = pTri[pTri.length - 1];

  console.log(lastRow)

  for (var i = 1; i < lastRow.length; i++) {
    var addToNewRow = lastRow[i] + lastRow[i - 1];
    newRow.push(addToNewRow);
    }

  pTri.push(newRow);

 return pascalTriangle(num - 1, pTri);
}

pascalTriangle(2, pTri)

Upvotes: 0

Views: 163

Answers (1)

Steven Stark
Steven Stark

Reputation: 1259

Just looks like you added a new array 'addToNewRow' by mistake.

var pTri = [[1]]

function pascalTriangle(num, pTri) {

  if (num < 2) {
    return pTri;
  }

  var newRow = [1];
  var lastRow = pTri[pTri.length - 1];

  console.log(lastRow)

  for (var i = 1; i < lastRow.length; i++) {
    newRow[i] = lastRow[i] + lastRow[i - 1];
  }
    
  newRow.push(1);

  pTri.push(newRow);

 return pascalTriangle(num - 1, pTri);
}

pascalTriangle(10, pTri)

Upvotes: 1

Related Questions