В терминологии сетей TCP/IP маской сети называется двоичное число, определяющее, какая часть IP-адреса узла сети относится к адресу сети,
а какая – к адресу самого узла в этой сети. При этом в маске сначала
(в старших разрядах) стоят единицы, а затем с некоторого места – нули.
Обычно маска записывается по тем же правилам, что и IP-адрес – в виде
четырёх байтов, причём каждый байт записывается в виде десятичного
числа. Адрес сети получается в результате применения поразрядной
конъюнкции к заданному IP-адресу узла и маске.
Например, если IP-адрес узла равен 231.32.255.131, а маска равна
255.255.240.0, то адрес сети равен 231.32.240.0.
Узлы с IP-адресами 98.162.71.150 и 98.162.71.140 находятся в одной сети.
Чему равно наибольшее количество возможных единиц в маске этой сети?
n = 15;
var
a: array[1..n] of integer;
i: integer;
begin
Randomize;
Writeln('Элементы массива');
for i := 1 to n do
begin
a[i] := Random(61) - 30;
Write(a[i]:4);
if a[i]>0 then a[i]:=2*a[i]
else
if a[i]<0 then a[i]:=7
end;
Writeln;
Writeln('После преобразования');
for i := 1 to n do Write(a[i]:4);
Writeln
end.
Тестовое решение:
Элементы массива
-20 15 16 20 0 16 -15 -1 -2 21 -8 -10 4 -24 1
После преобразования
7 30 32 40 0 32 7 7 7 42 7 7 8 7 2