• Предмет: Информатика
  • Автор: Mdsk01
  • Вопрос задан 10 месяцев назад

ПАСКАЛЬ!!! ПОЖАЛУЙСТА, ПОМОГИТЕ!
Заменить элементы, значение которых больше среднего арифметического на это среднее арифметическое.

Ответы

Ответ дал: csharp
1
  1. const
  2.  N = 10;  // количество элементов в массиве
  3. var
  4.  arr: array[1..N] of real;
  5.  i: integer;
  6.  sum: real;
  7.  average: real;
  8. begin
  9.  Writeln('Введите ', N, ' элементов..');
  10.  
  11.  for i := 1 to N do
  12.  begin
  13.    Write(i, '-й элемент: ');
  14.    Readln(arr[i]);
  15.    sum := sum + arr[i];
  16.  end;
  17.  
  18.  average := sum / N;  // среднее арифметическое
  19.  
  20.  for i := 1 to N do
  21.    if (arr[i] > average) then
  22.      arr[i] := average;
  23.  
  24.  for i := 1 to N do
  25.    Write(arr[i], ' ');
  26. end.

Mdsk01: вы прогоняли программу? работает, спасибо, но там куча нулей, все огромное. я новичок, не знаю, как привести в нормальный вид
csharp: Вы о чём? Какие нули?
Mdsk01: вы прогоняли программу?
csharp: Конечно.
Mdsk01: ввожу, например, число 6, а оно представлено в виде 6.00000000000Е+000 . Из-за этого невозможно нормально просмотреть. Как можно округлить?
csharp: Так это онлайн-компиляторы показывают.
csharp: Скомпилируйте в PascalAbc.NET
Mdsk01: я прогоняла в free pascal
csharp: Такая форма записи из-за того, что тип real.
Mdsk01: я понимаю, с этим ничего нельзя сделать? никак не округлить?
Вас заинтересует