Условие
Дано N чисел: сначала вводится число N, затем вводится ровно N целых чисел. Подсчитайте количество нулей среди введенных чисел и выведите это количество. Вам нужно подсчитать количество чисел, равных нулю, а не количество цифр.
Решение
num_zeroes = 0 for i in range(int(input())): if int(input()) == 0: num_zeroes += 1 print(num_zeroes)
Добавить комментарий Отменить ответ
ЕГЭ на соточку для чайников
Прошу прощения, что так долго пропадал. Питошка вернулся, да еще и с группой в вконтакте, подписывайтесь. Помимо этого, на питошке откроется новая рубрика, в которой будут четкие объяснения всех заданий ЕГЭ и ОГЭ по информатике, внимательно прочитав которые, я уверен, вы улучшите свои баллы на экзамене
С клавиатуры вводится число n а затем n целых чисел определить сколько было введено положительных
С клавиатуры вводятся N чисел. Составьте программу, которая определяет количество отрицательных, количество положительных и количество нулей среди введенных чисел. Значение N вводится с клавиатуры.
Пользователь
Регистрация: 25.04.2010
Сообщений: 10
Что может быть непонятного в такой простейшей программе?
Задаешь массив, записываешь туда элементы с клавиатуры.
Затем задаешь ещё один массив(или 3 переменные), забиваешь его(их) количеством элементов с разными знаками. Количество элементов находишь простейшим циклом по всему массиву
Форумчанин
Регистрация: 02.07.2010
Сообщений: 167
Поставь мне + если не сложно
uses CRT var n,a,pol,otr,nol, i:integer; begin clrscr; read(n); for i:=1 to n do begin read(a); if a=0 then nol:=nol+1; if a0 then pol:=pol+1; end; clrscr; writeln('отрицательные ', otr); writeln('положительные ', pol); writeln('нули ', nol); end.
Если я тебе помог, помоги и ты мне +ом с комментарием
Регистрация: 27.12.2010
Сообщений: 5
подходит только цикл
сделать нужно с циклом for while и repeat
Форумчанин
Регистрация: 02.07.2010
Сообщений: 167
с циклом while
uses CRT var n,a,pol,otr,nol, i:integer; begin clrscr; read(n); i:=0; while i0 then pol:=pol+1; inc(i); end; clrscr; writeln('отрицательные ', otr); writeln('положительные ', pol); writeln('нули ', nol); end.
uses CRT var n,a,pol,otr,nol, i:integer; begin clrscr; read(n); i:=0; repeat begin inc(i); read(a); if a=0 then nol:=nol+1; if a0 then pol:=pol+1; end; until i>n; clrscr; writeln('отрицательные ', otr); writeln('положительные ', pol); writeln('нули ', nol); end.
Если я тебе помог, помоги и ты мне +ом с комментарием
Подсчитайте количество нулей среди введенных чисел и выведите это количество
Есть задача, никак не могу понять, как принимать различное количество строк во входных данных:
Дано N чисел: сначала вводится число N, затем вводится ровно N целых чисел. Подсчитайте количество нулей среди введенных чисел и выведите это количество. Вам нужно подсчитать количество чисел, равных нулю, а не количество цифр.
Не столь нужно решение как подсчитать числа, сколько помощь с входными данными.
Лучшие ответы ( 1 )
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:
Подсчитайте количество нулей среди введенных чисел и выведите это количество
Дано N чисел: сначала вводится число N, затем вводится ровно N целых чисел положительных чисел.
Подсчитайте количество нулей среди введенных чисел и выведите это количество
Дано N чисел: сначала вводится число N, затем вводится ровно N целых чисел положительных чисел.

Составте программу которая определяет количество отрицательных, количество положительных и количество нулей среди введённых чисел
С клавиатуры вводятся N чисел.Составте программу которая определяет количество отрицательных.

Составьте программу, которая определяет количество отрицательных, количество положительных и количество нулей среди введенных чисел
С клавиатуры вводятся N чисел. Составьте программу, которая определяет количество отрицательных.
![]()
5891 / 3349 / 1034
Регистрация: 03.11.2009
Сообщений: 9,977

Сообщение было отмечено kuzy как решение
Решение
вчера было похожее:
print(len([z for z in [int(input('Число: ')) for i in range(int(input('Кол-во чисел: ')))] if z == 0]))
print(len([z for z in (int(input('Число: ')) for i in range(int(input('Кол-во чисел: ')))) if z == 0]))
Различное кол-во строк принимать можно циклами:
1 2 3 4 5 6 7 8
repeats = int(input('Кол-во чисел: ')) count = 0 for i in range(repeats): num = int(input('Число: ')) count += (lambda x: 1 if x == 0 else 0)(num) # if num == 0: count += 1 print(count)
![]()
2794 / 2037 / 682
Регистрация: 02.03.2015
Сообщений: 6,509
Для меня вообще непонятно, почему надо ограничивать ввод N строками, числами и т.д (постоянно сталкиваюсь с такими примерами в питоновых задачах)? Составители задач не знают как ограничить ввод?
Ввод строкой:
num=input().split()
1 2 3 4 5 6
num=[] >>> while len(num)==0 or num[-1] != '': . num.append(input()) . else: . num.pop() .
И вот красиво
Сообщение от Vigi 
1 2 3 4 5 6 7
l = [] while True: try: enter = int(input('enter a number or Enter to finish: ')) l.append(enter) except: break
Решение задачи на python
Подсчитайте, сколько среди данных N чисел нулей, положительных чисел, отрицательных чисел.
Входные данные
Вводится число N, а затем N целых чисел.
Выходные данные
Необходимо вывести сначала число нулей, затем число положительных и отрицательных чисел.
Пример: входные данные 5 28 0 0 0 0, выходные данные 4 1 0
Лучший ответ
N = int(input())
zero = 0
plus = 0
minus = 0
for i in range(N):
__num = int(input())
__if num == 0:
___zero += 1
__elif num > 0:
___plus += 1
__else:
___minus += 1
print(zero, plus, minus)
Остальные ответы
l = [int(input()) for i in range(int(input()))]
n = list(filter(lambda x: x == 0, l))
p = list(filter(lambda x: x > 0, l))
print(len(n))
print(len(p))
print(len(l) — (len(n) + len(p)))
Если все числа вводятся второй строкой
t, _ = , input()
for i in map(int, input().split()): t[(i > 0) — (i < 0)] += 1
print(t[0], t[1], t[-1])
t =
for i in [int(input()) for _ in range(int(input()))]: t[(i > 0) — (i < 0)] += 1
print(t[0], t[1], t[-1])