Переведем 57 в двоичное:
57 / 2 = 28 (в остатке 1)
28 / 2 = 14 (в остатке 0)
14 / 2 = 7 (в остатке 0)
7 / 2 = 3 (в остатке 1)
3 / 2 = 1 (в остатке 1)
1 / 2 = 0 (в остатке 1)
57(10) = 111001(2)
Переведем 48 в двоичное:
48 / 2 = 24 (в остатке 0)
24 / 2 = 12 (в остатке 0)
12 / 2 = 6 (в остатке 0)
6 / 2 = 3 (в остатке 0)
3 / 2 = 1 (в остатке 1)
1 / 2 = 0 (в остатке 1)
48(10) = 110000(2)
111001
??????
______
110000
Первый бит в обоих случаях равен 1, значит, первый бит маски тоже равен 1.
Второй бит в обоих случаях равен 1, значит, второй бит маски тоже равен 1.
Третий бит в IP-адресе равен 1, а в адресе сети равен 0, значит, третий бит маски равен 0.
Если третий бит маски равен нулю, то все остальные биты маски тоже равны нулю.
Но при переводе десятичных чисел в двоичные мы получили 6-битовое двоичное число, а нам нужно 8-битовое. Значит, слева добавляем два нуля.
00111001
????????
________
00110000
Свойство маски гласит, что в ней сначала до некоторого разряда записаны только единицы, а затем только нули. Значит, первый и второй бит в новом представлении маски равны 1.
Искомая маска: 11110000(2).
Переведем 11110000 в десятичное число.
(1*2^7)+(1*2^6)+(1*2^5)+(1*2^4)+(0*2^3)+(0*2^2)+(0*2^1)+(0*2^0)=128+64+32+16=240
Ответ: 240(10)
костя леша боря тимофей саша ефим
var
a, b: integer;
begin
write('введите две стороны = >');
readln(a, b);
writeln('периметр = ', 2 * (a + b));
writeln('площадь = ', a * b);
end.
#include <iostream>
using namespace std;
int main()
{
int even= 0;
for (int i=1; i <=70;i++)
{
if (i%2==0)
even+=i;
}
cout<<"Even= ";
cout<<even;
return 0;
}
.......................................................