Для начала представим наш IP-адрес в двоичной системе. Переведем каждый байт отдельно. Имеем следующий IP-адрес:
00010100.00010001.00000000.000<span>10000
</span>Число после косой черты - количество единиц в маске подсети. Таким образом, маска подсети будет иметь вид:
11111111.11111111.11111111.11111100
Теперь найдем сетевой адрес, выполнив поразрядно логическое умножение IP-адреса на маску подсети.
00010100.00010001.00000000.00010000 - IP-адрес
11111111.11111111.11111111.11111100 - маска подсети
00010100.00010001.00000000.000100хх - сетевой адрес
То есть минимальный адрес (заменяем "х" нулями) - 00010100.00010001.00000000.00010000 (20.17.0.16), а максимальный (заменяем "х" единицами) - 00010100.00010001.00000000.00010011 (20.17.0.19).
Ответом будут адреса из данного диапазона, то есть <span>20.16.0.17/30, 20.17.0.17/30, 20.17.0.18/30, 20.17.0.19/30.
</span>
1) человек - человек
2) учитель - класс
3) газета - человек
Var s:real; k:integer;
begin
s:=50;
k:=0;
while s<2000 do
begin
k:=k+1;
s:=s+0.1*s;
end;
writeln(k);
end.
Результат:
39