La tâche
Écrivez un programme ou une fonction qui, une fois entrée numérique x
, imprime ou renvoie les nombres premiers sous la racine carrée de x
1 qui ne sont pas des facteurs de x
.
Exemples
Soit f(x)
la fonction appelée:
>>> 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]
Règles de bonus
- Vous pouvez utiliser n'importe quel module intégré fourni par votre langue.
- Votre programme doit prendre en charge une
x
entrée aussi haute que la limite supérieure définie par votre langue.
1 L' utilisation de la racine carrée comme seuls nombres premiers en dessous de la racine carrée peut réellement être impliquée dans les facteurs de x
. Sans cette restriction, les grands nombres auraient beaucoup de nombres imprimés en excès.
x
" n'est pas vrai: un nombre peut avoir un facteur premier plus grand que sa racine carrée. En effet, vos deux premiers exemples (5 et 20) ont cette propriété, comme tous les nombres premiers, deux fois tous les nombres impairs, ....