m0_71256486 2022-08-08 18:42 采纳率: 100%
浏览 303
已结题

怎么用R语言进行质数的计算

我们知道,质数是一个大于1的自然数,除了1和它自己以外没有正的约数。写一个R函数prime(n),找出所有小于或等于n的质数。你可以使用任何算法来寻找质数。这个程序应该怎么写啊

  • 写回答

2条回答 默认 最新

  • 倪桦 2022-08-08 20:14
    关注

    数据集不大的话用简单高效的优化朴素算法

    isprime <- function(num){
        num = as.integer(num)
        if (num == 1 || num == 0){return(NULL)}
        SqrtN = sqrt(num)
        for (i in seq(2,SqrtN)){ if ( (num %% i) == 0) {return(NULL)} }
        return(num)
    }
    unlist(lapply(1:100, function(x) isprime(x))) 
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 8月20日
  • 已采纳回答 8月12日
  • 创建了问题 8月8日