Проблема: Статистика часто рассчитывается с различным количеством входных данных.Напишите программу, которая принимает любое количество неотрицательных целых чисел в качестве входных данных и выводит среднее значение и макс.Отрицательное целое число заканчивает ввод и не включается в статистику.
Пример: Когда ввод: 15 20 0 5 -1
, вывод: 10 20
Можно предположить, что введено хотя бы одно неотрицательное целое число.
import java.util.Scanner;
public class LabProgram {
public static void main(String[] args) {
Scanner scnr = new Scanner (System.in);
int num = 0;
int count = 0;
int max = 0;
int total = 0;
int avg = 0;
do {
total += num;
num = scnr.nextInt();
count = ++count;
if (num >= max) {
max = num;
}
} while (num >= 0);
avg = total/(count-1);
System.out.println(avg + " " + max);
}
}
У меня было много проблем с этой проблемой.Есть ли способ, которым я мог бы сделать это без необходимости считать -1 при вычислении среднего?Кроме того, это самый эффективный способ, которым я мог это сделать?