Информатика: ОГЭ и ЕГЭ

Тренировка ЕГЭ · задание 10 · наибольший адрес компьютера

Задание 10 ЕГЭ: наибольший адрес компьютера

Наибольший или наименьший адрес компьютера. Тема номера — ip-адрес и маска сети. Ниже — пример с ответом и решением; кнопкой под ним можно решить такую же задачу с другими числами, ответ проверится сразу.

Пример

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

Широковещательным адресом называется специализированный адрес, в котором на месте нулей в маске стоят единицы. Адрес сети и широковещательный адрес не могут быть назначены ни одному компьютеру в этой сети.

Сеть задана IP-адресом одного из входящих в неё узлов 147.40.122.168 и сетевой маской 255.248.0.0. Найдите наименьший в данной сети IP-адрес, который может быть назначен компьютеру.

В ответе укажите сумму числовых значений октетов найденного IP-адреса.

Например, если бы найденный адрес был равен 100.20.3.4, то в ответе следовало бы записать: 127.

Ответ188

Решение

Маска 255.248.0.0 содержит 13 единиц, на номер узла остаётся 19 бит. Октет маски 255 (первый) переписывает октет адреса без изменений; октеты маски 0 (третий, четвёртый) дают 0. Значащий октет маски — второй: 248 = 111110002, шаг сети 256 − 248 = 8. В адресе узла там 40 = 001010002; поразрядное И: 00101000 & 11111000 = 001010002 = 40 — ближайшее снизу к 40 число, кратное 8.

Адрес сети 147.40.0.0 компьютеру назначить нельзя, поэтому наименьший адрес компьютера на единицу больше: 147.40.0.1. В ответ: 188.

import ipaddress

net = ipaddress.ip_network("147.40.122.168/255.248.0.0", strict=False)
a = net.network_address + 1
print(a, sum(map(int, str(a).split("."))))

Решить такую задачу — новый вариант с проверкой

Задание 10 ЕГЭ: другие виды

Все задачи задания 10 вперемешку · разбор: как решать задание 10 · пробные варианты ЕГЭ