R7-4 统计正数和负数的个数然后计算这些数的平均值 (15 分)
编写程序,输入未指定个数的整数,判断读入的正数有多少个,读入的负数有多少个,然后计算这些输入值得总和及平均值(不对0计数)。当输入为0时,表明程序结束。将平均值以double型数据显示。
输入格式:
输入在一行中给出一系列整数,其间以空格分隔。当读到0时,表示输入结束,该数字不要处
输出格式:
在第一行中输出正整数的个数; 在第二行中输出负整数的个数; 在第三行中输出这些输入值的总和(不对0计数); 在第四行中输出这些输入值的平均值(double型数据)。
样例">输入样哩:
1 2 -1 3 0
输出样例:
3151.25
import java.util.*;public class Main {public static void main(String[] args) {Scanner input = new Scanner(System.in);String l = input.nextLine();if (l.equals("0")) {return ;}String[] string = l.split(" ");int[] array = new int[string.length];for (int i = 0; i < string.length; i++) {array[i] = Integer.valueOf(string[i]);}double sum = 0;int z = 0, f = 0;for (int i = 0; i < array.length; i++) {if (array[i] > 0) z++;if (array[i] < 0) f++;sum += array[i];}System.out.println(z);System.out.println(f);int x = (int)sum;System.out.println(x);System.out.println(sum / (z + f));}}
import java.util.*;public class Main {public static void main(String[] args) {Scanner input = new Scanner(System.in);int positive = 0 ,negative = 0 ,getdata ,cnt = 0;double sum = 0 ,average;getdata = input.nextInt();if (getdata == 0) {return ;}while (getdata != 0) {if (getdata > 0) positive ++;if(getdata < 0) negative ++;cnt ++;sum += getdata;getdata = input.nextInt();}System.out.println(positive);System.out.println(negative);int x = (int)sum;System.out.println(x);System.out.println(sum / (positive + negative));}}