Автор Mushinronsha задал вопрос в разделе Java
Как найти ближайшее значение в Java и получил лучший ответ
Ответ от
public static void main(String[] args) {
int[] nums = {1, -2, -5, 23, 0};
int input = **;
int upSearch = input;
int downSearch = input;
while (true) {
for (int num : nums) {
if (num == upSearch num == downSearch) {
System.out.println("Ближайшее значение - " + num);
return;
}
}
upSearch++;
downSearch--;
}
}
Руслан Сатаров
Мастер
(2360)
твое число
Ответ от Dangerous[мастер]
int[] nums = {1, -2, -5, 23, 0};
Arrays.sort(nums);
int x = 2;
int res;
int dt = Math.abs(nums[0] -x);
for(int element: nums) {
if(dt >=Math.abs(element -x)) {
dt =Math.abs(element -x);
res = element;
}
if(element == x) {
System.out.println(res);
return;
}
}
System.out.println(x);
Вот и все можно не сортировать не оптимально но очень просто
int[] nums = {1, -2, -5, 23, 0};
Arrays.sort(nums);
int x = 2;
int res;
int dt = Math.abs(nums[0] -x);
for(int element: nums) {
if(dt >=Math.abs(element -x)) {
dt =Math.abs(element -x);
res = element;
}
if(element == x) {
System.out.println(res);
return;
}
}
System.out.println(x);
Вот и все можно не сортировать не оптимально но очень просто
Ответ от 22 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: Как найти ближайшее значение в Java