我想用Rstudio查找低于1000的质数。
我以前写过一个函数(is.prime
,该函数告诉我们数字是否为质数(TRUE
或FALSE
))现在我想写一些行来查找数字低于1000的素数。以下是我发现的结果,但它不起作用:
k=0
for(i in 1:1000){
if(is.prime(i)==TRUE){
k=k+1
}
}
如果有人有一个主意,我将不胜感激。
答案 0 :(得分:0)
这个问题有点奇怪(这是关于同一问题的第二个问题),我将在没有给出任何 functional 代码的情况下尝试为您提供帮助。怎么样?
首先,我们需要计划有关该问题的步骤:
我们需要在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 必须返回布尔值(或基于输入的数组)
我们需要过滤素数。
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]
希望这对您有所帮助。