階乘,指從1到某個正整數n的所有整數相乘的積,常用符號為n!, 如3! = 3 × 2 × 1 = 6。
在JavaScript中,可以使用迴圈和遞迴來解1到10的階乘和。
迴圈是一種重複執行相同程式碼區塊的方法,可使用for或while迴圈語句實作。在這裡,我們使用for迴圈來計算1到10的階乘和。
程式碼:
let sum = 0; for (let i = 1; i <= 10; i++) { let fact = 1; for (let j = i; j >= 1; j--) { fact *= j; } sum += fact; } console.log(sum); // 输出 4037913
解釋:
首先,我們定義了一個sum變數來儲存階乘和。
接著,我們使用for迴圈從1到10迭代每個數字i,並在每個迴圈中,定義一個變數fact來計算i的階乘。
內部的第二個for迴圈從i到1迭代每個數字j,併計算乘積fact = fact * j。
最後,將fact加入到sum中,以便計算階乘和。
遞歸是一種透過自身將問題分解為更小的子問題來解決問題的方法。在這裡,我們使用遞歸來計算1到10的階乘和。
程式碼:
function factorial(num) { if (num === 0) return 1; return num * factorial(num - 1); } let sum = 0; for (let i = 1; i <= 10; i++) { sum += factorial(i); } console.log(sum); // 输出 4037913
解釋:
首先,我們定義了一個factorial函數,它接受一個整數作為輸入,並遞歸地計算該整數的階乘。如果輸入為0,則函數傳回1。
接著,我們使用for迴圈從1到10迭代每個數字i,並呼叫factorial函數來計算i的階乘。
最後,將計算得到的階乘加到sum中,以便計算階乘和。
無論是使用循環或遞歸,都可以有效地計算1到10的階乘和。但對於更大的數字,最好使用遞歸,因為循環的嵌套可能會導致程式碼複雜度增加,而遞歸則可以更容易處理更大的數字。
以上是JavaScript怎麼求1到10的階乘和的詳細內容。更多資訊請關注PHP中文網其他相關文章!