Ошибка: ожидался порядковый тип - Pascal (80880)
Формулировка задачи:
Помогите исправить
Листинг программы
- program Hw;
- const
- m = 3;
- var
- A: array[1..3] of real;
- B: array[1..3] of real;
- C: array[1..3] of real;
- D: array[1..3] of real;
- S: real;
- W: real;
- O: real;
- R: real;
- summA:real;
- summB:real;
- summC:real;
- summD:real;
- i: real;
- srtA:real;
- srtB:real;
- srtC:real;
- srtD:real;
- begin
- for i := 1 to m do begin
- S:=random(11);
- W:=random(13);
- while W = S do W:=random(13);
- O:=random(14);
- while O = S or W do O:=random(14);
- R:=random(10);
- while R = S or W or O do R:=random(10);
- A[i]:=-10+S;
- write (A[i]:4,' ');
- B[i]:=-10+W;
- write (B[i]:4,' ');
- C[i]:=-10+O;
- write (C[i]:4,' ');
- D[i]:=-10+R;
- writeln (D[i]:4,' ');
- end;
- for i := 1 to m do
- summA:=summA+A[i];
- srtA:=summA/4;
- write (' ',summA);
- summB:=summB+B[i];
- srtB:=summB/4;
- write (' ',summB);
- summC:=summA+C[i];
- srtC:=summC/4;
- write (' ',summC);
- summD:=summD+D[i];
- srtD:=summD/4;
- write (' ',summD);
- end.
Решение задачи: «Ошибка: ожидался порядковый тип»
textual
Листинг программы
- program Hw;
- const
- m = 3;
- var
- A, B, C, D: array[1..3] of integer;
- S, W, O, R, i: integer;
- summA, summB, summC, summD, srtA, srtB, srtC, srtD: real;
- begin
- for i := 1 to m do
- begin
- S := random(12);
- W := random(57);
- while W = S do W := random(57);
- O := random(14);
- while O = S or W do O := random(14);
- R := random(10);
- while R = S or W or O do R := random(10);
- A[i] := S;
- write(A[i]:4, ' ');
- B[i] := W;
- write(B[i]:4, ' ');
- C[i] := O;
- write(C[i]:4, ' ');
- D[i] := R;
- writeln(D[i]:4, ' ');
- end;
- for i := 1 to m do
- begin
- summA := summA + A[i];
- summB := summB + B[i];
- summC := summC + C[i];
- summD := summD + D[i];
- end;
- srtA := summA / 3;
- write(' ', srtA);
- srtB := summB / 3;
- write(' ', srtB);
- srtC := summC / 3;
- write(' ', srtC);
- srtD := summD / 3;
- write(' ', srtD);
- end.
Объяснение кода листинга программы
- Константа
m
со значением 3 определяется: const m = 3; - Массивы
A
,B
,C
,D
каждый из которых состоит из трех элементов типа integer, и переменныеS
,W
,O
,R
иi
типа integer, а также переменныеsummA
,summB
,summC
,summD
,srtA
,srtB
,srtC
,srtD
типа real создаются: var A, B, C, D: array[1..3] of integer; S, W, O, R, i: integer; summA, summB, summC, summD, srtA, srtB, srtC, srtD: real; - Запускается цикл,
for i := 1 to m do
begin
...
end;
Внутри цикла переменным
S
,W
,O
,R
присваиваются случайные значения, не равные друг другу или другим значениямS
,W
,O
,R
. Затем значения присваиваются элементам соответствующих массивовA[i]
,B[i]
,C[i]
,D[i]
. - Суммы элементов каждого из массивов
A
,B
,C
,D
вычисляются в цикле: for i := 1 to m do begin summA := summA + A[i]; summB := summB + B[i]; summC := summC + C[i]; summD := summD + D[i]; end; - Вычисляются средние значения каждого массива: srtA := summA / 3; srtB := summB / 3; srtC := summC / 3; srtD := summD / 3; Затем эти значения выводятся.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д