Вывод чисел между min и max в порядке убывания
Имеется задание, которое мною выполнено, но следует сократить количество проверок до четырёх. Не могу понять как это сделать. Условия:
- найти max и min число среди чисел 10, 5, -1;
- отобразить в строку в порядке убывания все числа в интервале (min, max);
- для вывода чисел использовать цикл for;
- не использовать методы max и min класса Math
Моё решение:
public class Main {
public static void main(String[] args) {
int number1 = 10;
int number2 = 5;
int number3 = -1;
int max = 0;
int min = 0;
if ((number1 > number2) && (number2 > number3)) {
max = number1;
min = number3;
} else if ((number3 > number2) && (number2 > number1)) {
max = number3;
min = number1;
} else if ((number2 > number3) && (number3 > number1)) {
max = number2;
min = number1;
} else if ((number1 > number3) && (number3 > number2)) {
max = number1;
min = number2;
} else if ((number3 > number1) && (number1 > number2)) {
max = number3;
min = number2;
} else if ((number2 > number1) && (number1 > number3)) {
max = number2;
min = number3;
}
for (max -= 1; max > min; max--) {
System.out.print(max + " ");
}
}
}
Ответы (1 шт):
Автор решения: rotabor
→ Ссылка
Решение:
- найти max и min число среди чисел 10, 5, -1 - нужно три проверки, чтобы найти min и max - сначала сравниваем (1) два числа и определяем min и max из них, потом третье число сравниваем (2) с min на предмет нового минимума, и напоследок третье число сравниваем (3) с max на предмет нового максимума;
- отобразить в строку в порядке убывания все числа в интервале (min, max) и для вывода чисел использовать цикл for - значит, цикл будет такой
for (; max >= min; max--)
; - не использовать методы max и min класса Math - не будем, обойдёмся сранениями из п. 1.