全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
983 2
2015-09-15

在The R Book中看到的三段循环,不能出结果,很纳闷。求指点!

# loop: factorial

# 1) for

fac1 <- function(x) {

        f <- 1

        if (x<2)

        return (1)

        for (i in 2:x) {

                f <- f*i

                f

        }

}

sapply(0:5,fac1)

# 2) while

fac2 <- function(x) {

        f <- 1

        t <- x                # when use while, need to set up an indicator variable: t

        while(t>1) {

                f <- f*t

                t <- t-1                # and change its value within each iteration (t <- t-1)

                return(f)

        }

}

sapply(0:5,fac2)

# 3) repeat

fac3<-function(x) {

        f <- 1

        t <- x

        repeat {                # repeat contains no explicit limit

                if (t<2)

                break                # must have a logical escape clause: break

                f <- f*t

                t<-t-1

        }

        return(f)

}

sapply(0:5,fac3)



二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2015-9-15 11:00:24
不能得出结果是?
你试试单独运行fac1(5)  fac2(5)  fac3(5)这样?应该可以
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-9-18 12:00:49
lzcllyt 发表于 2015-9-15 11:00
不能得出结果是?
你试试单独运行fac1(5)  fac2(5)  fac3(5)这样?应该可以
也不行,试过
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群