A tarefa
Escreva um programa ou função que, quando recebida uma entrada numérica x
, imprima ou retorne os números primos abaixo da raiz quadrada de x
1 que não são fatores de x
.
Exemplos
Let f(x)
Ser a função chamada:
>>> f(4)
[]
>>> f(5)
[2]
>>> f(20)
[3]
>>> f(60)
[7]
>>> f(100)
[3, 7]
>>> f(10000)
[3, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]
Regras do bônus
- Você pode usar quaisquer recursos internos fornecidos pelo seu idioma.
- Seu programa deve suportar uma
x
entrada tão alta quanto o limite superior definido pelo seu idioma.
1 Usar a raiz quadrada como apenas números primos abaixo da raiz quadrada pode realmente estar envolvido nos fatores de x
. Sem fazer essa restrição, números maiores teriam muito excesso de números impressos.
x
" não é verdade: um número pode ter um fator primo maior que sua raiz quadrada. Na verdade, seus dois primeiros exemplos (5 e 20) têm esta propriedade, como fazem todos os números primos, duas vezes todos os números primos ímpares, ....