Задачи на списки в Python: 1. Опишите алгоритм подсчета произведения всех отрицательных элементов заданного целочисленного массива размером 30 элементов
2. Опишите алгоритм подсчета максимального количества подряд идущих отрицательных элементов в заданном целочисленном массиве длиной 30.
3. Опи­ши­те ал­го­ритм под­сче­та суммы всех от­ри­ца­тель­ных эле­мен­тов за­дан­но­го це­ло­чис­лен­но­го мас­си­ва раз­ме­ром 30 эле­мен­тов. Если от­ри­ца­тель­ных эле­мен­тов нет со­об­щи­те об этом выводом «NO» на экран

sophiakrutko sophiakrutko    1   10.12.2020 16:08    2

Ответы
ushepbegjan ushepbegjan  09.01.2021 16:09

Вот код:

import random

# Сгенерируем список

lst = [random.randint(-30, 30) for _ in range(30)]

# 1

result = 1

for item in lst:

   if item < 0:

       result *= item

print(result)

# или

from functools import reduce

print(reduce(lambda x, y: x * y,

            filter(lambda item: item < 0, lst)))

# 2

max_count = 0

count = 0

for item in lst:

   if item < 0:

       count += 1

       if count > max_count:

           max_count = count

print(max_count)

# 3

result = 0

for item in lst:

   if item < 0:

       result += item

print(result)

# или

negative_nums = list(filter(lambda item: item < 0, lst))

print(sum(negative_nums) if negative_nums else "NO")

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика