Помогите, пожалуйста, с Паскалем, процедура

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

Помогите, пожалуйста, с Паскалем, процедура


image

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

Ответ:

Объяснение:

const

 max_elements = 1000;

type

 tmas = array[1..max_elements] of integer;  // тим одномерного массива

// процедура, по входным параметрам: массив, количество элементов в массиве, a, b

//  вычисляет сумму и количество элементов

procedure sum_count(in_mas:tmas; in_count, in_a, in_b:integer; var out_sum, out_count:integer);

var

 i:integer;

 sum, count:integer;

begin

 sum:=0;

 count:=0;

 for i:=1 to in_count do

   if ((in_a

     sum:=sum + in_mas[i];

     count:=count + 1;

   end;

 out_sum:=sum;

 out_count:=count;

end;

var

 x, y:tmas;

 n_x, n_y:integer;

 i:integer;

 s_x, c_x:integer;

 s_y, c_y:integer;

 a, b:integer;

 sr:real;

begin

 //  ввод a

 writeln('Input a = ');

 readln(a);

  // ввод b

 writeln('Input b = ');

 readln(b);

  // ввод массива x

 writeln('Input n_x = ');

 readln(n_x);

  for i:=1 to n_x do begin

   writeln('Input x[', i, '] = ');

   readln(x[i]);

 end;

  // ввод массива y

 writeln('Input n_y = ');

 readln(n_y);

 for i:=1 to n_y do begin

   writeln('Input y[', i, '] = ');

   readln(y[i]);

 end;

 

 // сами вычисления

 s_x:=0;

 c_x:=0;

 s_y:=0;

 c_y:=0;

 sr:=0;

 sum_count(x, n_x, a, b, s_x, c_x);

 sum_count(y, n_y, a, b, s_y, c_y);

 sr:=(s_x + s_y) / (c_x + c_y);

 writeln('SR = ', sr);

 readln;

end.

(3.1k баллов)