Ошибка: ожидался порядковый тип - Pascal (80880)

Узнай цену своей работы

Формулировка задачи:

Помогите исправить
Листинг программы
  1. program Hw;
  2. const
  3. m = 3;
  4. var
  5. A: array[1..3] of real;
  6. B: array[1..3] of real;
  7. C: array[1..3] of real;
  8. D: array[1..3] of real;
  9. S: real;
  10. W: real;
  11. O: real;
  12. R: real;
  13. summA:real;
  14. summB:real;
  15. summC:real;
  16. summD:real;
  17. i: real;
  18. srtA:real;
  19. srtB:real;
  20. srtC:real;
  21. srtD:real;
  22. begin
  23. for i := 1 to m do begin
  24. S:=random(11);
  25. W:=random(13);
  26. while W = S do W:=random(13);
  27. O:=random(14);
  28. while O = S or W do O:=random(14);
  29. R:=random(10);
  30. while R = S or W or O do R:=random(10);
  31. A[i]:=-10+S;
  32. write (A[i]:4,' ');
  33. B[i]:=-10+W;
  34. write (B[i]:4,' ');
  35. C[i]:=-10+O;
  36. write (C[i]:4,' ');
  37. D[i]:=-10+R;
  38. writeln (D[i]:4,' ');
  39.  
  40. end;
  41. for i := 1 to m do
  42. summA:=summA+A[i];
  43. srtA:=summA/4;
  44. write (' ',summA);
  45. summB:=summB+B[i];
  46. srtB:=summB/4;
  47. write (' ',summB);
  48. summC:=summA+C[i];
  49. srtC:=summC/4;
  50. write (' ',summC);
  51. summD:=summD+D[i];
  52. srtD:=summD/4;
  53. write (' ',summD);
  54. end.

Решение задачи: «Ошибка: ожидался порядковый тип»

textual
Листинг программы
  1. program Hw;
  2.  
  3. const
  4.   m = 3;
  5.  
  6. var
  7.   A, B, C, D: array[1..3] of integer;
  8.   S, W, O, R, i: integer;  
  9.   summA, summB, summC, summD, srtA, srtB, srtC, srtD: real;
  10.  
  11. begin
  12.   for i := 1 to m do
  13.   begin
  14.     S := random(12);
  15.     W := random(57);
  16.     while W = S do W := random(57);
  17.     O := random(14);
  18.     while O = S or W do O := random(14);
  19.     R := random(10);
  20.     while R = S or W or O do R := random(10);
  21.    
  22.     A[i] := S;
  23.     write(A[i]:4, '   ');
  24.     B[i] := W;
  25.     write(B[i]:4, '   ');
  26.     C[i] := O;
  27.     write(C[i]:4, '   ');
  28.     D[i] := R;
  29.     writeln(D[i]:4, '   ');    
  30.   end;
  31.  
  32.   for i := 1 to m do
  33.   begin
  34.     summA := summA + A[i];
  35.     summB := summB + B[i];
  36.     summC := summC + C[i];
  37.     summD := summD + D[i];
  38.   end;
  39.  
  40.   srtA := summA / 3;
  41.   write(' ', srtA);  
  42.   srtB := summB / 3;
  43.   write('     ', srtB);  
  44.   srtC := summC / 3;
  45.   write('     ', srtC);  
  46.   srtD := summD / 3;
  47.   write('     ', srtD);
  48.  
  49. end.

Объяснение кода листинга программы

  1. Константа m со значением 3 определяется: const   m = 3;
  2. Массивы 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;
  3. Запускается цикл, for i := 1 to m do begin     ...   end; Внутри цикла переменным S, W, O, R присваиваются случайные значения, не равные друг другу или другим значениям S, W, O, R. Затем значения присваиваются элементам соответствующих массивов A[i], B[i], C[i], D[i].
  4. Суммы элементов каждого из массивов 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;
  5. Вычисляются средние значения каждого массива: srtA := summA / 3;   srtB := summB / 3;   srtC := summC / 3;   srtD := summD / 3;   Затем эти значения выводятся.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 3.2 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы