Найдите максимум три целых числа - PullRequest
2 голосов
/ 07 мая 2020

Я сделал программу для нахождения наибольшего из данных трех чисел. Он работает для одного номера di git, но не работает для трех номеров di git. Почему бы и нет?

package practice;
import java.util.Scanner;

public class AllPractice {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        int b = sc.nextInt();
        int c = sc.nextInt();
        if(a > b) {
            if (a > c) {
                System.out.println("maximum of the given numbers "+a);
            }else {
                if (b > a) {
                    if (b > c) {
                        System.out.println("maximum of the given numbers "+b);
                    }
                }else {
                    System.out.println("maximum of the given numbers "+c);
                }
            }
        }
    }
}

Ответы [ 2 ]

4 голосов
/ 07 мая 2020

Ваш код не работает, потому что если ваша переменная a меньше, чем b, вы никогда не вводите первое условие.


Простое однострочное решение / альтернатива:

int max = Collections.max(Arrays.asList(a, b, c));
1 голос
/ 07 мая 2020

Ваша программа будет работать, только если a больше b. Если вы хотите использовать простой, если еще ниже, код будет работать.

if(a>b && a>c )
    System.out.println("maximum of the given numbers "+a);
else if (b>a && b>c)
    System.out.println("maximum of the given numbers "+b);
else 
    System.out.println("maximum of the given numbers "+c);
...