Rstudio中小于1000的素数的数量

时间:2019-03-13 14:42:50

标签: r

我想用Rstudio查找低于1000的质数。 我以前写过一个函数(is.prime,该函数告诉我们数字是否为质数(TRUEFALSE))现在我想写一些行来查找数字低于1000的素数。以下是我发现的结果,但它不起作用:

k=0

for(i in 1:1000){

    if(is.prime(i)==TRUE){
        k=k+1
    }

}

如果有人有一个主意,我将不胜感激。

1 个答案:

答案 0 :(得分:0)

这个问题有点奇怪(这是关于同一问题的第二个问题),我将在没有给出任何 functional 代码的情况下尝试为您提供帮助。怎么样?

首先,我们需要计划有关该问题的步骤:

  1. 我们需要在R中创建一个函数,该函数将在给定输入是否为素数时进行求值。

    is_prime = function(my_number) {
        # Logic behind prime numbers
        # A prime number (or a prime) is a natural number greater than 1 that cannot be formed by multiplying two smaller natural numbers. (wiki)
    }
    

函数 is_prime 必须返回布尔值(或基于输入的数组)

  1. 我们需要过滤素数。

    number_sequence = 1:1000 # it's an array
    is_prime_vector = is_prime(number_sequence) # so, the function will return an array too.
    prime_numbers = number_sequence[is_prime_vector]
    

希望这对您有所帮助。