Advertisement
Guest User

Untitled

a guest
Oct 21st, 2019
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.19 KB | None | 0 0
  1. program;
  2. const
  3. minSize = 2;
  4. maxSize = 100;
  5. minEl = -100;
  6. maxEl = 100;
  7. var
  8. i, size, closeind, sum: integer;
  9. close, average: real;
  10. isCorrect: boolean;
  11. mass: array of integer;
  12.  
  13. begin
  14. Writeln('Данная программа находит индекс элемента в последовательности, который отличается от среднего арифметического значения элементов последовательности на минимальную величину.');
  15. isCorrect := false;
  16. repeat
  17. Writeln('Введите размер последовательности от ', min, ' до ', max,':');
  18. try
  19. Readln(size);
  20. if (size > minSize) and (size < maxsize) then
  21. isCorrect := true
  22. else
  23. Writeln('Ошибка ввода. Повторите попытку.');
  24. except
  25. Writeln('Ошибка ввода. Повторите попытку.');
  26. until isCorrect;
  27. SetLength(mass, size);
  28. for i := 0 to size - 1 do
  29. begin
  30. repeat
  31. Writeln('Введите целые числа от ', minEl ,' до ', maxEl,' через пробел и нажмите <Enter>: ');
  32. try
  33. for i := 0 to size - 1 do
  34. begin
  35. readln(mass[i]);
  36. if (mass[i] > minEl) and (mass[i] < maxEl) then
  37. isCorrect := true
  38. else
  39. Writeln('Ошибка ввода. Повторите попытку.');
  40. except
  41. Writeln('Ошибка ввода. Повторите попытку.');
  42. until isCorrect;
  43. end;
  44. sum := 0;
  45. for i := 0 to size - 1 do
  46. begin
  47. sum := sum + mass[i];
  48. i := i + 1;
  49. end;
  50. average := sum / size;
  51. for i := to size - 1 do
  52. begin
  53. if abs(mass[i] - average) < close then
  54. begin
  55. close := abs(mass[i] - average);
  56. closeind := i;
  57. end;
  58. end;
  59. Writeln('Индекс элемента: ', closeind);
  60. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement