Найти максимальную сумму двух соседних элементов в массиве - Pascal
Формулировка задачи:
помогите пожалуйста решить задачу:в одномерном массиве найти максимальную сумму двух соседних элементов
Решение задачи: «Найти максимальную сумму двух соседних элементов в массиве»
textual
Листинг программы
uses crt; var a:array[1..100] of integer; n,i,sum,max,i1,i2:integer; begin clrscr; randomize; write('n=');readln(n); Writeln('Massiv:'); for i:=1 to n do begin a[i]:=random(20); write(a[i],' '); end; writeln; max:=a[1]+a[2];i1:=1;i2:=2; for i:=2 to n do begin sum:=a[i]+a[i-1]; if sum>max then begin max:=sum; i1:=i-1; i2:=i; end; end; writeln('Maximalnaya summa=',max,' elementy ',a[i1],'+',a[i2]); readln end.
Объяснение кода листинга программы
- Создаётся переменная
a
типаarray[1..100] of integer
, которая представляет собой массив из 100 целых чисел. - Задаётся переменная
n
типаinteger
, которая представляет собой количество элементов в массиве. - Задаются переменные
i
,sum
иmax
типаinteger
, которые будут использоваться для хранения текущего и предыдущего наибольших сумм, а также текущей максимальной суммы. - Задаются переменные
i1
иi2
типаinteger
, которые будут использоваться для хранения индексов предыдущего и текущего наибольших сумм. - Выводится сообщение
n=
, запрашивается значениеn
и выводится сообщениеMassiv:
. - В цикле
for
сi
от 1 доn
вычисляется суммаsum
элементовa[i]
иa[i-1]
. - Если
sum
больше текущей максимальной суммыmax
, то обновляется значениеmax
и индексы предыдущего и текущего наибольших суммi1
иi2
. - По окончании цикла выводится сообщение
Maximalnaya summa=
, значениеmax
, а также значенияa[i1]
иa[i2]
. - Программа завершается с помощью функции
readln()
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д