2130: 平均数中位数和众数
内存限制:128 MB
时间限制:1.000 S
评测方式:文本比较
命题人:
提交:3
解决:3
题目描述
输入一组整数,输出这组整数的平均数、中位数和众数。
平均数:是指在一组数据中所有数据之和再除以这组数据的个数。
如:“1,2,3,4,5” 这组数的平均数为3.00。 (1+2+3+4+5)/ 5 = 3.00
中位数:将一组数据从大到小排序后,位置在最中间的数值。
分两种情况:当数据个数为奇数时,中位数为中间的那个数的值;
当数据个数为偶数时,中位数为中间的两个数的平均值。
如:“1,3,5,7,9 ”这组数据有5个数字,中位数为5;
“1,3,5,7 ”这组数据有4个数字,中位数为4。
众数:是一组数据中出现次数最多的那个数值。
如:“1,3,5,7,9 ,9”这组数据9出现的次数最多,故众数为9。
输入
以英文逗号分隔的一组整数。
输出
输出这组整数的平均数、中位数和众数。
样例输入 复制
5,4,5,3,1
样例输出 复制
3.6 4 5
提示
ls=list(map(int,input().split(","))) average,median,mode=0,0,0 n=len(ls) average=sum(ls)/n ls=sorted(ls) if n%2!=0: median=ls[(n+1)//2-1] else: median=(ls[n//2-1]+ls[n//2])/2 maxCnt=0 lastI=ls[0] cnt=0 for i in ls: if i!=lastI: cnt=1 else: cnt+=1 if cnt>maxCnt: maxCnt=cnt mode=i lastI=i print(average,median,mode)