В
Все
Б
Биология
Б
Беларуская мова
У
Українська мова
А
Алгебра
Р
Русский язык
О
ОБЖ
И
История
Ф
Физика
Қ
Қазақ тiлi
О
Окружающий мир
Э
Экономика
Н
Немецкий язык
Х
Химия
П
Право
П
Психология
Д
Другие предметы
Л
Литература
Г
География
Ф
Французский язык
М
Математика
М
Музыка
А
Английский язык
М
МХК
У
Українська література
И
Информатика
О
Обществознание
Г
Геометрия
Фрао
Фрао
04.07.2022 12:31 •  Информатика

На вход программе подается натуральное число n, затем n строк, затем еще одна строка — поисковый за Напишите программу, которая выводит все введенные строки, в которых встречается поисковый за Формат входных данных
На вход программе подаются натуральное число nn — количество строк, затем сами строки в указанном
количестве, затем один поисковый за Формат выходных данных
Программа должна вывести все введенные строки, в которых встречается поисковый за Примечание. Поиск не должен быть чувствителен к регистру символов.
Пример входных данных:
5
Я вас любил: любовь еще, быть может,
В душе моей угасла не совсем;
Но пусть она вас больше не тревожит;
Я не хочу печалить вас ничем.
Я вас любил безмолвно, безнадежно,
Любил
Вывод программы:
Я вас любил: любовь еще, быть может,
Я вас любил безмолвно, безнадежно,

Показать ответ
Ответ:
angelina455
angelina455
22.08.2022 06:11

ip-адрес это 32 бита (4 байта). маска подсети - тоже 32 бита (4 байта).

ip-адрес можно условно разделить на две части (старшие биты - адрес сети, младшие биты - адрес устройства внутри этой сети). Граница (сколько бит адрес сети, а сколько бит адрес устройства) определяется числом после косой черты. В пунктах 1) и 2) это число 14, то есть под адрес сети отводится 14 бит (значит под адрес устройства: 32-14=18 бит). Чтобы сформировать маску подсети надо записать 32 бита таких чтобы старшие биты (адрес сети) были равны 1, а младшие биты (адрес устройства) были равны 0. Сделаем для случая из п.2 (то есть 14): буду писать группами по 8 бит, чтобы удобней было переводить потом биты в байты.

11111111 11111100 00000000 00000000

если теперь каждый из этих байтов записать в десятичной системе счисления и разделить точками, то получим классическую запись маски подсети (и заодно решение п.2):

255.252.0.0

Теперь насчет емкости (п.1). С такой маской подсети под адрес устройства в этой сети отводится 32-14=18 бит. Значит всего может быть адресов:

Осталось только вспомнить, что адрес где все биты равны нулям используе�ся для обозначения всей подсети, а адрес где все биты равны единицам используется в качестве широковещательного адреса на подсеть. То есть эти два адреса не могут принадлежать ни одному устройству в этой подсети. Получается что всего устройств в подсети (емкость) равна 262144-2=262142. Это ответ на п.1.

С п.3 я не уверен, что правильно понимаю в чём именно во Но насколько понял:

в указанной в задании сети под адрес сети выделено 13 бит, значит под адреса устройств/подсетей 32-13=19 бит.

Маска подсети определяется это количеством бит (причем всегда целым - поэтому разбиение может идти только по целым степеням двойки). Чтобы разбить на 400 подсетей надо под адрес подсети выделить x бит, так чтобы:

нам подходят 9 бит (512 > 400), 10 бит (1024 > 400), 11 бит (2048 > 400) и т. д. В условии есть фраза про максимальную экономию адресного Скорее всего имелось ввиду, чтоб адрес подсети был минимальным. Минимальное из подходящих - это 9 бит.

Итого: в изначальном адресном в условии) адрес сети занимал 13 бит. Адрес подсети (после разбиения на 400 подсетей) "заберёт" ещё 9. Под адреса устройств в каждой подсети остается 32-(13+9)= 10 бит. То есть количество адресов в каждой подсети будет:

Минус два служебных адреса (как и в п.1). Итого 1022 устройства с разными адресами могут быть в каждой из получившихся подсетей

Объяснение:

0,0(0 оценок)
Ответ:
denchik20041
denchik20041
25.03.2020 17:51

96

Объяснение:

Сначала вспомним, что такое конъюнкция: это аналог логической операции И(в простонародье - операции умножения). В бинарной(двоичной) системе счисления она используется так :

0 и 0 = 0

1 и 0 = 0

0 и 1 = 0

1 и 1 = 1

Ну, а теперь возьмём пример

Адрес: 231.32.255.131

Маска: 255.255.240.0

Отлично. Посмотрим сразу на число 255, оно в двоичной системе выглядит так : 11111111. Это значит, что при побитовой конъюнкции любого числа, получается тоже самое число. Т.е. :

231 = 11100111, 255 = 11111111. (возьму первые 4 бита : 1*1=1,1*1=1,1*1=1,1*0=0)

Т.о. 231(логическое И)255=231.

Теперь адрес сети:

231*255=231

32*255=32

255*240=240

131*0=0

Вот и получили адрес сети : 231.32.240.0

Теперь решение задачи :

Тут нужно в обратную сторону. Есть IP адрес, есть узел.

Узел : 98.162.71.123

Адрес: 98.162.71.96

Надо найти правый байт. У узла он равен 123(в десятичной) -> 1111011(в двоичной). У адреса он равен 96(в десятичной) -> 1100000.

Ну, а теперь обратное действие, смотрим на байты узла, умножаем на x, получаем байты адреса. Вот так :

1111011*=1100000

1*х=1 -> x=1

1*x=1 -> x=1

1*x=0 -> x=0

... И так далее, но дальше считать нет смысла, ибо все остальные пять байтов будут равны нулю, т.к. правая часть вся равна нулю(по свойствам выше)

Получили =1100000, а это тоже самое, что и последний байт адреса сети, и равен он 96.

Получили маску : 255.255.255.96

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота