[英]How to calculate average from an arraylist only "calculating the positive numbers while ignoring the negatives)?
[英]Java. Trying to calculate average of positive numbers only, also displaying a message if no positive numbers are entered
我正在嘗試做一個練習,但無法弄清楚如何僅計算正數的平均值,以及如何在未輸入正數的情況下顯示特定消息。 我希望只有在沒有輸入正數時才顯示消息。 謝謝
import java.util.Scanner;
public class AverageOfPositiveNumbers {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int entries = 0;
Double average = 0.0;
Double sum = 0.0;
while (true) {
int number = Integer.valueOf(scanner.nextLine());
if (number == 0) {
System.out.println(average);
break;
}
if (number > 0) {
entries = entries + 1;
average = sum / entries;
sum = sum + number;
}
if (number < 0) {
System.out.println("Cannot calculate the average.");
}
}
}
}
您只需要兩個變量來確定平均值。 元素的數量( count
)和正值的總和。 完成獲取元素后計算平均值。 就像是,
Scanner scanner = new Scanner(System.in);
int count = 0;
int sum = 0;
while (true) {
int number = Integer.parseInt(scanner.nextLine());
if (number == 0) {
break;
} else if (number > 0) {
count++;
sum += number;
}
}
if (count > 0) {
System.out.printf("The average is %.2f%n", sum / (double) count);
} else {
System.out.println("Cannot calculate the average.");
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.