如果引用或轉貼,麻煩註明出處與本網誌連結,否則視為侵權。

2017年11月19日

用javascript寫巴斯卡三角形

作者: Fred F.M. Wang (FW知識瑣記) 日期: 20171119

這是30多年前大一第一次段考計概課的考題, 當年用Basic程式寫, 現在改用javascript寫看看, 給初學者參考

二維陣列的寫法

var max = 6;  // 共幾層
var x = new Array(max);
for (var i = 0; i < max; i++) {
  x[i] = new Array(max);  // 建立nxn的
二維陣列
  for (var j = 0; j < max; j++) x[i][j] = 0;   // 設定初始值皆為0 
}
for (i = 0; i < max; i++) { 
  for (j = 0; j < i+1; j++) {
    x[i][j] = (i == 0 || j == 0)?1:(x[i-1][j] + x[i-1][j-1]);
    document.write(x[i][j] + " ");   
  }
  document.write("
<br />");
}


一維陣列的寫法

var max = 6;  // 共幾層
var x = new Array(max);  // 建立一維陣列
x[0] = 1;
for (var i = 1; i < max; i++) x[i] = 0;  // 設定初始值
for (i = 0; i < max; i++) { 
  for (var j = i; j > 0; j--) x[j] = x[j] + x[j-1];
  for (j = 0; j < i+1; j++) document.write(x[j] + " ");   
  document.write("
<br />");
}