求一个整型数组中元素的平均值,并统计其中大于和小于此平均值的元素的个数

第二题

程序实现目标:
求一个整型数组中元素的平均值,并统计其中大于和小于此平均值的元素的个数。
程序要求:
输入:整型数组中的元素个数及各个元素。
输出:整型数组中元素的平均值,大于和小于此平均值的元素的个数。

import java.util.HashMap;
import java.util.Map;

/**
 * 程序实现目标:求一个整型数组中元素的平均值,并统计其中大于和小于此平均值的元素的个数。
 * 程序要求:输入:整型数组中的元素个数及各个元素。
 * 输出:整型数组中元素的平均值,大于和小于此平均值的元素的个数。
 * @author lx
 */
public class Test {

	public static void main(String[] args) {
		// 平均数等于元素的情况无特殊处理
		int[] a = {4, 4, 4};
		count(a.length, a).forEach((k, v) -> System.out.println(k + "----" + v));
	}
	
	/**
	 * @param x 整型数组中的元素个数
	 * @param arr 各个元素
	 * @return 整型数组中元素的平均值,大于和小于此平均值的元素的个数
	 */
	public static Map<String, Object> count(int x, int[] arr) {
		// 元素平均值
		int average = 0;
		int sum = 0;
		for (int i = 0; i < x; i++) {
			sum += arr[i];
		}
		average = sum / x;
		
		// 大于平均值的元素个数
		int i = 0;
		// 小于平均值的元素个数
		int j = 0;
		
		for (int a = 0; a < x; a++) {
			if (arr[a] > average) {
				i++;
			}
			if (arr[a] < average) {
				j++;
			}
		}
		
		// 返回结果用map封装
		Map<String, Object> map = new HashMap<String, Object>();
		map.put("average", average);
		map.put("i", i);
		map.put("j", j);
		
		return map;
	}
	
}
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值