Источник: Демо-2025
В терминологии сетей ТСР/IР маской сети называют двоичное число, которое показывает, какая часть IP-адреса узла сети относится к адресу сети, а какая – к адресу узла в этой сети. Адрес сети получается в результате применения поразрядной конъюнкции к заданному адресу узла и его маске. Сеть задана IР-адресом 172.16.168.0 и маской сети 255.255.248.0. Сколько в этой сети IР-адресов, для которых количество единиц в двоичной записи IР-адреса не кратно 5?
from ipaddress import *
c = 0 # Количество IP-адресов
net = ip_network(’172.16.168.0/255.255.248.0’) # Указываем сеть и маску
for i in net: # Перебираем все IP-адреса в этой сети
if bin(int(i))[2:].count(’1’) % 5 != 0: # Переводим в двоичную сс
c += 1
print(c)
Ответ: 1663