PRAIT
@PRAIT

Как написать программу которая считает 4 числа с клавиатуры и выведет на экран самое большое из них?

Собственно сабж.
Нужно написать программу которая считает 4 числа с клавиатуры и выводит на экран самое большее из них. Я не совсем понимаю как это сделать.

У меня есть код

package code;

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        try (Scanner input = new Scanner(System.in)) {
            int a;
            int b;
            int c;
            int max;
            System.out.println("Iput A");
            a = input.nextInt();
            System.out.println("Iput B");
            b = input.nextInt();
            System.out.println("Iput C");
            c = input.nextInt();

            max = a;
            if (b > max) {
                max = b;
            }
            if (c > max) {
                max = c;
            }

            System.out.println("Max = " + max);
        }
    }
}


Тут вообщем то всё предельно ясно, но есть задание в котором нужно сделать САБЖ. Я так понимаю нужно ограничить ввод цифр из 4 чисел если введенное число будет меньше 4 или больше 4 чисел будет выводится предупреждение пользователю о том что нужно ввести 4 числа. Всем огромное спасибо за помощь.
  • Вопрос задан
  • 2023 просмотра
Пригласить эксперта
Ответы на вопрос 3
@Tim06ka
Java developer
Вот мой вариант в одно выражение
IntStream.range(0, 4)
                 .mapToObj(i -> System.in)
                 .map(Scanner::new)
                 .map(Scanner::nextInt)
                 .reduce(Integer::max)
                .ifPresent(System.out::println);
Ответ написан
Zoominger
@Zoominger
System Integrator
Сделайте цикл от 0 до 3 и суньте в него считывание в массив и отсортируйте по убыванию. Первое число - максимум.
Ответ написан
myjcom
@myjcom
public static void main(String[] args) 
{
  Scanner io = new Scanner(System.in);
  int max  = 0;
  int cur  = 0;
  int step = 0;
  while(step++ < 4 && io.hasNextInt())
  {
    cur = io.nextInt();
    if(cur > max) max = cur;
  }
  System.out.printf("Max: %d", max);
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы