Как сделать, чтобы перемножались 3 последовательных числа?
Есть список [1, 3, 5, 7, 9]:
Нужно, чтобы перемножались 3 последовательных числа таким образом:
1 * 3 * 5
3 * 5 * 7
5 * 7 * 9
Я попробовал так, но при запуске ничего не выводится:
list1 = [1, 3, 5, 7, 9]
i = -1
num = 0
while i > 5:
i += 1
num = list1[i] * list[i+1] * list[i+2]
print(num)
Ответы (3 шт):
Автор решения: passant
→ Ссылка
Не знаю, что у вас там "не производится", но вот так - работает (при любой длинне списка, кстати):
list1 = [1, 3, 5, 7, 9]
i = 0
num = 0
while i < (len(list1)-2):
num = list1[i] * list1[i+1] * list1[i+2]
i += 1
print(num)
Результат:
15
105
315
Автор решения: Karlson21
→ Ссылка
Можно таким образом, вроде, работает.
list1 = [1, 3, 5, 7, 9]
for i in range(len(list1) - 2):
list2 = (list1[i:i+3])
print(list2[0] * list2[1] * list2[2])
Автор решения: Victor VosMottor thanks Monica
→ Ссылка
for a,b,c in zip(list1[:-2], list1[1:-1], list1[2:]):
print(a*b*c)