使用辅助函数为 R 中的向量创建最小公倍数函数

2024-03-21

在 R 中, 我有两个辅助函数

gcf(x,y) 用于查找两个数字的最大公因数

and

lcm(x,y) 用于查找两个数字的最小公倍数。

例如,

> gcd(85,75)
[1] 5
> lcm(20,50)
[1] 100

现在,我需要创建一个函数,该函数采用整数向量作为参数,返回元素的最小公倍数。

例如,

lcm_vector(c(20,50,75)) = 300

我知道这需要计算

LCM(20, 50, 75) = LCM(LCM(20, 50), 75)。

但是我该如何处理向量的元素呢?我需要循环吗?


您可以使用Reduce继续跑步lcm向量中的每个新值

lcm_vector <- function(x) Reduce(lcm, x)
lcm_vector(c(20,50,75))
# [1] 300

如果你有一个像这样的向量x<-c(a,b,c,d,e)你有功能f。呼唤Reduce(f, x)就像打电话f(f(f(f(a, b), c), d), e)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用辅助函数为 R 中的向量创建最小公倍数函数 的相关文章

随机推荐