簡體   English   中英

編寫For循環以評估階乘

[英]Writing a For Loop to Evaluate a Factorial

我正在嘗試編寫一個函數,該函數將返回作為輸入給出的任何數字的階乘。 現在,我的代碼絕對是一團糟。 請幫忙。

function factorialize(num) {
  for (var i=num, i>0, i--){
    var result = 1;
    result = result * i;
  }
  return result;

}

factorialize(5);

應該是這樣

 function factorialize(num){
     var result = 1;

  for(var i = num ; i >0 ; i--) {

     result = result * i ;

    }
   return result;

}

您也可以為此使用遞歸

 function fact(num) {

   if(num > 1) 

         return num * fact(num-1);
else
     return 1;

}
function factorialize(num) {
    var result = 1;
    while (num) {
        result *= num;
        num--;
    }
    return result;
}

factorialize(5);

// or a very short version:
function f(n) { return +!~-n || n * f(n - 1); }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM