> fac1=function(x){
if(x<0) return(NaN)
if(x<2) return(1)
f=1
for(i in 2:x)
{ f=f*i }
return(f)}
> sapply(-1:5,fac1)
[1] NaN 1 1 2 6 24 120
我的问题是:为什么结果是NaN 1 1 2 6 24 120;就拿x=3时说吧,之前x

展开全部
收起
4回答
提交回答
  • 至过去的我

    2044人对此回答表示赞同

    我是未来的你,你现在是不是在年找寻小程序答案。你不要感觉诧异,给你来信原因,就是让你不在后悔。今天去学习如何推广小程序,相信......点击查看更多>
    发布于
  • 投石问路的我

    18人对此回答表示赞同

    x=3时,function(3)里 f=1 不又重来了一遍吗?
    展开
    18
    0回复
    发布于 5年前

    评论(0)

    收起评论

  • Violet

    17人对此回答表示赞同

    这还真的是一个值得研究的问题
    展开
    17
    0回复
    发布于 5年前

    评论(0)

    收起评论

  • 祖师爷

    3人对此回答表示赞同

    看不懂这是神马东西
    展开
    3
    0回复
    发布于 5年前

    评论(0)

    收起评论

  • Aaron

    1人对此回答表示赞同

    fac1(3) 举例
    3<0 false 不执行
    3<2 false 不执行
    f = 1
    for(i in 2:3) # i分别等于1,2,3执行下面的块
    f = f * 1 # 第一次,f=1,i=1 ,结果f=1
    #第二次,f=2,i=2,结果f=2
    #第三次,f=2,i=
    展开
    1
    0回复
    发布于 5年前

    评论(0)

    收起评论

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
咨询热线

13312967497

扫码添加业务即可随时咨询 还可领取小程序推广攻略

业务咨询: 13312967497
扫码咨询

扫码咨询套餐

回到顶部