Предмет: Информатика, автор: n7337537

Создать массив из 20 случайных чисел в диапазоне от -9 до 20. Определить подряд идущие положительные значения, не прерываемых нулями и отрицательными числами. Вывести на консоль исходный массив чисел и найденный фрагмент (числа через пробел).

Пример :

1, 2, -1, 7, 3, 11, 0, -2, 15



Есть три блока подряд идущих чисел не прерываемых отрицательными числами или нолем.

1,2

7,3,11 (самый длинный)

15



Результат:

7,3,11

Ответы

Автор ответа: mixail0809
0

python:

import random

# Создание массива из 20 случайных чисел в диапазоне от -9 до 20

arr = [random.randint(-9, 20) for i in range(20)]

print("Исходный массив:", arr)

# Поиск подряд идущих положительных значений, не прерываемых нулями и отрицательными числами

max_subarray = []

subarray = []

for num in arr:

if num > 0:

subarray.append(num)

else:

if len(subarray) > len(max_subarray):

max_subarray = subarray

subarray = []

if len(subarray) > len(max_subarray):

max_subarray = subarray

# Вывод найденного фрагмента на консоль

if len(max_subarray) > 0:

print("Подряд идущие положительные значения не прерываемые нулями и отрицательными числами:")

print(*max_subarray)

else:

print("Не найдено подряд идущих положительных значений не прерываемых нулями и отрицательными числами.")

Похожие вопросы
Предмет: Информатика, автор: vrnkdzuba23