Javascript-форум (https://javascript.ru/forum/)
-   Серверные языки и технологии (https://javascript.ru/forum/server/)
-   -   Помогите найти абсолютное значение на Java!) Заранее спасибо!) (https://javascript.ru/forum/server/31967-pomogite-najjti-absolyutnoe-znachenie-na-java-zaranee-spasibo.html)

Anastasiy17 27.09.2012 21:18

Помогите найти абсолютное значение на Java!) Заранее спасибо!)
 
Здраствуйте!)
Помогите пожалуйста решить такую задачку на Java:

Определить абсолютное значение наименьшей разности между двумя любыми значениями элементов исходного одномерного массива a.

Зарание спасибо!)

Gvozd 27.09.2012 21:35

Во-первых уточните, вам нужен именно Java, или JavaScript.
Если Java, то вы немного не по адресу, хотя может кто и подскажет
Здесь форум по JavaScript

Во-вторых, если условие задачи звучит именно так как вы написали, то наименьшая разность будет если вычесть из минимального элемента максимальный.
Найти минимальный и максимальный элементы в массиве - стандартная учебная задача, которая решается более чем элементарно.
Вычесть их, и получить абсолютное значение разности - еще более элементарные операции.

Если же вам нужно найти наименьшую по модулю разность, то вам нужно отсортировать массив, а затем вычисляя попарно разность между соседними элементами, найти наименьшую.

Anastasiy17 27.09.2012 21:44

Мой код програмы
 
Меня интересует именно Java)
Может хто-то разбирается)

1 Arrays.sort(a);
2 int minDif = a[1] - a[0];
3 for (int i = 2; i < n; i++) {
4 minDif = Math.min(minDif, a[i] - a[i - 1]);
5 }
6 return Math.abs(minDif);

Вот то что я имею, но к сожелению, что то не правельно. Может у кого то есть идеи как это исправить?)

Dim@ 27.09.2012 23:26

Anastasiy17,
Посмотрите указано ли значение которое выдает метод:
static void method
там должно быть указано значение которое возвращает метод, в данном случае int или long


Часовой пояс GMT +3, время: 19:07.