1、编程需求
阿萌要开发一个程序,该程序可以从一组整数中,找出该组整数的中位数。
例如学生输入下面的一组整数:
程序对这一组整数按照从小到大的顺序排序:
程序从排序后的整数中找出中位数28,并输出28到shell窗口。
2、理解中位数
下面是一组学生投掷沙包的数据:
现在要统计一下这组学生投掷沙包的一般水平,该如何统计呢?
该组数的平均数为28.41,用28.41来表示这组学生投掷沙包的一般水平显然不太合适。因为我们可以看出,24.7更适合表示这组学生投掷沙包的一般水平。
使用该组数的平均数,不适合表示这组学生投掷沙包的一般水平,是因为该组数中有两个极端数值36.8和34.7。
当一组数中出现了极端数值时,用中位数作为这组数的一般水平会更合适。
中位数是按顺序排列的一组数据中居于中间位置的数,即在这组数据中,有一半的数据比它大,有一半的数据比它小
3、找出中位数的方法
要找出一组数的中位数,需要先对这组数按照大小排序,或从大到小排序,或从小到大排序。
如果这组数的个数是奇数,则中间那个数就是这组数的中位数;如果这组数的个数是偶数,则中间那2个数的平均值就是这组数的中位数。
用程序从一组数找出中位数的具体步骤如下:
(1)程序接收学生输入的一组数;
(2)程序对该组数按从小到大排序;
(3)如果该组数的个数是奇数,输出该组数中间的那个数;
(4)如果该组数的个数是偶数,求出中间那2个数的平均值,输出平均值。
购买专栏解锁剩余88%