gpt4 book ai didi

r - 以 10 为底数,以 3 为底数给出任何数字 n 的算法

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:21:20 25 4
gpt4 key购买 nike

我需要编写一个算法,在 R 中以 3 为基数给出任意数字 n。到目前为止,我是这样写的:

vector <- c(10, 100, 1000, 10000)

ternary <- function(n) { while (n != 0) {

{q<- n%/%3}

{r <- n%%3}

{return(r)}

q<- n }

sapply(vector, ternary)}

我认为通过应用 sapply(vector, ternary) 它会为我提供任何给定 n 的所有 r,我将放入 ternary(n)。我的代码仍然给我“最后一个 r”,但我不明白为什么。

最佳答案

这是我在 n 年级(不记得具体时间)手工学习的直接实现。

base3 <- function(x){
y <- integer(0)
while(x >= 3){
r <- x %% 3
x <- x %/% 3
y <- c(r, y)
}
y <- c(x, y)
y
}

base3(10)
#[1] 1 0 1

base3(5)
#[1] 1 2

关于r - 以 10 为底数,以 3 为底数给出任何数字 n 的算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49199289/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com