Постановка задачи
Даны действительные числа [latex]x, y, z[/latex]. Вывести наименьшее и наибольшее из них. Если наименьших или наибольших чисел окажется несколько, то укажите в скобках количество.
Входные данные: действительные числа [latex]x, y, z.[/latex]
Выходные данные: Максимальное значение (Highest value), количество максимальных значений (Count of highest values), минимальное значение (Lowest value), количество минимальных значений (Count of lowest values)
Тесты
Входные данные | Выходные данные | ||||
№ | [latex]x, y, z[/latex] | Максимум | Количество максимумов | Минимум | Количество минимумов |
1 | 10 | 20 | 1 | 10 | 2 |
2 | 10 | ||||
3 | 20 |
Решение
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
import java.util.Scanner; class Task2 { public static void main(String[] args) { Scanner input = new Scanner(System.in); float number; float max = 0; float min = 0; int countMax = 0; int countMin = 0; for (int x = 0; x < 3; x++) { number = input.nextInt(); if (x == 0 || number > max) { countMax = 1; max = number; } else if (number == max) { countMax++; } if (x == 0 || number < min) { countMin = 1; min = number; } else if (number == min) { countMin++; } } System.out.println("Highest value: " + max); System.out.println("Count of highest values: " + countMax); System.out.println("Lowest value: " + min); System.out.println("Count of lowest values: " + countMin); } } |
Ссылка на решение задания на онлайн компиляторе Ideone.com
Описание решения
Для нахождения нахождения найбольшего max и найменьшего min значений используем цикл for. Если текущее число больше максимального, то ставим счетчик countMax на 1 и сохраняем новое максимальное значение max. Если последующее число равно текущему максимальному max, то увеличиваем счетчик countMax. Аналогично и для поиска найменьшего min значения.