М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
turovyuriy
turovyuriy
07.09.2022 19:27 •  Информатика

О В городе были проведены N о В каждом о участники ставили "Да" или "Нет". Для каждого о результат считается положительным, если в любом из них количество положительных больше числа отрицательных. Напишите программу, которая выводит результат для каждого из о Вводные данные: в первой строке пишется число N, количество о Затем пишется N строк, на которых написаны числа через пробел. Числа являются 1 или 0, что означает "Да" или "Нет".

Выходные данные: для каждого из о на отдельной строке вывести "Positive", если количество 1 больше или равно количеству 0, и "Negative" в противном случае. Напишите данную программу используя функции.

Ввод:
5
1 0 0 1 1
0 1
1
0 1 0 1 0
1

Вывод должен быть такой:
Positive
Positive
Positive
Negative
Positive

👇
Ответ:
Nastia200704
Nastia200704
07.09.2022

n = int(input())

output = []

for i in range(n):

   x = [int(k) for k in input().split()]

   if (sum(filter(lambda j: j == 1, x))  >= len(x) / 2 ):

       output.append('Positive')

   else:

       output.append('Negative')

for i in output:

   print(i)

4,5(15 оценок)
Открыть все ответы
Ответ:
rona3
rona3
07.09.2022
Замечание. Так как количество вводимых чисел заранее не известно, то откроем бесконечный цикл со всегда верным условием True, но как только будет введено число 0, остановим цикл командой break.

Программа:

program z;
var k,s,x:integer;
begin
k:=0;              {начальное значение количества двузначных чисел}
s:=0;              {начальное значение суммы двузначных чисел}
while True do  {открываем бесконечный цикл}
begin
readln(x);        {вводим число х}
if x=0 then break;  {если введенное число равно 0, то остановить цикл}
if (x>9)and(x<100) then  {если число двузначное, т.е. от 10 до 99} 
    begin 
    k:=k+1;         {количество увеличиваем на 1}
    s:=s+x;         {увеличиваем предыдущее значение суммы на число х}
    end;
end;
if k=0 then writeln('NO')  {если двузначных чисел не было, то вывод NO}
   else writeln(s/k);          {иначе вывод ср.арифметического}
end.
4,7(46 оценок)
Ответ:
КатяVL
КатяVL
07.09.2022

#arr = [*map(int, input().split(' 0')[0].split())]  если числа вводятся в строчку , то раскомментируйте и используйте эту строку, а инициализацию массива arr и цикл while закомментируйте

arr = []

while 1:

   tmp = int(input())

   if tmp != 0:  # Читаем сколько угодно чисел пока не будет ноль

       arr.append(tmp)

   else:

       break

s = 0  # сумма двузначных чисел

k = 0  # количество двузначных чисел

for i in arr:

   if 10 <= i <= 99:  # итерируемся по циклу и если число двузначное

       s += i  # то прибавляем его к сумме

       k += 1  # счетчик двузначный чисел увеличиваем на один

print(s/k) if k > 0 else print('NO') #если количество двузначных > 0 то выводим среднее арифметическое s/k, если нет то выводим NO

4,8(65 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