ПОМОГИТЕ С КОДОМ НА PYTHON!
Задача1. Количество элементов между минимумом и максимумом
Написать программу, которая для 10 целочисленных элементов определяет, сколько положительных элементов располагается между максимальным и минимальным элементами.
Задача2. Сумма элементов правее последнего отрицательного
Написать программу, которая для n вещественных элементов определяет сумму элементов, расположенных правее последнего отрицательного элемента.
Задача3. Сжатие массива
Написать программу, которая «сжимает» целочисленный массив из 10 элементов, удаляя из него элементы, меньшие заданной величины.
Answers & Comments
1:
from random import randint
cnt = 0
values = [randint(-50, 50) for _ in range(10)]
min_index = values.index(min(values))
max_index = values.index(max(values))
if max_index < min_index: min_index, max_index = max_index, min_index
for i in range(min_index+1,max_index):
if values[i] > 0: cnt += 1
print(values)
print('Количество положительных значений между минимальным и максимальным значениями равно:', cnt)
2:
from random import randint
summ = 0
n = int(input('Введите количество значений в массиве: '))
values = [randint(-500, 500)/100 for _ in range(n)]
for value in values[::-1]:
if value < 0: break
summ += value
print(values)
print('Сумма значений правее последнего отрицательного значения равна:', summ)
3.
from random import randint
values = [randint(-50, 50) for _ in range(10)]
print(values)
n = int(input('Введите значение, элементы меньше которого будут удалены: '))
for i in range(len(values)-1, 0, -1):
if values[i] < n: values.pop(i)
print(values)
1)
mas = [1, 2, -2, 3, -5, 12, 5] # Можете указать свои числа
start = mas.index(max(mas))
stop = max.index(min(mas))
if start > stop:
start, stop = stop, start
print(len(list(filter(lambda x: x > 0, mas[start+1:stop]))))
2)
mas = [1, 2, -2, 3, -5, 12, 5] # Можете указать свои числа
print(sum(mas[-mas[::-1].index(list(filter(lambda x: x < 0, mas))[-1]):]))
3)
mas = [1, 2, -2, 3, -5, 12, 5] # Можете указать свои числа
minimum = 1 # Все значения меньше указанного будут удалены
mas = list(filter(lamda x: x >= minimum, mas))
print(*mas) # Выводи получившийся массив
Да по первой задаче я признал свою ошибку выше по тексту и поправил уже код, спасибо.