- Code: Tout sélectionner
from random import choice, randint
liste_Nombre_Final = []
def createList():
liste_Nombre = []
# Creer la liste d'entier compris entre 1 et 2021
for i in range(2022):
liste_Nombre.append(i)
return liste_Nombre
def delete(num):
liste_Nombre.remove(num)
def addNumber(num):
liste_Nombre.append(num)
def calculer(x,y):
nombre_Ajouter = abs(x-y)
return nombre_Ajouter
def choiceNumber():
# Définir x
x = choice(liste_Nombre)
# Le supprimer de la liste
delete(x)
# Définir y
y = choice(liste_Nombre)
# Le supprimer de la liste
delete(y)
# Faire le calcule abs(x-y)
nombre_Ajouter = calculer(x,y)
# Ajouter le nombre dans la liste
addNumber(nombre_Ajouter)
# Initier la boucle pour trouver tous les nombres
for i in range(50000):
# Creer la liste
liste_Nombre = createList()
# Définir la boucle pour qu'il ne reste plus qu'un nombre
for i in range(2021): # Réteter 2020 fois
choiceNumber()
nombre_A_Ajouter = liste_Nombre[0]
if nombre_A_Ajouter in liste_Nombre_Final:
pass
else:
liste_Nombre_Final.append(nombre_A_Ajouter)
liste_Nombre_Final.sort()
print(liste_Nombre_Final)
print(len(liste_Nombre_Final))
Pour copier le code, il faut 'copier le code' , puis cliquer sur le bouton 'Code' en haut.
Ainsi, la mise en page est respectée, et les indentations (les espaces en début) de ligne sont visibles.
Dans ton code, on a perdu ces indentations, et en Python, c'est essentiel.
Dans ton code, tu testes if nombre_A_Ajouter in liste_Nombre_Final: ....
Normalement, tu ne devrais pas avoir ce test. L'énoncé dit qu'il faut ajouter la ligne dans tous les cas, et tant pis si ça donne des doublons.
Sinon... problème possible, tu supprimes 2020 fois 2 lignes, et tu ajoutes de temps en temps (rarement) une ligne... ton tableau va être vide bien avant de faire les 2020 boucles.