Дан целочисленный массив из элементов. Элементы массива могут принимать целые значения от -10000 до 10000 включительно. Опишите на естественном языке или на одном из языков программирования алгоритм, позволяющий найти количество пар элементов массива, у которых разность по модулю больше 14 и первый элемент при делении на второй дает число, большее по модулю единицы. Под парой подразумевается два подряд идущих элемента массива. Исходные данные объявлены так, как показано ниже на примерах для некоторых языков программирования. Запрещается использовать переменные, не описанные ниже, но разрешается не использовать некоторые из описанных переменных. Индексация элементов в массиве начинается с нуля.
Например, для исходного массива из 10 элементов
57
95
-42
-849
8003
674
-305
667
665
2
программа должна вывести
4
(Условию удовлетворяют следующие пары: 95 и -42, 8003 и 674, 674 и -305, 665 и 2).
Для удобства за пару будем считать элементы и
(не
и
!).
будет отвечать за количество пар, подходящих по условие, поэтому изначально она равна нулю.
В цикле от 0 до (если мы укажем цикл до
, то программа будет пытаться проверить пару
и
, но элемента
не существует в силу индексации с нуля) мы будем проверять, что
на 1. Вне цикла выведем
.
Так как нам нужно узнать разность и результат деления первого элемента на второй по модулю, а другие библиотеки подключать нельзя, будем делать так: если разность получилась отрицательной, мы меняем знак на обратный, если положительной — оставляем. Аналогично и с делением.
Пример на :