Задан числовой массив, состоящий из 11 элементов. Увеличьте все элементы данного массив,...

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

Задан числовой массив, состоящий из 11 элементов. Увеличьте все элементы данного массив, значения которых больше среднего арифметической всех элементов массива на 40 и выведите все элементы на экран. Паскаль


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

Вот решение задачи:


uses Crt;
const n=11;
type Mas = array [1..n] of real;
var  A: Mas;
     i: integer;
     Sum, Sred: real;
begin
ClrScr;

Sum:=0;
for i:=1 to n do
  begin
      A[i]:= 100+random(1000)/27;
      Sum:=Sum+A[i];
  end;
Sred:=Sum/n;
WriteLn ('Old Massiv:  ');
for i:=1 to n do
      Write (A[i]:6:2,'    ');

WriteLn; WriteLn;
WriteLn ('Sred = ', Sred:6:2);
WriteLn;
WriteLn ('New Massiv:  ');
for i:=1 to n do
  begin
      if A[i]>Sred then A[i]:=A[i]+40;
      Write (A[i]:6:2,'    ');
  end;
WriteLn;

 ReadLn;
 end.

0

Много лишнего.

0

Отсутствует заполнение массива.

0

Массив заполнен вещественными числами при помощи датчика СЧ

0

Хорошо.

0 голосов
Я немного оптимизировал, если ты не против.
uses crt;
const n=11;
Var a:
array [1..n] of real;
  i: integer;
  sum,sred:real;
Begin
sum:=0;
  for i:=1 to n do readln(a[i]);
  for i:=1 to n do sum
  sred:=sum/n;
  for i:=1 to n do
  begin
       if a[i]>sred then a[i]:=a[i]+40;
       write (a[i]:3:2,'    ');
  end;
End.

(42 баллов)