Привет. Не могу разобраться с задачей - она сама по себе простая и я это знаю, но дойти до решения не могу
В классе мейн мне нужно создать 2 метода - первый принимает 2 переменные, второй - 4. Ну и 4 переменные, собственно.
Первый метод принимает 2 переменные и возвращает в мейн меньшее из чисел.
Второй метод принимает 4 числа и тоже возвращает наименьшее из них в мейн, но условие в том, что при этом он должен использовать первый метод.
В итоге с методом на 2 переменные проблем нет, а вот дальше не получается - я понял как использовать во втором методе данные из первого, но как добавить туда еще 2 переменные, которые так и лежат в мейне - не понимаю. Если просто из мейна отправляю во второй метод 2 числа, программа говорит, что я не могу так сделать, потому что метод должен принимать 4, а если я отправляю 4 и при этом пытаюсь использовать первый метод, то значения будут браться только из мейна, игнорируя первый метод.
Извините за сумбур, могу отправить пример того, что я тут попробовал
Prokmixa
2 уровень
Использование метода в методе
Комментарии (6)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Prokmixa
28 мая 2022, 17:54
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner z = new Scanner(System.in);
System.out.println("First number");
int first = z.nextInt();
System.out.println("Second number");
int second = z.nextInt();
System.out.println("Third number");
int third = z.nextInt();
System.out.println("Fourth number");
int fourth = z.nextInt();
int s = getMinFromTwo(first, second);
System.out.println(s);
int s1 = getMinFromFour(third, fourth); //Вот тут не дает отправить 2 числа во второй метод
System.out.println(s1);
}
static int getMinFromTwo(int x, int y) {
return Math.min(y, x);
}
static int getMinFromFour(int x, int y, int m, int n) {
getMinFromTwo(x, y);
int a1 = Math.min(x, y);
int b1 = Math.min(m, n);
return Math.min(a1, b1);
}
}
0
Alex Karpov
28 мая 2022, 18:36
Я конечно, не гений, но ты и не сможешь отправить 2 числа во второй метод, потому что сам метод аргументами принимает именно 4 числа...
Он у тебя должен выглядеть примерно так
Но вот в самом методе, мне например непонятно, зачем ты еще раз дублируешь функции метода с 2 переменными, по идее ты можешь написать что-то такое
0
Prokmixa
28 мая 2022, 18:43
ну вот условие задания такое)
изначально я написал программу, которая нормально считала минимальное число в первом и во втором методе, но условие требует обязательно использовать во втором методе первый, потому сижу и ломаю голову как это сделать
Если я отправлю во второй метод из мейна все 4 переменные, есть ли возможность в процессе сделать так, что первые две заменились на данные из первого метода? Потому что я попробовал проверить путем добавления арифметических операций в первом методе (отнял от каждого числа по 100, например), но во второй метод использовались дефолтные значения
0
Alex Karpov
28 мая 2022, 18:49
Я могу лишь попросить привести условие задачи, как его сформулировал автор, чтобы самому прочитать и понять, что требуется, а не пересказ условия =(
Вот в моем решении выше, второй метод принимает 4 числа, но внутри, он использует первый метод. там ничего другого и нет.
0
Prokmixa
28 мая 2022, 18:51
Создайте метод static int getMinFromTwo(int x, int y), который принимает два целочисленных параметра и возвращает наименьший из них.
Создайте метод static int getMinFromFour(int x, int y, int m, int n), который принимает четыре целочисленных параметра и возвращает наименьший из них.
При том второй метод должен использовать первый.
Условия:
Оба метода должны принимать целочисленные параметры
Оба метода должны возвращать целочисленные параметры
Второй метод должен использовать первый
Методы не должны ничего выводить в консоль
И вот какую мне дали "наводку" по поводу того, что я делаю не правильно :"Ты можешь использовать свой метод, вместо метода из Math библиотеки"
0
Alex Karpov
28 мая 2022, 19:02
В тексте задачи не написано, чтобы ты во второй метод передавал 2 числа, как ты это пытаешься сделать. Так что он и должен быть таким
Ну и если тебя отдельно просят не использовать Math. Сделай так..
Вот тебе, второй метод использует первый, и только его +2