profile
Опубликовано 5 лет назад по предмету Информатика от sofya11200

ПАСКАЛЬ 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

  1. Ответ
    Ответ дан daniilkey

    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;  

    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. Ответ
      Ответ дан sofya11200
      Неправильно
    2. Ответ
      Ответ дан daniilkey
      с чего вы взяли?
Самые новые вопросы