Предмет: Информатика, автор: kukushka2281337996

На вход программе подается последовательность чисел от 1 до 9, заканчивающаяся нулем. Всего будет введено не более 100000 чисел. Подсчитайте в этой последовательности количество единиц, количество двоек, количество троек и т.д. и выдайте результат. В выходных данных всегда должно быть 9 чисел. Решить в Python.

Ответы

Автор ответа: pinguinbird
2

Ответ:

a = [0]*9

while True:

 x = int(input('Введите цифру от 1 до 9: '))

 if x == 0: break

 if 1 <= x <= 9: a[x-1]+=1

for i in enumerate(a):

 print(f'{i[0]+1}: {i[1]}')


kukushka2281337996: входные данные
1 1 4 1 5 8 6 3 5 1 0
выходные данные
4 0 1 1 2 1 0 1 0
kukushka2281337996: Ваш код не проходит ни один тест
pinguinbird: потому что не было сказано, какой ожидается выходной формат. Программа написана правильно, просто тесты ожидают вывод в строку, а у меня в столбец, да ещё и с пояснениями. Сейчас перепишу, для тестов...
pinguinbird: вместо последней строчки попробуйте print(i[1], end=' ')
pinguinbird: Вот так ещё попробуйте, только вместо подчёркиваний просто пробелы поставьте:

a = [0]*9
x = list(map(int,input().split()))
for i in x:
__if i == 0: break
__a[i-1]+=1
for i in a: print(i, end=' ')
pinguinbird: Или даже лучше вот так:

a = [0]*9
x = list(map(int,input().split()))
for i in x:
__if i == 0: break
__a[i-1]+=1
print(*a)
Автор ответа: merkkaa
0

count = 0

m = [0]*9

while count <= 100000:

   a = int(input())

   if a == 0:

       break

   elif 1 <= a <= 9:

       m[a-1] += 1

   count += 1

   

print(*m)  #


kukushka2281337996: входные данные
1 1 4 1 5 8 6 3 5 1 0
выходные данные
4 0 1 1 2 1 0 1 0
kukushka2281337996: Ваш код не проходит ни один тест
merkkaa: я конечно не знаю какой вы тест делаете, но программа составлена верно. Все условия выполнены.
Похожие вопросы
Предмет: Математика, автор: Anastasia2905