Работа не моя: Program raketa; uses graph; var gd,gm:integer; begin detectgraph (gd,gm); initgraph (gd,gm,'C:\tp7 '); line (300,60,240,120); line (240,120,240,360); line (360,120,360,360); line (240,360,360,360); line (300,60,360,120); line (240,210,210,240); line (210,240,240,240); line (360,210,390,240); line (390,240,360,240); circle (300,150,15); circle (300,210,15); circle (300,270,15); Bar (270,300,240,360); line (240,360,180,450); line (180,450,420,450); line (420,450,360,360); line (330,450,330,370); line (300,450,300,365); line (270,450,270,370); line (240,330,180,330); line (180,330,90,450); line (172,330,80,445); line (300,60,300,30); readln end.
Представим 155 в двоичном виде: 10011011 Представим 145 в двоичном виде: 10010001 Маска в IPv4 - последовательность из 32-х 1 и 0 такая, что сначала идет n единиц, затем 32-n нулей. Число единиц равно наибольшему количеству совпавших бит у адресов слева направо. Видим, что первые два блока полностью совпадают, так как их десятичные записи совпадают. Различия уже начинаются в третьем блоке. В разложении чисел видно, что совпадают лишь первые 4 бита, дальше уже идет первое несовпадение. поэтому маска для этих адресов выглядит так: 11111111.11111111.11110000.00000000 Переводим 11110000 в десятичный вид и получаем 240.
Program raketa; uses graph; var gd,gm:integer; begin detectgraph (gd,gm); initgraph (gd,gm,'C:\tp7 '); line (300,60,240,120); line (240,120,240,360); line (360,120,360,360); line (240,360,360,360); line (300,60,360,120); line (240,210,210,240); line (210,240,240,240); line (360,210,390,240); line (390,240,360,240); circle (300,150,15); circle (300,210,15); circle (300,270,15); Bar (270,300,240,360); line (240,360,180,450); line (180,450,420,450); line (420,450,360,360); line (330,450,330,370); line (300,450,300,365); line (270,450,270,370); line (240,330,180,330); line (180,330,90,450); line (172,330,80,445); line (300,60,300,30); readln end.
Представим 145 в двоичном виде: 10010001
Маска в IPv4 - последовательность из 32-х 1 и 0 такая, что сначала идет n единиц, затем 32-n нулей. Число единиц равно наибольшему количеству совпавших бит у адресов слева направо. Видим, что первые два блока полностью совпадают, так как их десятичные записи совпадают. Различия уже начинаются в третьем блоке. В разложении чисел видно, что совпадают лишь первые 4 бита, дальше уже идет первое несовпадение. поэтому маска для этих адресов выглядит так: 11111111.11111111.11110000.00000000
Переводим 11110000 в десятичный вид и получаем 240.