1)Опишите ** русском языке или одном из языков программирования алгоритм подсчета суммы...

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

1)Опишите на русском языке или одном из языков программирования алгоритм подсчета суммы произведений последовательных пар элементов в целочисленном массиве из 30 элементов. (Это означает, что нужно сосчитать сумму произведений первого и второго, третьего и четвертого, пятого и шестого элементов, и так далее.)

2)Опишите на русском языке или одном из языков программирования алгоритм поиска номера первого из двух последовательных элементов в целочисленном массиве из 30 элементов, сумма которых максимальна (если таких пар несколько, то можно выбрать любую из них).


Информатика (58 баллов) | 67 просмотров
0

По первой задаче пара - это 1и 2, 3 и 4, и т.д. элементы - тут все понятно. А по второй есть два варианта: рассматривать или так же, или 1 и 2, затем 2 и 3, затем 3 и 4 и т.д. Какой выбрать - непонятно.

Дан 1 ответ
0 голосов
Правильный ответ
Первый алгоритм:
const
  n=30;
var
  a:array[1..30] of integer;
  s:longint;
  i:integer;
begin
  { формируем массив }
  Randomize;
  Writeln('Элементы массива:');
  for i:=1 to n do
  begin a[i]:=Random(51)-25; Write(a[i]:4) end;
  Writeln;
  { собственно, алгоритм }
  s:=a[1]*a[2]; i:=3;
  while i<=n-1 do<br>  begin s:=s+a[i]*a[i+1]; i:=i+2 end;
  Writeln('Сумма пар произведений равна ',s)
end.

Тестовое решение:
Элементы массива:
   1  10  -9 -12  -2  20  21  14   5  19  21 -14 -10 -17   5  -9  -8  17  18  11 -21  -3 -15 -10 -15 -16 -15   2   3  21
Сумма пар произведений равна 846

Второй алгоритм
const
  n=30;
var
  a:array[1..30] of integer;
  smax,imax:longint;
  i:integer;
begin
  { формируем массив }
  Randomize;
  Writeln('Элементы массива:');
  for i:=1 to n do
  begin a[i]:=Random(51)-25; Write(a[i]:4) end;
  Writeln;
  { собственно, алгоритм }
  smax:=a[1]+a[2]; imax:=1;
  for i:=2 to n-1 do
    if smax    begin smax:=a[i]+a[i+1]; imax:=i end;
  Writeln('Номер первого из пары элементов с максимальной суммой: ',imax)
end.

Тестовое решение:
Элементы массива:
  23  13 -11  -1 -18  20 -23   1 -21 -10   7  15  -2  24 -18 -22 -13  12 -16  22  19 -14 -14 -14  19  15   8 -15 -19 -22
Номер первого из пары элементов с максимальной суммой: 20

(142k баллов)