Так как первые два байта слева в IP-адресе узла и адресе сети совпадают, значит, в маске для получения такого результата при поразрядной конъюнкции в двоичной системе должны быть все единицы. В маске 16 единиц есть
Разложение третьих чисел в адресах
номер 7 6 5 4 3 2 1 0
59(10)=0 0 1 1 1 0 1 1
65(10)=0 0 1 0 0 0 0 1
как видно полное совпадение видно в первых трех разрядах слева, значит 16+3=19 единиц в маске уже есть, но возможны еще...
Если биты пронумеровать справа налево
Для 4-го и 3-го бита получаем: ? & 0 = 0 -> в маске может находиться как единица, так и 0. Но так как по заданию у нас спрашивается наибольшее возможное количество единиц, то значит, необходимо сказать, что в маске данный бит равен 1.
Для 2-го бита получаем: ? & 1 = 0 -> в маске может находиться только 0.
Поэтому выходит что максимальное значение единиц в маске 19+2=21
Var x,a,b,c,max,min,mid:real; begin readln(x); a:=sin(x); b:=cos(x); if a>0 then begin c:=ln(x); if (a>b) and (a>c) then max:=a else if (b>a) and (b>c) then max:=b else max:=c; if (a<b) and (a<c) then min:=a else if (b<a) and (b<c) then min:=b else min:=c; if (a>min) and (a<max) then mid:=a else if (b>min) and (b<max) then mid:=b else mid:=c; writeln(min,' ',mid,' ',max); end else if a>b then writeln(b,' ',a) else writeln(a,' ',b); end.
Так как первые два байта слева в IP-адресе узла и адресе сети совпадают, значит, в маске для получения такого результата при поразрядной конъюнкции в двоичной системе должны быть все единицы. В маске 16 единиц есть
Разложение третьих чисел в адресах
номер 7 6 5 4 3 2 1 0
59(10)=0 0 1 1 1 0 1 1
65(10)=0 0 1 0 0 0 0 1
как видно полное совпадение видно в первых трех разрядах слева, значит 16+3=19 единиц в маске уже есть, но возможны еще...
Если биты пронумеровать справа налево
Для 4-го и 3-го бита получаем: ? & 0 = 0 -> в маске может находиться как единица, так и 0. Но так как по заданию у нас спрашивается наибольшее возможное количество единиц, то значит, необходимо сказать, что в маске данный бит равен 1.
Для 2-го бита получаем: ? & 1 = 0 -> в маске может находиться только 0.
Поэтому выходит что максимальное значение единиц в маске 19+2=21
x,a,b,c,max,min,mid:real;
begin
readln(x);
a:=sin(x);
b:=cos(x);
if a>0 then
begin
c:=ln(x);
if (a>b) and (a>c) then max:=a else
if (b>a) and (b>c) then max:=b else max:=c;
if (a<b) and (a<c) then min:=a else
if (b<a) and (b<c) then min:=b else min:=c;
if (a>min) and (a<max) then mid:=a else
if (b>min) and (b<max) then mid:=b else mid:=c;
writeln(min,' ',mid,' ',max);
end
else
if a>b then writeln(b,' ',a) else writeln(a,' ',b);
end.