Задача
Задано три вещественных числа [latex]x, y[/latex] и [latex]z[/latex]. Определить [latex]\min\left(\max\left(x,y\right), \max\left(y,z\right), x+y+z\right)[/latex], воспользовавшись вспомогательными функциями для вычисления минимального и максимального элементов из двух заданных.
Входные данные
В одной строке задано три вещественных числа [latex]x, y[/latex] и [latex]z[/latex]. Значения чисел не превышают по модулю [latex]100[/latex].
Выходные данные
Вывести ответ с двумя десятичными знаками.
Тесты
# | Входные данные | Выходные данные |
---|---|---|
1 | 5 6 7 | 7.00 |
2 | 1.05 2.25 -2.15 | 1.15 |
3 | 3 3 3 | 3 |
4 | 8.85 5.67 7.33 | 7.33 |
5 | 12 -15 13 | 10 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
import java.util.*; import java.lang.*; import java.io.*; class Ideone { public static void main (String[] args) throws java.lang.Exception { double x, y, z, min2, max2, max3, n; Scanner in = new Scanner (System.in); x = in.nextDouble(); y = in.nextDouble(); z = in.nextDouble(); max2 = Math.max(x,y); //нахождение максимума из x и y max3 = Math.max(y,z); //нахождение максимума из y и z min2 = Math.min(max2,max3); //поиск минимума из найденных максимумов n = x + y + z; //сумма 3 заданных чисел min2 = Math.min(min2,n); //нахождение данного минимума System.out.printf("%.2f",min2); } } |
Алгоритм решения
- Находим максимум из [latex]x[/latex] и [latex]y[/latex].
- Находим максимум из [latex]y[/latex] и [latex]z[/latex].
- Находим минимум из найденных максимумов.
- Находим минимум из найденного минимума и суммы данных чисел.