Python. Задача 8-3
Дан список из целых чисел. Для каждого входящего в список числа вывести сколько раз оно встречается в списке. Если число встречается в списке несколько раз, то вывести его только один раз. Также вывести количество различных чисел в списке.
Список | Вывод |
[2, 5, 4, 5, 1, 5, 4, 4, 2, 5] | Число 2 , количество: 2 Число 5 , количество: 4 Число 4 , количество: 3 Число 1 , количество: 1 Различных чисел: 4 |
[43, 37, 43, 39, 43, 52, 43, 37, 39, 39, 52, 43, 51, 39] | Число 43 , количество: 5 Число 37 , количество: 2 Число 39 , количество: 4 Число 52 , количество: 2 Число 51 , количество: 1 Различных чисел: 5 |
Решение
a = [2, 5, 4, 5, 1, 5, 4, 4, 2, 5]
# Счетчик различных чисел
cnt = 0
# Перебираем в цикле все индексы элементов списка
for i in range(len(a)):
# Проверяем встречалось ли число среди уже перебранных элементов
for j in range(i):
if a[i] == a[j]:
break
else:
# Число еще не встречалось
cnt += 1
print('Число', a[i], ', количество:', end = ' ')
# Считаем количество чисел, равных текущему
n = 1
for j in range (i + 1, len(a)):
if a[i] == a[j]:
n += 1
print(n)
print('Различных чисел:', cnt)