Var a,b,c,d:integer; begin readln(a); c:=a div 100 mod 10; d:=a div 10 mod 10; b:=(a div 1000)*1000+d*100+c*10+(a mod 10); writeln(b); end. --- короткий вариант: var a,b:integer; begin readln(a); b:= (a div 1000)*1000+(a div 10 mod 10)*100+(a div 100 mod 10)*10+(a mod 10); writeln(b); end.
Переводим 112 и 64 в 2СС . 112 =1110000 64 =1000000 так как байт - это 8 бит ,следовательно в числе должно быть восемь знаков , тогда добавляем перед числами по незначащему нулю , тогда 112 = 01110000 64 = 01000000 адрес сети получается , когда мы применяем поразрядную конъюнкцию (между маской и ip адресом) 01110000 <-- маска
01000000 мы видим в адресе сети единицу и над ней в ip адресе тоже единица , значит на этом месте в маске может быть только 1 . Так как в маске у нас идут (СТРОГО) сначала единицы ,потом нули, тогда маска будет равна 11000000 , что в переводе в 10 -ную СС =192 ответ : 192
begin
readln(a);
c:=a div 100 mod 10;
d:=a div 10 mod 10;
b:=(a div 1000)*1000+d*100+c*10+(a mod 10);
writeln(b);
end.
---
короткий вариант:
var a,b:integer;
begin
readln(a);
b:= (a div 1000)*1000+(a div 10 mod 10)*100+(a div 100 mod 10)*10+(a mod 10);
writeln(b);
end.