JSFiddle - React, Tailwind, and code Playground

by Adolfo

HTML

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width">
    <title>repl.it</title>
    <link href="index.css" rel="stylesheet" type="text/css" />
  </head>
  <body>
    <p id="salida"></p>
    <script src="index.js"></script>
  </body>
</html>

JavaScript

var n=20; //número de filas  
//creamos la matriz bidimensional A(n,n)  
var A=new Array(n);  
for (var i=1;i<=n;i++) {  
  A[i] = new Array(n);  
}  
//alimentamos la matriz  
for(i=1;i<=n;i++){  
  for(j=1;j<=i;j++){  
    A[i][j]=combina(i-1,j-1);  
  }  
}  
//función que calcula el número combinatorio p sobre q  
function combina(p,q){  
  return  Math.round(fact(p)/(fact(q)*fact(p-q)));   
}  
//función que calcula el factorial  
function fact(h){  
  var f=1;  
  if (h!==0){  
    for (k=1;k<=h;k++){  
      f*=k;  
    }  
  }  
  return f;  
}  
//creamos la tabla en HTML con etiquetas de tabla
function makeTableHTML(myArray) {
    var result = "<table border=1>";
    for(var i=1; i<=n; i++) {
        result += "<tr>";
        for(var j=1; j<=i; j++){
            result += "<td width='90' align='center'>"+A[i][j]+"</td>";
        }
        result += "</tr>";
    }
    result += "</table>";
    return result;
}
document.getElementById("salida").innerHTML = makeTableHTML(A);