Ввод массива и и вывод при условии

k = [float(input()) for i in range(5)]
l = [float(input()) for j in range(5)]
if k < -2.5 and l < 3.5:
    print(k.count)
    print(k)
    print(l)
else: 
    print("0")введите сюда код

Ввести с клавиатуры два одномерных массивы K(5) и L(5). Обозначьте сумму и количество элементов, которые меньше значений: -2.5 для первого массива и 3.5 для второго.

Подскажите, пожалуйста, почему выдает ошибку?

could not convert string to float: '1 2 3 4 5'

Ответы (1 шт):

Автор решения: Zhihar

потому что требуется ввести 5 числе подряд через ENTER, а вы вводите через пробел

для ввода через пробел надо сделать так:

data = list(map(float, input().split()))

или так:

data = [float(text) for text in input().split()]

Если хотите ограничить ввод в 1 строку только 5 числами, то можете использовать срезы, например так:

data = list(map(float, input().split()[:5]))

Ну и самое главное по коду

if k < -2.5 and l < 3.5:

массивы в питоне так не проверяются!

вам надо пройти по всем элементам и для каждого элемента массива определять критерии

затем можно сформировать новый массив и вычислить сумму через sum или проходя по старому массиву накапливать сумму самостоятельно

→ Ссылка