Естественные науки

Как определить являются ли числа членами прогрессии с разностью d?

Даны 3 числа. a1, ax, ay. Где a1 - первый член прогрессии. Ax, Ay - два члена данной прогрессии. Необходимо найти наибольшую разность прогрессии (d) удовлетворяющую данному ряду членов.

Пример: Дано A1, Ax, Ay: -2 4 10
Возможные d = 1, 2, 3, 6. Ответ: 6 - наибольшее удовлетворяющее d
AK
Arina Khaidarova
103
числа не обязательно целые, надеюсь?

1. отнять a1 из ax и ay
2. применить к ax и ay алгоритм Евклида нахождения НОД. Если числа не целые - получится малость необычно, но алгоритм все равно работает.

У вас в примере ответ получился равный разности ay-ax, это не обязательно, может получаться и меньше.

например, беру числа от балды 1, 15 25.5
отнимаю 1, получаю 14, 24.5
применяю Евклида (вычитанием из большего меньшего):
14, 24.5
14 10.5
3.5 10.5
3.5 7
3.5 3.5
3.5 0 - все, получили ноль, значит первое число - искомое основание.

проверяем:
1, 4.5, 8, 11.5, 14, 17.5, 22, 25.5... -арифм. прогрессия, начинается с 1 и содержит 14 и 25.5

а вот если ответа нет, если числа несоизмеримые - может получиться и бесконечный цикл.
Олег Шкредов
Олег Шкредов
59 076
Лучший ответ
Misterious Stranger См. мой ответ.
xd=Ax-A1; yd=Ay-A1; (y-x)d=Ay-Ax; х, у - целые и x <>y.
Числа {A1, Ax, Ay} должны быть строго упорядочены, иначе это не арифм посл. (напр 1,2,2)
Если хоть одно из x/y=(Ax-A1)/(Ay-A1) или x/(y-x)=(Ax-A1)/(Ay-Ax) или y/(y-x)=(Ay-A1)/(Ay-Ax) иррационально, то числа - не элементы арифметической последовательности (напр A1=0, Ax=pi, Ay=pi^2).
Если же не числа в строгом порядке и отношения рациональны, то есть смысл искать d.
Один способ (алгоритм) предложил Mikhail Levin. При желании, можно показать, что задача сводится к поиску несократимой дроби.
Лена Каримова
Лена Каримова
56 112
Misterious Stranger См. мой ответ.
Олег Шкредов говоря умными словами, получаем диофантово уравнение

я просто показал, ка его решить.
Вышеприведенные решения мудрены. Имеем: ах= 4= а1+д (х-1)= -2+д (х-1) или д (х-1)= 6 (1). Так же ау= 10= а1+д (у-1)= -2+д (у+1) или д (у-1)= 12 (2). Из (1) х= 6/д+1, из (2) у= 12/д+1. Максимальное значение д, при котором х и у есть целые числа, равно 6.
Олег Шкредов все это называется диофантовыми уравнениям.

по сути же задача в точности эквивалентна поиску наибольшего общего делителя, что я и сделал.

кстати, решение, как у вас с подстановками и земленами на делители по сути - тот же Евклид, только с переписыванием уравнений и заменой переменных на каждом шагу.

кстати, вы смотрели на задачу, что я давал вчера? (на нее уже ответили, но все равно, красиво).

кстати, могу дать еще одну задачку про футбольный мяч