负数没有阶乘。所以"num0"时不再计算,返回“-1”。
创新互联是一家专业提供锦屏企业网站建设,专注与网站设计、成都网站建设、html5、小程序制作等业务。10年已为锦屏众多企业、政府机构等服务。创新互联专业网站建设公司优惠进行中。
0的阶乘是1,所以“num==0”时返回1。
大于0的数计算阶乘用递归的方法,使用下一个数“num-1"与当前的数"num"相乘,直到"num-1"为0结束计算。
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
请输入数字:input type="text" id="param"br/
input type="button" id="cal" value="计算" onclick="javascript:x();"br/
阶乘结果:input type="text" id="result"br/
注意:阶乘底数太大,阶乘结果就会用科学计数法表示
script type="text/javascript"
function jiecheng(number)
{
if(number == 1 || number == 0) return 1;
return number * jiecheng(--number);
}
document.write("10的阶乘是:" + jiecheng(10));
/script
如下可以实现:
当i==1时,求的是1的阶乘;
当i==2时,求的是2的阶乘;
当i==3时,求的是3的阶乘;
依次类推...
当i==10时,求的是10的阶乘;
然后整体加起来,就是最终结果。
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);