package com.javarush.task.task02.task0217;
/*
Минимум четырех чисел
*/
public class Solution {
public static int min(int a, int b, int c, int d) {
if (a<=b & a<=c & a<=d) {
return (a);
}
if (b<=a & b<=c & b<=d) {
return (b);
}
if (c<=a & c<=b & c<=d) {
return (c);
}
else {
return (d);
}
int ab = min(a,b);
int cd = min(c,d);
if (min(a,b)<=min(c,d)) {
return (ab);
}
else {
return (cd);
}
}
public static int min(int a, int b) {
if (a<=b) {
return (a);
}
else {
return (b);
}
}
public static void main(String[] args) throws Exception {
System.out.println(min(-20, -10));
System.out.println(min(-40, -10, -30, 40));
System.out.println(min(-20, -40, -30, 40));
System.out.println(min(-20, -10, -40, 40));
System.out.println(min(-20, -10, -30, -40));
}
}
Диана
3 уровень
не пойму, как использовать метод min(a, b) в методе min(a, d, c, b) , выдает ошибку
Обсуждается
Комментарии (3)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Sir_Ejik
11 мая 2020, 16:33
Упрощенно наверное так:
задача получить результат решения функции - min(int a, int b, int c, int d).
метода как это сделать нет, но есть подсказка - метод min(a,b), он уже описан.
интуитивно, по аналогии нужно создать метод min(c,d) и описать его ниже
тогда обращаясь в исходной функции - min(int a, int b, int c, int d)
сначала к первому, потом ко второму методу получим уже не 4 а два числа ( итогом выполнения алгоритма каждого из методов будет число).
Если эти числа присвоить как значение двум int переменным и потом их сравнить получится искомый результат.
0
Александр
7 мая 2020, 10:50
Ты сравниваешь одно число с тремя остальными. А тебе надо сравнить сначала А и Б с помощью метода сравнения двух чисел. Потом так же и с Ц и Д. В итоге у тебя получится два минимальных числа среди А, Б, Ц, Д. Еще раз применив метод поиска минимального числа из двух ты определишь минимальное, но уже из четырех чисел.
Наверняка объяснение получилось запутанным )
0
Ksenia Volkova Java Developer в DXC Master
6 мая 2020, 14:01
У тебя есть метод, который находит минимум из двух чисел - min(int a, int b).
Тебе надо написать метод, который находит минимум из четырех, с использованием первого метода.
4 числа - это два раза по два. А для двух у тебя уже есть метод.
+1