Вывести элементы списка в определенном порядке
Задача: Дан массив A размера N. Вывести его элементы в следующем порядке: A1, A2, AN, AN–1, A3, A4, AN–2, AN–3 и т.д.
Не совсем понимаю как прописать порядок, смог сделать только A1, AN, A2, AN–1, A3, AN–2 и т.д.
N = 7
A = [random.randrange(1,15) for i in range(N)]
print(A)
while N >= 0:
print(A[(len(A) - N) // 2])
if N > 1:
print(A[(len(A) + N) // 2 - 1])
N -=2
Ответы (1 шт):
Автор решения: Stanislav Volodarskiy
→ Ссылка
Печатаете, меняете индекс, печатаете, меняете индекс, и так далее:
a = list(range(20))
i = 0
j = len(a) - 1
while True:
print(a[i])
i += 1
print(a[i])
i += 1
print(a[j])
j -= 1
print(a[j])
j -= 1
$ python temp.py 0 1 19 18 2 3 17 16 4 5 15 14 6 7 13 12 ...