求N个整数的平均数、众数和中位数 用pascal,我只学过pascal求N个整数的平均数,众数和中位数.小知识:* 众数 如有9个数:17 13 17 9 17 17 3 16 17  17出现的次数最多,即为这组数的众数.* 中位数

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/06 14:07:02
求N个整数的平均数、众数和中位数 用pascal,我只学过pascal求N个整数的平均数,众数和中位数.小知识:* 众数 如有9个数:17 13 17 9 17 17 3 16 17  17出现的次数最多,即为这组数的众数.* 中位数

求N个整数的平均数、众数和中位数 用pascal,我只学过pascal求N个整数的平均数,众数和中位数.小知识:* 众数 如有9个数:17 13 17 9 17 17 3 16 17  17出现的次数最多,即为这组数的众数.* 中位数
求N个整数的平均数、众数和中位数 用pascal,我只学过pascal
求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

求N个整数的平均数、众数和中位数 用pascal,我只学过pascal求N个整数的平均数,众数和中位数.小知识:* 众数 如有9个数:17 13 17 9 17 17 3 16 17  17出现的次数最多,即为这组数的众数.* 中位数
program DoingData;
var
n :longint;
sum:longint;
n1 :real;
n2 :longint;
n3 :real;
a :array[0..1000] of longint;
f :array[0..100] of longint;
procedure input();
var
i:longint;
begin
readln(n);
sum:= 0;
for i:= 1 to n do
begin
read(a[i]);
inc(f[a[i]]);
inc(sum,a[i]);
end;
end;
procedure print_n1();
begin
n1:= sum / n;
write(n1:0:2,' ');
end;
procedure print_n2();
var
max:longint;
i :longint;
begin
max:= f[1];
for i:= 2 to n do
if f[i] > max then
begin
max:= f[i];
n2:= i;
end;
write(n2,' ');
end;
procedure print_n3();
var
mid1:longint;
mid2:longint;
procedure qsort(s,e:longint);
var
i,j,mid:longint;
begin
i:= s;
j:= e;
mid:= a[(i + j) div 2];
while i mid do
inc(i);
while a[j] < mid do
dec(j);
if i s then qsort(s,j);
end;
begin
qsort(1,n);
if odd(n) then
writeln(a[(1 + n) div 2])
else
begin
mid1:= a[(1 + n) div 2];
mid2:= a[(1 + n) div 2 + 1];
n3:= (mid1 + mid2) / 2;
writeln(n3:0:1);
end;
end;
begin
input;
print_n1;
print_n2;
print_n3;
end.