函数,该函数具有一个向量作为其输入,其中每个元素都是正整数,并返回输入向量的每个元素,该元素是一个立方数



我正在尝试创建一个函数,该函数的输入是一个向量,其中每个元素都是正整数,并返回输入向量的每个元素,该向量是一个立方体数。

这是我迄今为止的代码:

positivecube<- function(x){
b<-round(x^(1/3), digits=6)
b%%1==0 &&
b!=1
return(x[b])
}

我正在努力从最终向量中删除1,并将它们转换回原始的立方体数。任何帮助都会很棒,谢谢

您可以返回x的子集,其中正方根和四舍五入到最近整数的正方根之间的绝对差非常小:

positivecube <- function(x) x[abs(round(x^(1/3)) - x^(1/3)) < 1e-8]
positivecube(1:100)
#> [1]  1  8 27 64

最新更新