@Sasha787989

Как найти геометрическую прогрессию в списке?

Есть список: a = [2, 8, 7, 1, 2, 4, 8, 16, 4, 5]
Как найти здесь геометрическую прогрессию?
  • Вопрос задан
  • 305 просмотров
Пригласить эксперта
Ответы на вопрос 2
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Берём первые два числа списка. Они образуют геометрическую прогрессию с x0 = a[0] и k = a[1]/a[0].
Прогрессия найдена.
Ответ написан
Комментировать
Vindicar
@Vindicar
RTFM!
Составь новый список, в котором каждый элемент - это частное* двух соседних элементов исходного списка.
Если в новом списке будет несколько одинаковых** элементов подряд, то в исходном списке соответствующие элементы формируют геометрическую прогрессию.

*Не забываем про деление на ноль! Может потребоваться отдельная проверка.

**Не забывай про ограниченную точность чисел с плавающей точкой. Сравнивать такие числа лучше не как обычно, a == b, а с помощью конструкции вида abs(a - b) <= E, где ты задаёшь в E желаемую точность (например, 0.000001).
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы