Как найти количество положительных элементов массива питон

0 / 0 / 0

Регистрация: 19.09.2018

Сообщений: 29

1

Вычислить сумму и количество положительных элементов массива

15.10.2018, 18:54. Показов 29750. Ответов 1


Студворк — интернет-сервис помощи студентам

Вычислить сумму и количество положительных элементов массива X(n), где 1<=n<=100
Буду очень признателен



0



Programming

Эксперт

94731 / 64177 / 26122

Регистрация: 12.04.2006

Сообщений: 116,782

15.10.2018, 18:54

Ответы с готовыми решениями:

Найти сумму и количество положительных элементов массива, предшествующих первому нулевому элементу (C++ -> Python)
int A = {1,2,3,-4,0,6,7,8,9,10};
int sum = 0, count = 0;
for (int i = 0; i &lt; 10; ++i)

Найти сумму и количество положительных элементов, расположенных между минимальным и максимальным элементами массива
/*
Дан массив А(30). Найти сумму и количество положительных элементов,
расположенных между…

Определить количество отрицательных, произведение положительных и количество нулевых элементов массива
Ввести массив, состоящий из 15 элементов целого типа. Определить количество отрицательных,…

В массиве вычислить сумму четных положительных элементов
3. В массиве, содержащем положительные и отрицательные целые числа, вычислить сумму четных…

1

ProgSad

8 / 5 / 7

Регистрация: 15.02.2018

Сообщений: 36

16.10.2018, 14:34

2

Лучший ответ Сообщение было отмечено Kolyanus12 как решение

Решение

Python
1
2
3
4
5
6
7
8
9
X = [1,32,6,-8,-6,8,9] #не полностью понял какой тебе массив нужен, так что поправишь
count = 0
Sum = 0
for i in X:
    if i > 0:
        count += 1
        Sum += i
print('Сумма: ', Sum)
print("Количество: ", count)



1



IT_Exp

Эксперт

87844 / 49110 / 22898

Регистрация: 17.06.2006

Сообщений: 92,604

16.10.2018, 14:34

2

Given a list of numbers, write a Python program to count positive and negative numbers in a List. 

Example:

Input: list1 = [2, -7, 5, -64, -14]
Output: pos = 2, neg = 3

Input: list2 = [-12, 14, 95, 3]
Output: pos = 3, neg = 1

Example #1: Count positive and negative numbers from the given list using for loop Iterate each element in the list using for loop and check if num >= 0, the condition to check positive numbers. If the condition satisfies, then increase pos_count else increase neg_count. 

Python3

list1 = [10, -21, 4, -45, 66, -93, 1]

pos_count, neg_count = 0, 0

for num in list1:

    if num >= 0:

        pos_count += 1

    else:

        neg_count += 1

print("Positive numbers in the list: ", pos_count)

print("Negative numbers in the list: ", neg_count)

Output

Positive numbers in the list:  4
Negative numbers in the list:  3

Time Complexity: O(N), Here N is the number of items in the list.
Auxiliary Space: O(1), As constant extra space is used.

Example #2: Using while loop 

Python3

list1 = [-10, -21, -4, -45, -66, 93, 11]

pos_count, neg_count = 0, 0

num = 0

while(num < len(list1)):

    if list1[num] >= 0:

        pos_count += 1

    else:

        neg_count += 1

    num += 1

print("Positive numbers in the list: ", pos_count)

print("Negative numbers in the list: ", neg_count)

Output

Positive numbers in the list:  2
Negative numbers in the list:  5

Time Complexity: O(N), Here N is the number of items in the list.
Auxiliary Space: O(1), As constant extra space is used.

Example #3: Using Python Lambda Expressions 

Python3

list1 = [10, -21, -4, 45, 66, 93, -11]

neg_count = len(list(filter(lambda x: (x < 0), list1)))

pos_count = len(list(filter(lambda x: (x >= 0), list1)))

print("Positive numbers in the list: ", pos_count)

print("Negative numbers in the list: ", neg_count)

Output

Positive numbers in the list:  4
Negative numbers in the list:  3

Time Complexity: O(N), Here N is the number of items in the list.
Auxiliary Space: O(1), As constant extra space is used.

Example #4: Using List Comprehension 

Python3

list1 = [-10, -21, -4, -45, -66, -93, 11]

only_pos = [num for num in list1 if num >= 1]

pos_count = len(only_pos)

print("Positive numbers in the list: ", pos_count)

print("Negative numbers in the list: ", len(list1) - pos_count)

Output

Positive numbers in the list:  1
Negative numbers in the list:  6

Time Complexity: O(N), Here N is the number of items in the list.
Auxiliary Space: O(1), As constant extra space is used.

Method: Using enumerate function 

Python3

l=[12, -7, 5, 64, -14];c=0

x=[a for j,a in enumerate(l) if a>=0]

print("Length of Positive numbers is:", len(x))

print("Length of Negative numbers is:", len(l)-len(x))

Output

Length of Positive numbers is: 3
Length of Negative numbers is: 2

Time Complexity: O(N), Here N is the number of items in the list.
Auxiliary Space: O(1), As constant extra space is used.

Method : Using startswith() method

Python3

list1 = [10, -21, 4, -45, 66, -93, 1,0]

pos_count, neg_count = 0, 0

list2=list(map(str,list1))

for num in list2:

    if num.startswith("-"):

        neg_count += 1

    elif(num!="0"):

        if(not num.startswith("-")):

            pos_count+=1

print("Positive numbers in the list: ", pos_count)

print("Negative numbers in the list: ", neg_count)

Output

Positive numbers in the list:  4
Negative numbers in the list:  3

Time Complexity: O(N), Here N is the number of items in the list.
Auxiliary Space: O(1), As constant extra space is used.

Method: Using sum() method

Python3

l = [12, -7, 5, 64, -14];

x = sum(1 for i in l if i >= 0 )

print("Length of Positive numbers is:", x)

print("Length of Negative numbers is:", len(l)-x)

Output

Length of Positive numbers is: 3
Length of Negative numbers is: 2

Time Complexity: O(N), Here N is the number of items in the list.
Auxiliary Space: O(1), As constant extra space is used.

Method : Using for loop

STEP BY STEP APPROACH :

  1. Initialize a list of numbers called list1 with integer values.
  2. Initialize two variables pos_count and neg_count to 0.
  3. Convert all the numbers in list1 to strings using the map() function and store them in a new list called list2.
  4. Iterate through each number num in list2 using a for loop.
  5. For each number num, check the first character of the string representation of the number using num[0]:
    a. If the first character is “-“, increment the neg_count variable as the number is negative.
    b. Else, check if the number is not equal to “0” using num!=”0″:
    i. If the number is positive, increment the pos_count variable.
  6. Print the final values of pos_count and neg_count using the print() function.

Python3

list1 = [10, -21, 4, -45, 66, -93, 1,0]

pos_count, neg_count = 0, 0

list2=list(map(str,list1))

for num in list2:

    if num[0]=="-":

        neg_count += 1

    elif(num!="0"):

        if(not num[0]=="-"):

            pos_count+=1

print("Positive numbers in the list: ", pos_count)

print("Negative numbers in the list: ", neg_count)

Output

Positive numbers in the list:  4
Negative numbers in the list:  3

Time Complexity: O(N)
Auxiliary Space: O(N)

Method: Using the collections module and the Counter() function:

  • Importing the Counter class from the collections module.
  • Using a list comprehension to get a list of boolean values to check whether each number is non-negative or not, based on whether it is greater than or equal to zero.
  • Passing the list of booleans to the Counter to get a dictionary mapping for counts.
  • Storing the count of positive and negative no.
  • Printing the output.

Python3

from collections import Counter

list1 = [10, -21, 4, -45, 66, -93, 1,0]

counts = Counter(num > 0 for num in list1)

pos_count = counts[True]

neg_count = counts[False] - (0 in list1)

print("Positive numbers in the list: ", pos_count)

print("Negative numbers in the list: ", neg_count)

Output

Positive numbers in the list:  4
Negative numbers in the list:  3

Time Complexity: O(N) as we are traversing the whole list which takes O(N) time complexity.
Auxiliary Space: O(1) as no extra memory is used.

Last Updated :
10 Apr, 2023

Like Article

Save Article

Дан массив действительных чисел из N членов подсчитать сколько в нем отрицательных, положительных и нулевых элементов

задан 27 мар 2020 в 10:50

ToffIx's user avatar

1

Вот так можно:

my_list = [1, 2, 3, 4, 5, 0, 0, 0, 0, -1, -2, -3, -4, -5]

positive = 0
negative = 0
zero = 0

for num in my_list:
    if num > 0:
        positive += 1
        continue
    if num < 0:
        negative += 1
        continue
    zero += 1

print('Положительных: ', positive)
print('Отрицательных: ', negative)
print('Нулей: ', zero)

ответ дан 27 мар 2020 в 11:47

n1tr0xs's user avatar

n1tr0xsn1tr0xs

11.2k2 золотых знака9 серебряных знаков28 бронзовых знаков

massive = [1,2,3,4,5,0,5,4,0,-5,3,2,-1] #вместо massive подставляете свой массив 

pos = []
neg = []
zero = []

for num in massive:
    if num > 0:
        pos.append(num)
    elif num == 0:
        zero.append(num)
    else:
        neg.append(num)

print("Количество положительных: {}".format(len(pos)))
print("Количество отрицательных: {}".format(len(neg)))
print("Количество нулей: {}".format(len(zero)))

ответ дан 27 мар 2020 в 11:14

Alioshca Z's user avatar

Alioshca ZAlioshca Z

1,3731 золотой знак4 серебряных знака10 бронзовых знаков

5

Python задача. Найдите количество положительных, отрицательных и равных нулю элементов массива

Python задачи

Создайте массив из 20 случайных целых чисел от -10 до 10, запишите их в ячейки массива. Подсчитайте, сколько из них положительных, отрицательных и нулевых. Отобразите элементы массива и значения подсчитанных величин. Разбор задачи на python

Алгоритм решения задачи на python

1) Назначить три переменные под счётчики и присвоить им значение равное 0

2) Написать цикл for, который создаёт случайные числа и записывает их в массив, далее сравнивает и записывает +1 в соответствующий счётчик

3) Вывод на экран значения счётчиков и массива

Код для нахождения количества положительных, отрицательных и равных нулю элементов массива

Код для нахождения количества положительных, отрицательных и равных нулю элементов массива

from random import random
mins = 0
zero = 0
plus = 0
a = []
for i in range(20):
n = int(random() * 20) — 10
a.append(n)
print(n, end=’ ‘)
if n > 0:
plus += 1
elif n < 0:
mins += 1
else:
zero += 1

print(«nПоложительных чисел: «, plus)
print(«Отрицательных чисел: «, mins)
print(«Чисел равных нулю: «, zero)

Python задачи
Все задачи на python

Репост статьи

22 декабря 2022 г.

Комментарии могут оставлять только зарегестрированные пользователи!



Комментарии

Ваш комментарий будет первым !

Напиши программу, которая принимает натуральное число n, а затем n чисел от 1 до 100. выведи максимальное из них, которое заканчивается на 1. если такого числа нет, напечатай «нет».

Pascal задача.Даны натуральные числа n, m. Получите сумму m последних цифр числа n.

Уведомления

  • Начало
  • » Центр помощи
  • » Подсчитать количество положительных элементов в массиве и сделать так что бы все элементы массива поменяли знак

#1 Дек. 18, 2019 16:57:56

Подсчитать количество положительных элементов в массиве и сделать так что бы все элементы массива поменяли знак

Задан двумерный массив А из 8-и строк и 3-х столбцов. Составить программу, которая подсчитывает общее число неотрицательных элементов в массиве. Затем организовать формирование нового массива В, в котором значения элементов исходного массива заменить на противоположные по знаку.

k = 9
n = 4
a =
print(“Введите массив по строкам через пробелы. В конце строки нажмите Enter.”)
for i in range(n-1):
print(‘Введите в’ ,i, ‘-ую строку 8 числа через пробел и нажмите Enter’)
row = input().split()
for i in range(k-1):
row = int(row)
a.append(row)
for row in a:
for elem in row:
print(elem, end=’ ‘)
print()
s = 0
pr=1
for i in range(n-1):
for j in range(k-1):
s += a
if a<=-1:
pr=pr*a
print(“Сумма всех элементов массива =”, s, end=’ ‘)
print(“Произведение отрицательных элементов массива = ”, pr)
pr=1

Отредактировано GasGasi (Дек. 18, 2019 18:51:27)

Офлайн

  • Пожаловаться

#2 Дек. 18, 2019 17:26:12

Подсчитать количество положительных элементов в массиве и сделать так что бы все элементы массива поменяли знак

 >>> s = [1,2,-5,6,-10]
>>> len([ x for x in s if x >0 ])
3
>>> [ x*-1 for x in s ]
[-1, -2, 5, -6, 10]

С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

  • Пожаловаться

#3 Дек. 18, 2019 17:36:37

Подсчитать количество положительных элементов в массиве и сделать так что бы все элементы массива поменяли знак

Rodegast

Спасибо, но не могли бы вы сказать как это правильно вставить в мой код?

Офлайн

  • Пожаловаться

#4 Дек. 19, 2019 08:46:30

Подсчитать количество положительных элементов в массиве и сделать так что бы все элементы массива поменяли знак

GasGasi
Спасибо, но не могли бы вы сказать как это правильно вставить в мой код?

https://younglinux.info/python/feature/generators

1. пжлст, форматируйте код, это в панели создания сообщений, выделите код и нажмите что то вроде
2. чтобы вставить изображение залейте его куда нибудь (например), нажмите и вставьте ссылку на его url

есчщо

Офлайн

  • Пожаловаться

  • Начало
  • » Центр помощи
  • » Подсчитать количество положительных элементов в массиве и сделать так что бы все элементы массива поменяли знак

Понравилась статья? Поделить с друзьями:
  • Косоглазие у собак как исправить
  • Как найти векторы по координатам онлайн
  • Как найти площадь фигуры ограниченной гиперболой
  • Как найти место по координатам на айфоне
  • Как найти обои для iphone