1)Определить есть ли в массиве из 30 элементов хотя бы одна тройка соседних чисел, в которой средний элемент больше своих "соседей", т. е. предшествующего и последующего. В случае положительного ответа определить номера элементов первой из таких троек. Результат вывести на экран.
2)Опишите алгоритм подсчета максимального количества подряд идущих четных элементов в целочисленном массиве длины 30
Нужно оформить аналогично на питоне, я пока плохо разбираюсь в оформлении и могу выполнить решение только на паскале
Решение
1)const
N = 100500;
var
a: array[1..N] of integer;
i,index: integer;
begin
for i :=1 to N do
read(a);
index := -1;
for i := 2 to (N─1) do
if ((a > a[i─1]) and (a > a[i+1]) and (index=-1)) then index := i;
if (index = -1) then
write('Нет таких чисел')
else
write(index─1,' ',index,' ',index+1);
end.
2)const N=30;
var a: array[1..N] of integer;
MaxEven, NumEven, i: integer;
begin
MaxEven:=0;
NumEven:=0;
for i:=1 to N do
read(a);
for i:=1 to N do
if (a mod 2 = 0) then
NumEven:=NumEven+1
else begin
if NumEven>=MaxEven then
MaxEven:=NumEven;
NumEven:=0;
end;
if NumEven>=MaxEven then
MaxEven:=NumEven;
Writeln(MaxEven);
end.