Если i больше 0 делаем 1) i:= i(=5) - 1 = 5-1= 4 2) s:= 0+4(получилось в 1 действии)= 4 i больше 0, повторяем процедуру 1) i:= i(=4 из 1-ого решения) - 1 = 4-1= 3 2) s:= 4( из 1-ого решения) +3= 7 И еще раз 1) i:= i(=3 из 2-ого решения) - 1 = 3-1= 2 2) s:= 7( из 2-ого решения) +2= 7 + 2 = 9 Снова 1) i:= i(=2 из 3-ого решения) - 1 = 2-1= 1 2) s:= 9( из 3-ого решения) +1= 9+1 = 10 И еще 1) i:= i(=1 из 4-ого решения) - 1 = 1-1= 0 2) s:= 10( из 4-ого решения) +0= 10+0 = 10 Так как i= 0, а не больше 0, то алгоритм закончен S= 10
Ну смотри, есть такая формула что ли.. У - узел М - маска С - сеть Нам известен узел - это 200.15.100.23 Нам известен адрес сети - это 200.15.96.0 Маска неизвестна. Если в маске стоит 255 - то число остается тоже самое: У - 200.15.100.23 М- 255.255.Х.0 С - 200.15.96.0 Нам нужно найти НАИМЕНЬШЕЕ возможное значение третьего слева байта маски, его обозначила за Х выше. Переведем 100 и 96 в двоичную систему счисления и получим: 100 - 1100100 96 - 1100000 Т.к в маске 8 разрядов, то перед каждым полученным числом в двоичной системе счисления поставим 0. Получим: 01100100 - у xxxxxxxx - м 01100000 - с Сделаем побитовое перемножение с конца. Запомним, что в маске идут сначала все нули, а затем единицы. 01100100 - узел. Его умножаем на маску 11100000 - маска. 01100000 - сеть. Получаем ее после перемножения узла на маску. Перемножили, получили маску - 11100000. Возвращаемся к вопросу задачи: Чему равно наименьшее возможное значение третьего слева байта маски? Тут все просто, осталось перевести маску из двоичной СС в десятичную СС. Расставим степени двойки над маской 76543210 11100000 , что и является верным ответом. Если остались вопросы - задавай в комментариях, отвечу.
1) i:= i(=5) - 1 = 5-1= 4
2) s:= 0+4(получилось в 1 действии)= 4
i больше 0, повторяем процедуру
1) i:= i(=4 из 1-ого решения) - 1 = 4-1= 3
2) s:= 4( из 1-ого решения) +3= 7
И еще раз
1) i:= i(=3 из 2-ого решения) - 1 = 3-1= 2
2) s:= 7( из 2-ого решения) +2= 7 + 2 = 9
Снова
1) i:= i(=2 из 3-ого решения) - 1 = 2-1= 1
2) s:= 9( из 3-ого решения) +1= 9+1 = 10
И еще
1) i:= i(=1 из 4-ого решения) - 1 = 1-1= 0
2) s:= 10( из 4-ого решения) +0= 10+0 = 10
Так как i= 0, а не больше 0, то алгоритм закончен
S= 10
У - узел
М - маска
С - сеть
Нам известен узел - это 200.15.100.23
Нам известен адрес сети - это 200.15.96.0
Маска неизвестна. Если в маске стоит 255 - то число остается тоже самое:
У - 200.15.100.23
М- 255.255.Х.0
С - 200.15.96.0
Нам нужно найти НАИМЕНЬШЕЕ возможное значение третьего слева байта маски, его обозначила за Х выше.
Переведем 100 и 96 в двоичную систему счисления и получим:
100 - 1100100
96 - 1100000
Т.к в маске 8 разрядов, то перед каждым полученным числом в двоичной системе счисления поставим 0.
Получим:
01100100 - у
xxxxxxxx - м
01100000 - с
Сделаем побитовое перемножение с конца. Запомним, что в маске идут сначала все нули, а затем единицы.
01100100 - узел. Его умножаем на маску
11100000 - маска.
01100000 - сеть. Получаем ее после перемножения узла на маску.
Перемножили, получили маску - 11100000.
Возвращаемся к вопросу задачи: Чему равно наименьшее возможное значение третьего слева байта маски?
Тут все просто, осталось перевести маску из двоичной СС в десятичную СС.
Расставим степени двойки над маской
76543210
11100000
, что и является верным ответом.
Если остались вопросы - задавай в комментариях, отвечу.