【问题标题】:Sum and average of numbers in JavaJava中数字的总和和平均值
【发布时间】:2016-10-27 00:25:16
【问题描述】:

这是代码,但它并未针对所有异常进行优化。例如,如果用户从一开始就输入 0,它会给出除以零的错误,而且我也不知道为什么数字的总和会起作用。

基本上,我使 num = 1 与 0 不同,因此可以开始 while 循环,但最后,我使 sum = sum - 1;但它给出了错误的数字。

请帮帮我。

import java.util.Scanner;
class Main {
    public static void main (String[] args) {
        int count = 0;
        int num = 1;
        double average = 0.0;
        int soma = 0;
        Scanner scanner = new Scanner(System.in);
        System.out.println("Type a integer. 0 to exit.");

        while (num != 0) {
            num = scanner.nextInt();
            sum = sum + num;
            count++;
        }
        if (num == 0) {
            average = sum / (count -1); 
            System.out.println("The sum of the numbers is:  "+ soma);
            System.out.println("The average of the numbers is: "+ media);
        }
    }
}

【问题讨论】:

  • 你的 println 应该是 sum 和 average 而不是 soma 和 media
  • 当我翻译成英语时,我忘记了xD

标签: java integer sum average


【解决方案1】:

改变while来做while:

do {
    num = scanner.nextInt();
    sum = sum + num;
    count++;
}while (num != 0);

更改自:

average = sum / (count -1); 
System.out.println("The sum of the numbers is:  "+ soma);
    System.out.println("The average of the numbers is: "+ media);

到:

 average = sum / (count); 
 System.out.println("The sum of the numbers is:  "+ sum);
    System.out.println("The average of the numbers is: "+ average);

它应该可以工作

【讨论】:

    猜你喜欢
    • 2022-12-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多