TypeError: unsupported operand type(s) for //: 'str' and 'int'"
Bonjour!
Je suis un petit débutant en programmation.
Je veux écrire une fonction prime_numbers qui reçoit comme paramètre un nombre entier nb et qui renvoie la liste des nb premiers nombres premiers.
Si le paramètre n’est pas du type attendu, ou ne correspond pas à un nombre entier positif, la fonction renvoie None.
code proposé:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| def prime_numbers(n):
nombres = [2,n-1,n+1,n+3]
if n==0:
return[]
def premier(n):
i=2
while i<=n and n%i!=0 :
i=i+1
if i==n:
return (True)
else:
return (False)
for i in range(1, n // 2):
if premier(i * 2 + 1) == False:
nombres.append(2 * i + 1)
return nombres |
Mais l'exécution renvoie ce message d’erreur:
Citation:
Votre programme a été interrompu par une exception:
""Ligne 2: TypeError: unsupported operand type(s) for //: 'str' and 'int"
je sais que la ligne nombres = [2,n-1,n+1,n+3] ne semble pas correcte. Mais je ne m'y retrouve pas...