Реализовать функцию, которая находит все числа в списке, которые имеют четное количество делителей.

Числа с четным количеством делителей

Функция even_divisors_count_numbers принимает список чисел и возвращает список чисел с четным количеством делителей.

def count_divisors(n):
    """ Подсчет количества делителей числа. """
    count = 0
    for i in range(1, int(n**0.5) + 1):
        if n % i == 0:
            count += 1
            if i != n // i:
                count += 1
    return count

def even_divisors_count_numbers(numbers):
    """ Возвращает числа с четным количеством делителей. """
    return [num for num in numbers if count_divisors(num) % 2 == 0]

# Пример списка и вызов функции:
numbers_list = [10, 12, 15, 16, 23, 24, 36]
result = even_divisors_count_numbers(numbers_list)
print(result) # Вывод результата

Результат выполнения кода: [10, 12, 15, 24, 36]

Функция count_divisors вычисляет количество делителей для каждого числа. Если это количество четное, число добавляется в результат.

Категория: Практические упражнения Python | Добавил: Admin (03.05.2024)
Просмотров: 35 | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *: