Информатика. ЕГЭ
Задания для подготовки
Задачи разных лет из реальных экзаменов, демо-вариантов, сборников задач и других источников
Задание 13. Информатика. ЕГЭ. Поляков-9023
- Просмотры: 375
- Изменено: 13 апреля 2026
(А. Сражаев) В терминологии сетей TCP/IP маской сети называют двоичное число, которое показывает, какая часть IP-адреса узла сети относится к адресу сети, а какая - к адресу узла в этой сети. Адрес сети получается в результате применения поразрядной конъюнкции к заданному адресу узла маске сети. Сеть задана IP-адресом одного из входящих в неё узлов \(146.180.173.153\) и сетевой маской \(255.255.248.0.\) Определите наибольший IP-адрес данной сети, который может быть присвоен компьютеру, при условии, что его двоичная запись содержит нулей больше, чем единиц, а шестнадцатеричная запись этого же адреса оканчивается на букву (от \(A\) до \(F).\) В ответе запишите найденный IP-адрес без разделителей. Например, если бы найденный адрес был равен \(111.22.3.44,\) то в ответе следовало бы записать \(11122344.\)
Решение:
Python
ip = (146 << 24) + (180 << 16) + (173 << 8) + 153
mask = (255 << 24) + (255 << 16) + (248 << 8)
net = ip & mask
p = bin(mask)[2:].count('0')
for x in range(2**p - 2, 0, -1):
ip = net + x
bn = bin(ip)[2:]
if bn.count('0') > bn.count('1') and ip & 15 > 9:
print(f'{(ip >> 24) & 255}{(ip >> 16) & 255}{(ip >> 8) & 255}{ip & 255}')
break
Ответ: \(14618017512\)
Обсуждение задания
Здесь пока нет ни одного комментария. Будьте первым!


