В терминологии сетей TCP/IP маской сети называют двоичное число, которое показывает, какая часть IP-адреса узла сети относится к адресу сети, а какая – к адресу узла в этой сети. Адрес сети получается в результате применения поразрядной конъюнкции к заданному адресу узла и его маске.
Сеть задана IP-адресом 112.160.0.0 и сетевой маской 255.240.0.0.
Сколько в этой сети IP-адресов, для которых количество единиц в двоичной записи IP-адреса кратно 5?
В ответе укажите только число.
Решение:
Решение на Python:
from ipaddress import *
c = 0
for ip in ip_network('112.160.0.0/255.240.0.0', 0):
ip2 = f'{ip:b}'
if ip2.count('1') % 5 == 0:
c += 1
print(c)
Ответ: 215766
Ответ:
215766