Задание №4583. В терминологии сетей TCP/IP маской сети называют двоичное число, которое показывает, какая часть IP-адреса узла сети относится к адресу сети, а какая – к адресу узла в этой сети. Адрес сети получается в результате применения поразрядной конъюнкции к заданному адресу узла и маске сети. Сеть задана IP-адресом 122.159.136.144 и маской сети 255.255.255.248. Сколько в этой сети IP-адресов, для которых количество единиц в двоичной записи IP-адреса не кратно 4? В ответе укажите только число.

Задание №4583.
Использование маски подсети. ЕГЭ по информатике

В терминологии сетей TCP/IP маской сети называют двоичное число, которое показывает, какая часть IP-адреса узла сети относится к адресу сети, а какая – к адресу узла в этой сети. Адрес сети получается в результате применения поразрядной конъюнкции к заданному адресу узла и маске сети.

Сеть задана IP-адресом 122.159.136.144 и маской сети 255.255.255.248.

Сколько в этой сети IP-адресов, для которых количество единиц в двоичной записи IP-адреса не кратно 4? В ответе укажите только число.

Пояснение:
Решим задание, используя функцию ip_network из библиотеки ipaddress (о данной библиотеке подробнее читайте здесь) в языке программирования Python.

from ipaddress import ip_network

net = ip_network('122.159.136.144/255.255.255.248')
k = 0
for ip in net:
    if bin(int(ip)).count('1') % 4 != 0:
        k += 1
print(k)

Исполнив алгоритм, получаем, что в этой сети 5 IP-адресов, для которых количество единиц в двоичной записи IP-адреса не кратно 4.

Показать ответ

Источник: ФИПИ. Открытый банк тестовых заданий
Сообщить об ошибке


Тест с похожими заданиями