解题获取老师QQ号

拟报考或者拟调剂到王老师课题组的同学,可以解此题得到王老师的QQ号和王老师联系:

大家可能听说过“天字一号”这样的说法,这是将《千字文》中的字按顺序用来计数。《千字文》一千个字不重复,可以把“天”当作1,“地”当作2,“玄”当作3,……,“乎”当作999,最后一个字“也”当作0,这样用于表示千进制数。比如十进制1002003004就表示为千进制“天地玄黄”。用R语言写一个能将任意十进制自然数转成这样的千进制数的函数,如下:

# 千字文的一千字可用如下命令读入:
QZ <-  readLines("ftp://ftp.biolab.wang/QZW.txt", encoding="UTF-8")
# 将十进制自然数转为千进制的函数
D2K <- function(N){
  k <- c()
  if(N == 0) k <- 1000
  while(N > 0) {
    k <- c(N %% 1000, k)
    N <- N %/% 1000
  }
  k[k==0] <- 1000
  return(paste(QZ[k], collapse=""))
}

如下是运行示例,R控制台展示的结果放到两个#后边:

D2K(1949)
##  [1] "天曦"
D2K(2023)
##  [1] "地冬"

将王老师的QQ号作为参数给如上的D2K函数,得到的结果是“满余野”,会编程的同学可以很快地算出王老师的QQ号,没学过编程的可以先移步R语言基础教程。


本网页已被访问6924次。