負數(shù)沒有階乘。所以"num0"時不再計算,返回“-1”。
創(chuàng)新互聯(lián)是一家專業(yè)提供錦屏企業(yè)網(wǎng)站建設,專注與網(wǎng)站設計、成都網(wǎng)站建設、html5、小程序制作等業(yè)務。10年已為錦屏眾多企業(yè)、政府機構(gòu)等服務。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站建設公司優(yōu)惠進行中。
0的階乘是1,所以“num==0”時返回1。
大于0的數(shù)計算階乘用遞歸的方法,使用下一個數(shù)“num-1"與當前的數(shù)"num"相乘,直到"num-1"為0結(jié)束計算。
factor(3);
function?factor(n){
var?x?=?n.toFixed();
if(x==1||x==0){
return?1;
}else?if(x0){
return?x*a(x-1);
}else{
return?-1;
}
}
html
head
title求階乘/title
SCRIPT
LANGUAGE="JavaScript"
function
mul()
{
var
i;
var
num=1;
for(i=1;i=parseInt(document.all.text1.value);i++)
{
num
=
num*i;
}
document.all.text2.value=num;
}
/SCRIPT
/head
body
P
input
type=text
name="text1"
size="14"
input
name="btmul"
type="button"
value="階乘"
onClick="mul()"/p
input
type=text
name="text2"
size="14"
/body
/html
script language="javascript"
function x(){
var x=document.getElementById('param').value;
var r=1;
for(var i=1;i=x;i++){
r = i*r;
}
document.getElementById('result').value=r;
}
/script
請輸入數(shù)字:input type="text" id="param"br/
input type="button" id="cal" value="計算" onclick="javascript:x();"br/
階乘結(jié)果:input type="text" id="result"br/
注意:階乘底數(shù)太大,階乘結(jié)果就會用科學計數(shù)法表示
script type="text/javascript"
function jiecheng(number)
{
if(number == 1 || number == 0) return 1;
return number * jiecheng(--number);
}
document.write("10的階乘是:" + jiecheng(10));
/script
如下可以實現(xiàn):
當i==1時,求的是1的階乘;
當i==2時,求的是2的階乘;
當i==3時,求的是3的階乘;
依次類推...
當i==10時,求的是10的階乘;
然后整體加起來,就是最終結(jié)果。
var?sum?=?0;
for(var?i?=?1;?i?=?10;?i++){
var?b?=?1;
for(var?j?=?1;?j?=?i;?j++){
b?*=?j;
}
sum?+=?b;
}
alert(sum);