Java 是的,我考虑了参数对变量的论点。如果不同,可以使用递归减少变量计数,因为一切都变成了参数。@Andreas不知何故,我怀疑即使是提出这个问题的人(我指的是老师)也没有想到这一点。但是遗憾的是,除非OP发布了我们永远无法知道的原始需求。如果您能够降低自己的级

Java 是的,我考虑了参数对变量的论点。如果不同,可以使用递归减少变量计数,因为一切都变成了参数。@Andreas不知何故,我怀疑即使是提出这个问题的人(我指的是老师)也没有想到这一点。但是遗憾的是,除非OP发布了我们永远无法知道的原始需求。如果您能够降低自己的级,java,Java,是的,我考虑了参数对变量的论点。如果不同,可以使用递归减少变量计数,因为一切都变成了参数。@Andreas不知何故,我怀疑即使是提出这个问题的人(我指的是老师)也没有想到这一点。但是遗憾的是,除非OP发布了我们永远无法知道的原始需求。如果您能够降低自己的级别,将Double.valueOf()引发的异常用于循环控制XD,那么您可以不使用line变量,尽管异常本身也可以算作一个变量…@Durandal非常正确,只要不需要错误处理,因为错误输入只会无声地停止循环。我知道(非常小的)要求不表示错误处理


是的,我考虑了参数对变量的论点。如果不同,可以使用递归减少变量计数,因为一切都变成了参数。@Andreas不知何故,我怀疑即使是提出这个问题的人(我指的是老师)也没有想到这一点。但是遗憾的是,除非OP发布了我们永远无法知道的原始需求。如果您能够降低自己的级别,将Double.valueOf()引发的异常用于循环控制XD,那么您可以不使用line变量,尽管异常本身也可以算作一个变量…@Durandal非常正确,只要不需要错误处理,因为错误输入只会无声地停止循环。我知道(非常小的)要求不表示错误处理,除非另有说明,我认为这是事实上的要求。错了吗?--在这段代码中,错误处理是程序结束时说你做错了。一种处理错误的方法,虽然不是最优的。我对错误处理有点不满和愤世嫉俗——可能是因为在我工作的地方,我经常收到一些要求,这些要求从来没有提到任何异常情况(ME:当该字段为空时,我们如何计算?PHB:这永远不会发生!ME:这种情况经常发生,因为它在数据库中可以为空。PHB:但是我的工作流要求输入该字段。ME:但是工作流X、Y和Z不需要。UI也不需要。PHB:那么……做点什么吧!……PHB(稍后):它没有按照我的要求进行计算!).Sad,但这是真的。@Durandal哦,是的,我同意你的看法。客户,嗯,用户(以及PHB的用户,虽然我很幸运没有这样的用户),都是非常狭窄和非结构化的,他们的“从不发生”断言经常是错误的。如果客户说“发生时我们会解决”,但我们现在必须编写处理它的逻辑代码。
    int numbers[] = new int[5];
    int low = 0; int high = 0; 

    for(int count = 0; count < numbers.length; count++){            

     System.out.print("Please enter a number: ");
        int number=s.nextInt();

        if (count == 0) {
            low = number;
            high=number;
        } else {
            if(number < high) {
                high= number;        
            }
            if(number > low){
                low = number;

            }

        }

        numbers[count] = number;
    }
    double ave = numbers[0]+numbers[1]+numbers[2]+numbers[3]+numbers[4]/5;
    System.out.println("Highest: " +high);
    System.out.println("Lowest: " +low);
    System.out.println("The average of all number is: " +ave); }}
int numbers[] = new int[5];
int low = Integer.MAX_VALUE; int high = Integer.MIN_VALUE; 

for(int count = 0; count < numbers.length; count++){            

 System.out.print("Please enter a number: ");
    int number=s.nextInt();

    if (count == 0) {
        low = number;
        high=number;
    } else {
        if(number > high) {
            high= number;        
        }
        if(number < low){
            low = number;

        }

    }

    numbers[count] = number;
}
double ave = (numbers[0]+numbers[1]+numbers[2]+numbers[3]+numbers[4])/5;
System.out.println("Highest: " +high);
System.out.println("Lowest: " +low);
System.out.println("The average of all number is: " +ave); }}
public class HighLowAverage {

