ПАСКАЛЬ 30 баллов Напишите программу, которая заполняет массив из N элементов случайными...

0 голосов
41 просмотров

ПАСКАЛЬ 30 баллов Напишите программу, которая заполняет массив из N элементов случайными целыми числами в диапазоне [ A , B ] и определяет среднее арифметическое всех элементов этого массива, которые меньше 50, и среднее арифметическое всех остальных элементов. Входные данные Входная строка содержит три числа: границы диапазона случайных чисел A и B , а также размер массива N . Все числа разделены пробелами. Гарантируется, что 0 < N ≤ 10000 . Выходные данные В первой строке программа должна вывести N элементов построенного массива, разделив их пробелами, а во второй строке – среднее арифметическое всех элементов этого массива, которые меньше 50, и затем через пробел среднее арифметическое всех остальных элементов. При выводе последних двух чисел нужно сохранить три знака в дробной части. Если в какой-то из двух групп не оказалось ни одного элемента, нужно вывести вместо среднего арифметического число 0. Примеры входные данные 0 100 10 выходные данные 0 3 86 20 27 67 32 16 37 42 22.125 76.500 входные данные -10 40 6 выходные данные -10 -9 33 0 3 24 6.833 0.000


Информатика (29 баллов) | 41 просмотров
Дан 1 ответ
0 голосов

var m:array[1..100000] of integer;

a,b,sum,sum2,n,k,i:integer;

begin

sum:=0;

k:=0;

sum2:=0;

readln(a,b,n);

randomize;

for i:=1 to n do begin m[i]:=random(a,b); if(m[i]<50) then begin sum:=sum+m[i]; k:=k+1; end;  </p>

if(m[i]>=50) then sum2:=sum2+m[i]; end;  

for i:=1 to n do write(m[i],' ');

writeln;

writeln((sum/k):5:3,' ',(sum2/(n-k):5:3));

end.

(1.9k баллов)
0

Неправильно

0

с чего вы взяли?