Здравствуйте, умоляю, подскажите как делать??
Размерность A: 4 B: 10 C: 25 D: 15.
Диапазон значений A: [10;50] B: [25;38] C: [10;38] D: [ 5;60].
1)Сортировка массивов C и B по возрастанию методом простой вставки.
2)Произведение средних арифметических массивов A и В.
НЕ могу понять этот Паскаль(((((

1

Ответы и объяснения

Лучший Ответ!
2013-11-08T15:39:09+04:00

Это Проверенный ответ

×
Проверенные ответы содержат надёжную, заслуживающую доверия информацию, оценённую командой экспертов. На "Знаниях" вы найдёте миллионы ответов, правильность которых подтвердили активные участники сообщества, но Проверенные ответы - это лучшие из лучших.
Type
    arr25 = array[1..25] of integer;

var
    a, b, c, d: arr25;
    i, a_n, b_n, c_n, d_n, sum_a, sum_b: integer;

procedure show(a: arr25; length: integer) ;
var
    i: integer;
begin
    writeln;
    for i := 1 to length do
        write(a[i], ' ');
end;

procedure fill(var a: arr25; length, min, max: integer) ;
var
    i: integer;
begin
    for i := 1 to length do
        a[i] := min + random(max - min + 1);
    show(a, length);
end;

function average(a: arr25; length: integer): real;
var
    i, sum: integer;
begin
    for i := 1 to length do
        sum := sum + a[i];
    average := sum / length;
end;

procedure sort(var a: arr25; length: integer);
var
    key, i, j: integer;
begin
   
    for i := 1 to length do
    begin
        key := A[i];
        j := i - 1;
        while (j >= 1) and (A[j] > key) do
        begin
            A[j + 1] := A[j];
            j := j - 1;
        end;
        A[j + 1] := key;
    end;
end;

begin
   
    fill(a, 4, 10, 50);
    fill(b, 10, 25, 38);
    fill(c, 25, 10, 38);
    fill(d, 15, 5, 60);
   
    writeln;
   
    writeln(average(a, 4) * average(b, 10));
   
    sort(c, 25);
    sort(b, 10);
   
    show(c, 25);
    show(b, 10);
end.