首页 > 解决方案 > 程序让用户输入数字直到输入零,然后打印总数、输入数和平均值

问题描述

我可以让程序询问数字,直到输入零,当输入零时,程序显示总计、条目和平均值。但给出的值不正确。

这是我的代码:

import java.util.Scanner;

public class Question14 {

    public static void main (String [] args){
        double number = 0;
        double average = 0;
        int count = 0;
        double sum = 0;

        System.out.print("enter a number: ");

        Scanner sc = new Scanner(System.in);
        number = sc.nextInt();

        while (number > 0){
            System.out.print("enter a number: ");
            number = sc.nextInt();
            count++;
            sum += number;
            average = sum/count;
        }

        if (number == 0){
            System.out.println("total: " + sum);
            System.out.println("number of entries: " + count);
            System.out.println("average: " + average);
        }
    }
}

标签: javaloops

解决方案


就这样吧:

    int input = 0, sum = 0, i = 0;

    Scanner sc = new Scanner(System.in);
    do {
        System.out.println("Enter a number: ");
        input = sc.nextInt();
        sum += input;
        i++;
    } while (input != 0);

    System.out.println("Sum: " + sum);
    System.out.println("Avg: " + (double) (sum/i));

推荐阅读