Python Определить есть ли в массиве из 30 элементов хотя бы одна тройка соседних чисел,...

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

Python Определить есть ли в массиве из 30 элементов хотя бы одна тройка соседних чисел, в которой средний элемент больше своих "соседей", т. е. предшествующего и последующего. В случае положительного ответа определить номера элементов первой из таких троек. Результат вывести на экран.Просьба написать кратко и на уровне новичкарешение на паскале прилагаюN = 100500;vara: array[1..N] of integer;i,index: integer;beginfor i :=1 to N doread(a[i]);index := -1;for i := 2 to (N─1) doif ((a[i] > a[i─1]) and (a[i] > a[i+1]) and (index=-1)) then index := i;if (index = -1) thenwrite('Нет таких чисел')elsewrite(index─1,' ',index,' ',index+1);end.


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

index := -1; в теле цикла или нет?

Дан 1 ответ
0 голосов

N = 100500

a = []

for i in range(1,N):

   a.append(int(input()))

index = -1

for i in range(2,N-1):

   if a[i] > a[i-1] and a[i] > a[i+1] and index == -1:

       index = i

if index == -1:

   print('Нет таких чисел')

else:

   print(str(index-1) + '' + str(index) + '' + str(index+1))

(654k баллов)
0

File "main.py", line 8
index = i
^
IndentationError: expected an indented block

0

Python 3.8 - ошибки нет.

0

Тем более, это ошибка отступа, если вы не знаете)

0

прошу прощения), но почему при вводе чисел не выводится результат, а просто переносится на следующую строку ввода

0

Я особо задание не читал, просто перевёл на питон

0

не могли бы ещё одну перевести)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.

0

N = 30
a = []
MaxEven = 0
NumEven = 0
for i in range(1,N):
a = int(input())
for i in range(1,N):
if a % 2 == 0:
NumEven += 1
else:
if NumEven >= MaxEven:
MaxEven = NumEven
NumEven = 0
if NumEven > MaxEven:
MaxEven = NumEven
print(MaxEven)

0

ууу, в комментах вообще все табуляции слетают