pascal问题 求N个整数的平均数、众数和中位数

pascal问题 求N个整数的平均数、众数和中位数
求N个整数的平均数,众数和中位数.小知识:* 众数 如有9个数:17 13 17 9 17 17 3 16 17  17出现的次数最多,即为这组数的众数.* 中位数 如有9个数:102 170 96 90 97 106 110 182 100  将这9个数按一定的顺序(从大到小或从小到大)排列后得到: 182 170 110 106 102 100 97 96 90  正中间的一个数是102,102是这组数的中位数. 而这10个数:106 99 104 120 107 112 33 102 97 100  按一定顺序排列后得到:120 112 107 106 104 102 100 99 97 33  正中间有两个数:104 102,中位数就是这两个数的平均数,即(104+102)/ 2 = 103.
输入
第一行为整数N(5
样例输入是
6
5 2 2 3 5 6
王首都 1年前 已收到3个回答 举报

与狼伴舞的羊 幼苗

共回答了13个问题采纳率:92.3% 举报

{
而这10个数:106 99 104 120 107 112 33 102 97 100  按一定顺序排列后得到:120 112 107 106 104 102 100 99 97 33  正中间有两个数:104 102,中位数就是这两个数的平均数,即(104+102)/ 2 = 103.
这段你写的不对吧?好像题目中写过A[i]maxn then
begin
maxn:=s[i];
mm:=i;
end;
writeln({众数}mm);
{普通冒泡排序}
for i:=1 to n do
for j:=i+1 to n do
if a[i]

1年前 追问

7

王首都 举报

你到底有没有调试过呀?(-_-)……(知不知道什么是中位数??)而且,a[i]<100只是对于后面题目的限制,说明只不过是演示啦。而且发上去还是错1个点。

hejuntyfo 幼苗

共回答了1个问题 举报

var
procedure kp(l,r:integer);
begin
var a,b,mid,t:integer;
a:=l;b:=r;mid:=s[(a+b) div 2};
repeat
while s[a]while s[b]>mid then dec(b);
if a

1年前

2

missingboyqw 幼苗

共回答了3个问题 举报

a,b:array[1..1000] of integer;
begin
read(n);
for i:=1 to n do
begin
read(a[n]);
t:=t+a[n];
inc(b[a[n]】);
end;
write(t/n:2:3);
max:=b[1];
j:=1;
for i:=2 to a[n] do
if maxbegin
max:=b[i];
j:=i;
en;
writeln(j);
end;

1年前

0
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 19 q. 0.032 s. - webmaster@yulucn.com