2017-02-22 1 views
0

Я не понимаю, как сделать два двойных входа в качестве входных данных и вернуть наибольшее число.Сделайте новую функцию (метод), которая принимает два двойных значения в качестве входных данных и возвращает самый большой.

Сделайте новую функцию (метод), которая принимает два удвоения в качестве входных данных и возвращает самый большой.

Мое решение (пытаясь оператор if-):

public class ex1DoubleFunction { 
    public static void main(String[] args) { 

     double a = 10; 
     double b = 20; 
     System.out.println(doublefun(a, b)); 

    public static doublefun(a,b) { 
     if (a>b) { 
      return a; 
     } 

     else if (a<b) { 
      return b; 
     } 
    } 

    } 

} 
+0

Какова функция, которая должна выполняться, если результаты равны? –

+0

Ваша проблема - объявление функции - вам нужны типы. public static double doubleFun (double a, double b) должен заставить ваш код работать как есть. О, также переместите его за пределы «основной» функции. Ваш отступы хороши, поэтому факт, что у вас есть две близкие фигурные скобки на одном уровне, должен быть признаком того, что что-то не так. –

+0

Как можно предположить, вы также можете избавиться от последнего сравнения и просто вернуть его для безопасности (если a не больше, b будет, правильно?) –

ответ

1

Это очень простая задача, ниже решение должно делать.

public static double findMax(double numOne, double numTwo){ // parameters 
    return Math.max(numOne,numTwo); // built in class to find the max of two nums or more 
} 

Кроме того, убедитесь, что вы не помещаете эту функцию в основной метод, потому что это не сработает. поместите это внутри того же класса, что и основной метод для простоты.

1

Это также считается, если у вас есть значение равным.

public static double whichGreater(double first, double second) { 
    if(first >= second){ 
    return first; 
    } else { 
    return second; 
    } 
} 
0

Это должно сработать.

public static double doublefun(double a, double b) { 
    if (a > b) { 
    return a; 
    } else { 
    return b; 
    } 
} 
0

Вы также можете использовать тройной оператор.

return (a>b)?a:b; 
Смежные вопросы

 Смежные вопросы