from random import randint
lst = []
# список з 10-тьма випадковими числами вiд -10 до 10
for i in range(10):
lst.append(randint(-10, 10))
doubled_lst = [a*2 for a in lst] # подвоюэм список та записуэм в змiнну doubled_lst
more_then_zero_in_doubled_lst = [a for a in doubled_lst if a > 0]
less_then_zero_in_doubled_lst = [a for a in doubled_lst if a < 0]
more_then_zero_in_simple_lst = [a for a in lst if a > 0]
less_then_zero_in_simple_lst = [a for a in lst if a < 0]
# виводим сумму/кiлькiсть/середнє арифметичне для НЕ подвоэного списку бiльших за 0
print("Сумма/кiлькiсть/середнє арифметичне для НЕ подвоэного, бiльшого за 0 ")
print(sum(more_then_zero_in_simple_lst))
print(len(more_then_zero_in_simple_lst))
print(sum(more_then_zero_in_simple_lst) / len(more_then_zero_in_simple_lst))
# виводим сумму/кiлькiсть/середнє арифметичне для НЕ подвоэного списку менших за 0
print("Сумма/кiлькiсть/середнє арифметичне для НЕ подвоэного, меншого за 0 ")
print(sum(less_then_zero_in_simple_lst))
print(len(less_then_zero_in_simple_lst))
print(sum(less_then_zero_in_simple_lst) / len(less_then_zero_in_simple_lst))
# виводим сумму/кiлькiсть/середнє арифметичне для подвоэного списку бiльших за 0
print("Сумма/кiлькiсть/середнє арифметичне для подвоэного, бiльшого за 0 ")
print(sum(more_then_zero_in_doubled_lst))
print(len(more_then_zero_in_doubled_lst))
print(sum(more_then_zero_in_doubled_lst) / len(more_then_zero_in_doubled_lst))
# виводим сумму/кiлькiсть/середнє арифметичне для подвоэного списку менших за 0
print("Сумма/кiлькiсть/середнє арифметичне для подвоэного, меншого за 0 ")
print(sum(less_then_zero_in_doubled_lst))
print(len(less_then_zero_in_doubled_lst))
print(sum(less_then_zero_in_doubled_lst) / len(less_then_zero_in_doubled_lst))
m & 1 - это битовая конъюнкция. Результатом будет 1, если m нечетное, и 0, если m - четное (то есть, содержит или не содержит соответствующий разряд)
Выражение вида T ? X : Y, где T - логическое высказывание, принимает значение X, если T истинно, и Y, если T ложно.
Соответственно, i = (m & 1) == 1 ? m : m + 1 означает, что
если m нечетное, то i = m
если четное, i = m+1 (то есть, первое нечетное число после m)
i += 2 означает, что цикл идет с шагом, соответственно, рассматриваются только нечетные числа.
from random import randint
lst = []
# список з 10-тьма випадковими числами вiд -10 до 10
for i in range(10):
lst.append(randint(-10, 10))
doubled_lst = [a*2 for a in lst] # подвоюэм список та записуэм в змiнну doubled_lst
more_then_zero_in_doubled_lst = [a for a in doubled_lst if a > 0]
less_then_zero_in_doubled_lst = [a for a in doubled_lst if a < 0]
more_then_zero_in_simple_lst = [a for a in lst if a > 0]
less_then_zero_in_simple_lst = [a for a in lst if a < 0]
# виводим сумму/кiлькiсть/середнє арифметичне для НЕ подвоэного списку бiльших за 0
print("Сумма/кiлькiсть/середнє арифметичне для НЕ подвоэного, бiльшого за 0 ")
print(sum(more_then_zero_in_simple_lst))
print(len(more_then_zero_in_simple_lst))
print(sum(more_then_zero_in_simple_lst) / len(more_then_zero_in_simple_lst))
# виводим сумму/кiлькiсть/середнє арифметичне для НЕ подвоэного списку менших за 0
print("Сумма/кiлькiсть/середнє арифметичне для НЕ подвоэного, меншого за 0 ")
print(sum(less_then_zero_in_simple_lst))
print(len(less_then_zero_in_simple_lst))
print(sum(less_then_zero_in_simple_lst) / len(less_then_zero_in_simple_lst))
# виводим сумму/кiлькiсть/середнє арифметичне для подвоэного списку бiльших за 0
print("Сумма/кiлькiсть/середнє арифметичне для подвоэного, бiльшого за 0 ")
print(sum(more_then_zero_in_doubled_lst))
print(len(more_then_zero_in_doubled_lst))
print(sum(more_then_zero_in_doubled_lst) / len(more_then_zero_in_doubled_lst))
# виводим сумму/кiлькiсть/середнє арифметичне для подвоэного списку менших за 0
print("Сумма/кiлькiсть/середнє арифметичне для подвоэного, меншого за 0 ")
print(sum(less_then_zero_in_doubled_lst))
print(len(less_then_zero_in_doubled_lst))
print(sum(less_then_zero_in_doubled_lst) / len(less_then_zero_in_doubled_lst))