Помогите пожалуйста. Написала программу с подпрограммой ** паскале, но что-то нет так. В...

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

Помогите пожалуйста. Написала программу с подпрограммой на паскале, но что-то нет так. В компьютере не работает помогите найти и исправить ошибку.

Задание: 5.1 (на фото)

Программа:
program lab5;
const n=12;
type masiv=array[1..n] of integer;
var A,L,B
i:integer;
sr1,sr2,sr3,s:real;
procedure vvod(var x:masiv);
var i: integer;
begin
for i:=1 to n do
readln(x[i]);
end;
procedure sred(var x:masiv;n:integer;var s,sr:real);
var i:integer;
begin
s:=0;
for i:=1 to n do;
begin
s:=s+x[i];
end;
sr:=s/n;
end;
begin
vvod(A7);
vvod(L12);
vvod(B8);
sred(A,7,sr1);
sred(L,12,sr2);
sred(B,8,sr3);
y:=(sr1+sr2+sr3)/3;
writeln('y=',y:5:3);
end.


image

Информатика (42 баллов) | 45 просмотров
Дано ответов: 2
0 голосов

{
Листинг программы и скриншот работы в приложениях.
Написано на PascalABC.NET но будет работать и в других Паскалях.
Исправленная программа ниже.
}

program lab5;

const
  n = 12;

type
  masiv = array[1..n] of integer;

var
  A, L, B: masiv;
  i: integer;
  sr1, sr2, sr3, s,y: real;

procedure vvod(var x: masiv; n: byte);
var
  i: integer;
begin
  writeln('Введите элементы массива');
  for i := 1 to n do
    read(x[i]);
end;

procedure sred(var x: masiv; n: integer; var sr: real);
var
  i, s: integer;
begin
  s := 0;
  for i := 1 to n do;
    s := s + x[i];

  sr := s / n;
end;

begin
  vvod(A, 7);
  vvod(L, 12);
  vvod(B, 8);
 
  sred(A, 7, sr1);
  sred(L, 12, sr2);
  sred(B, 8, sr3);
  y := (sr1 + sr2 + sr3) / 3;
  writeln('y=', y:5:3);
end.


image
(10.8k баллов)
0 голосов

Program lab5;
const maxsize = 12;
type masiv=array[1..maxsize] of integer;
var A7, L12, B8:masiv;
var sr1,sr2,sr3,y:real;

procedure vvod(var x: masiv; n:integer);
var i: integer;
begin
for i:=1 to n do
readln(x[i]);
end;

function sred(x:masiv;n:integer):real;
var i:integer;
var s:real;
begin
s := 0.0;
for i:=1 to n do begin
s := s + x[i];
end;
sred := s / n;
end;

begin
vvod(A7, 7);
vvod(L12, 12);
vvod(B8, 8);
sr1 := sred(A7,7);
sr2 := sred(L12,12);
sr3 := sred(B8,8);

y:=(sr1+sr2+sr3)/3.0;

writeln('y=',y:5:3);
end.


(9.2k баллов)