Bonjour, je dois extraire d'une liste une liste dont les éléments forment une suite géométrique de raison 2 et je dois le faire en sélectionnant successivement les éléments qui valent le double du dernier qui a été sélectionné.
voici ce que j'ai fait mais qui ne marche pas:
la liste de base est : [ 1, 1, 2, 6, 4, 8, 3]
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 l = eval(input()) liste = [] i = 0 for i in range(len(l)-1): x = l[i] y = l[i+1] if x*2 == y: liste.append(y) else: x = l[i-1] y = l[i+1] if x**2 == y: liste.append(y) i += 1 print(liste)
et le programme doit retourner : [1, 2, 4, 8]
J'aurais besoin d'aide car je ne vois du tout comment m'y prendre. Merci d'avance.
Partager