为了账号安全,请及时绑定邮箱和手机立即绑定

请问JAVA求和,平均数,最大数,最小数,标准差的相关代码该如何写?

请问JAVA求和,平均数,最大数,最小数,标准差的相关代码该如何写?

慕粉3397785 2016-05-22 15:06:35
要求用户输入数字(可以带小数),当用户输入的数字多过10个或者用户输入了负数程序就停止要求输入然后显示计算结果(大于10个的数或者负数在计算时需忽略)(用数组来储存)输出结果示例:用户输入以下6个数:1.232.054.00.010.12-1程序显示的结果为:总数=7.41平均数=1.48最大数=4.0最小数=0.01标准差=1.64
查看完整描述

3 回答

?
蜂之谷

TA贡献564条经验 获得超863个赞

public static void main(String[] args) {
		double[] is = { 1.23, 2.05, 4.0, 0.01, 0.12 };
		
		double max = is[0];
		double min = is[0];
		double sum = 0;
		double ave = 0.0;
		double StanDev = 0.0;
		for (int i = 0; i < is.length; i++) {
			if (is[i] > max) {
				max = is[i];
			}
			if (is[i] < min) {
				min = is[i];
			}
			sum += is[i];
		}

		sum = getDouble(sum);
		ave = sum / is.length;

		ave = getDouble(ave);

//		double square = 0;
//		for (int i = 0; i < is.length; i++) {
//			square += is[i] * is[i];
//		}
//		StanDev = Math.sqrt((square - sum*sum/is.length)/(is.length-1));
//		StanDev = getDouble(StanDev);
		
		double squareSum = 0;
		for (int i = 0; i < is.length; i++) {
			squareSum += ((is[i]-ave) * (is[i]-ave));
		}
		StanDev = Math.sqrt(squareSum/(is.length-1));
		StanDev = getDouble(StanDev);
		
		System.out.println("总数:" + sum);
		System.out.println("最小数:" + min);
		System.out.println("最大数:" + max);
		System.out.println("平均数:" + ave);
		System.out.println("标准差:" + StanDev);
	}

	//四舍五入保留2为小数
	private static double getDouble(double d) {
		BigDecimal b = new BigDecimal(d);
		return b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
	}


查看完整回答
2 反对 回复 2016-05-22
  • 慕粉3397785
    慕粉3397785
    感谢阁下的回复 不过我想要客户自行输入数字,而不是程序中预先设定好数字,(可以带小数),当用户输入的数字多过10个或者用户输入了负数程序就停止要求输入然后显示计算结果(大于10个的数或者负数在计算时需忽略)请问这该怎么写呢?再次感谢阁下的回复.谢谢你.
  • 蜂之谷
    蜂之谷
    我知道啊,用户输入这个也不知道怎么写么?
  • 慕粉3397785
    慕粉3397785
    请原谅我...我真的是个菜得没得再菜的菜鸟了...我搞不定那个判断(输入负数或者超过第10个数就停止,并且在运算过程中不计入在内)(还要用数组来储存)麻烦阁下可否帮帮我,谢谢您.
点击展开后面1
?
慕运维8283692

TA贡献31条经验 获得超17个赞

先把数组初始化为0

for(int i=0;i<10;i++){

    读输入,如果输入为负,break.

}

直接把数组当十个的处理,因为0没有影响

查看完整回答
反对 回复 2016-05-23
  • 3 回答
  • 1 关注
  • 3827 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信