    public static void main(String[] args) {
        long sum = 0;
        long highLow = 0x8000_0000_7FFF_FFFFL;
        long countNumber = 0;
        for (; (countNumber >> 32) < 5; countNumber += 0x1_0000_0000L) {
            countNumber = (countNumber & 0xFFFF_FFFF_0000_0000L) 
                    | ((int) (Math.random() * 100) & 0xFFFF_FFFFL);
            System.out.println(((countNumber >> 32) + 1) + ". number is: " + (int) countNumber);
            sum += (int) countNumber;
            if ((highLow >> 32) < (int) countNumber)
                highLow = (highLow & 0xFFFF_FFFFL) | (countNumber << 32);
            if (((int) highLow) > (int) countNumber)
                highLow = (highLow & 0xFFFF_FFFF_0000_0000L) | (countNumber & 0xFFFF_FFFFL);
        }
        System.out.println("Average: " + ((double) sum) / (countNumber >> 32));
        System.out.println("Min: " + (int) highLow);
        System.out.println("Max: " + (highLow >> 32));
    }

}
    public static void main(String[] args) {
        long[] vars = new long[5];
        vars[1] = Long.MIN_VALUE;
        vars[2] = Long.MAX_VALUE;
        for (vars[0] = 0; vars[0] < 5; ++vars[0]) {
            vars[4] = (int) (Math.random() * 100);
            System.out.println((vars[0] + 1) + ". number is: " + vars[4]);
            vars[3] += vars[4];
            if (vars[4] > vars[1])
                vars[1] = vars[4];
            if (vars[4] < vars[2])
                vars[2] = vars[4];
        }
        System.out.println("Average: " + ((double) vars[3]) / vars[0]);
        System.out.println("Min: " + vars[1]);
        System.out.println("Max: " + vars[2]);
    }
final int COUNT = 5; //this is just to be neat, and not needed as a variable.
int low = Integer.MAX_VALUE;
int high = Integer.MIN_VALUE;
int sum = 0;    

for(int i = 0; i < COUNT; i++){
    int n = s.nextInt();//or whatever

    if(n > high)
        high = n;
    if(n < low)
        low = n;

    sum += n;
}

System.out.println("Max: " + high);
System.out.println("Min: " + low);
System.out.println("Average: " + ((double) sum) / COUNT);
int numbers[] = new int[5];

        for(int count = 0; count < numbers.length; count++){

            System.out.print("Please enter a number: ");
            int number=s.nextInt();
            numbers[count] = number;
        }

        LongSummaryStatistics statistics = Arrays.stream(numbers).asLongStream().summaryStatistics();
        System.out.println("Highest: " + statistics.getMax());
        System.out.println("Lowest: " + statistics.getMin());
        System.out.println("The average of all number is: " + statistics.getAverage());
Scanner s;           // variable 1
List<Double> values; // variable 2
String line;         // variable 3

s = new Scanner(System.in);
values = new ArrayList<>();
while (true) {
    System.out.print("Please enter a numbers, or press enter when done: ");
    if ((line = s.nextLine().trim()).isEmpty())
        break;
    values.add(Double.valueOf(line));
}
if (values.isEmpty())
    return;
System.out.println("Minimum: " + Stream.of(values.toArray(new Double[values.size()]))
                                       .mapToDouble(Double::valueOf)
                                       .min().getAsDouble());
System.out.println("Maximum: " + Stream.of(values.toArray(new Double[values.size()]))
                                       .mapToDouble(Double::valueOf)
                                       .max().getAsDouble());
System.out.println("Average: " + Stream.of(values.toArray(new Double[values.size()]))
                                       .mapToDouble(Double::valueOf)
                                       .sum() / values.size());