Имеется задача:
Необходимо создать функцию, целью которой является нахождение пропущенного члена в арифметической прогрессии. Т.е. функция принимает на вход вектор с членами арифметической прогрессии, один из которых пропущен. Результатом работы функции является этот пропущенный член. К примеру, если передать данной функции на вход следующий вектор [1,3,5,9,11], то результатом её работы будет являться число 7, т.к. оно было пропущено в векторе. Длина вектора как минимум равна трём. Пропущенный член никогда не находится на первой и последней позиции в векторе.
Версия Python 3.8
ОС Windows
И есть пробный код, но он не работает, кто знает, скажите как исправить данный код, чтобы он выводил искомый член?
Необходимо создать функцию, целью которой является нахождение пропущенного члена в арифметической прогрессии. Т.е. функция принимает на вход вектор с членами арифметической прогрессии, один из которых пропущен. Результатом работы функции является этот пропущенный член. К примеру, если передать данной функции на вход следующий вектор [1,3,5,9,11], то результатом её работы будет являться число 7, т.к. оно было пропущено в векторе. Длина вектора как минимум равна трём. Пропущенный член никогда не находится на первой и последней позиции в векторе.
Версия Python 3.8
ОС Windows
И есть пробный код, но он не работает, кто знает, скажите как исправить данный код, чтобы он выводил искомый член?
Python:
def progres(array):
i = 0
for i in range(len(array)):
step = array[i+1] - array[i]
j = i + 1
while j < len(array):
j += 1
if array[j] == array[j+1] - step:
return True
elif array[j] != array[j+1] - step:
return(array[j]+step)
print(progres([1, 3, 5, 7, 11, 13, 15, 17, 19]))