编写程序,输入未指定个数的整数,判断读入的正数有多少个,读入的负数有多少个,然后计算这些输入值得总和及平均值(不对0计数)。当输入为0时,表明程序结束。将平均值以double型数据显示。
输入格式:
输入在一行中给出一系列整数,其间以空格分隔。当读到0时,表示输入结束,该数字不要处
输出格式:
在第一行中输出正整数的个数;
在第二行中输出负整数的个数;
在第三行中输出这些输入值的总和(不对0计数);
在第四行中输出这些输入值的平均值(double型数据)。
输入样例:
1 2 -1 3 0
输出样例:
3
1
5
1.25
代码如下:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String str= sc.nextLine();
if(str.equals("0")){
return;
}
String s[]=str.split("\\s+");
int arr[]=new int[s.length];
for(int i=0;i<s.length;i++){
arr[i]=Integer.valueOf(s[i]);
}
double sum=0;
int count1=0;
int count2=0;
for(int i=0;i<arr.length;i++){
if(arr[i]>0){
count1++;
}else if(arr[i]<0){
count2++;
}
sum+=arr[i];
}
System.out.println(count1);
System.out.println(count2);
System.out.println((int)sum);
System.out.println(sum*1.0/(count1+count2));
}
}