JavaScript 中具有指定周長所有直角三角形


問題

我們需要編寫一個 JavaScript 函式,該函式接受一個指定三角形周長的數字。我們的函式應該返回周長與輸入相同的三角形三元組的陣列。

示例

以下為程式碼 −

 實際演示

const perimeter = 120;
const findAllRight = (perimeter = 1) => {
   const res = [];
   for(let a = 1; a <= perimeter; a++){
      for(let b = a; b <= perimeter - a; b++){
         for(let c = a; c <= a + b; c++){
            if(a + b + c !== perimeter){
               continue;
            };
            if((a * 2) + (b * 2) === (c * 2)){
               res.push([a, b, c]);
            };
         };
      };
   };
   return res;
};
console.log(findAllRight(perimeter));

輸出

以下為控制檯輸出 −

[ [ 1, 59, 60 ],
   [ 2, 58, 60 ],
   [ 3, 57, 60 ],
   [ 4, 56, 60 ],
   [ 5, 55, 60 ],
   [ 6, 54, 60 ],
   [ 7, 53, 60 ],
   [ 8, 52, 60 ],
   [ 9, 51, 60 ],
   [ 10, 50, 60 ],
   [ 11, 49, 60 ],
   [ 12, 48, 60 ],
   [ 13, 47, 60 ],
   [ 14, 46, 60 ],
   [ 15, 45, 60 ],
   [ 16, 44, 60 ],
   [ 17, 43, 60 ],
   [ 18, 42, 60 ],
   [ 19, 41, 60 ],
   [ 20, 40, 60 ],
   [ 21, 39, 60 ],
   [ 22, 38, 60 ],
   [ 23, 37, 60 ],
   [ 24, 36, 60 ],
   [ 25, 35, 60 ],
   [ 26, 34, 60 ],
   [ 27, 33, 60 ],
   [ 28, 32, 60 ],
   [ 29, 31, 60 ],
   [ 30, 30, 60 ] 
]

更新時間:20-Apr-2021

91 個瀏覽量

開啟你的 職業

透過完成課程獲得認證

開始
廣告
© . All rights reserved.