На рисунке представлена схема дорог, связывающих города А, Б, В, Г, Д, Е, Ж, 3, И, К, Л, М. По каждой дороге можно двигаться только в одном направлении, указанном стрелкой.
Сколько существует различных путей из города А в город М, проходящих через город Л, но не проходящих через город Е?
Спрятать решение
Решение.
Количество путей до города Х = количество путей добраться в любой из тех городов, из которых есть дорога в Х.
При этом если путь должен не проходить через какой-то город, нужно просто не учитывать этот город при подсчёте сумм. А если город наоборот обязательно должен лежать на пути, тогда для городов, в которые из нужного города идут дороги, в суммах нужно брать только этот город.
С помощью этого наблюдения посчитаем последовательно количество путей до каждого из городов:
А = 1
Б = А = 1
Д = А = 1
Г = А + Д = 1 + 1 = 2
В = А + Б + Г = 1 + 1 + 2 = 4
Е = Б + В = 1 + 4 = 5
З = В + Г + Д = 4 + 2 + 1 = 7
Ж = В + З = 4 + 7 = 11
И = Ж + З = 11 + 7 = 18
К = И = 18
Л = И = 18
М = Л = 18.
Ответ: 18.
Приведем другое решение.
Заметим, что из города А в город М можно добраться только через город И. Из города И в город М есть только один путь, проходящий через город Л — путь И—Л—М. Следовательно, количество путей из города А в город М, проходящих через город Л, но не проходящих через город Е, равно количеству путей из города А в город И, не проходящих через город Е. Найдем это количество путей:
А = 1
Б = А = 1
Д = А = 1
Г = А + Д = 1 + 1 = 2
В = А + Б + Г = 1 + 1 + 2 = 4
З = В + Г + Д = 4 + 2 + 1 = 7
Ж = В + З = 4 + 7 = 11 (Е не учитываем, так как путь не должен проходить через Е)
И = Ж + З = 11 + 7 = 18 (Е не учитываем, так как путь не должен проходить через Е).
Следовательно, количество путей из города А в город М, проходящих через город Л, но не проходящих через город Е, равно 18.
Привет! В этой статье будут различные примеры решения задач из 5-ого задания ЕГЭ по информатике 2022.
Задание 5 решается не сложно, но, как всегда, нужно потренироваться решать подобные задачи, чтобы уверенно себя чувствовать на ЕГЭ по информатике 2022.
Рассмотрим классический пример.
Задача (Классическая)
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R по следующему принципу.
1) Строится двоичная запись числа N.
2) К этой записи дописываются справа ещё два разряда по следующему правилу:
а) Складываются все цифры двоичной записи, и остаток от деления суммы на 2 дописываются в конец числа (справа). Например, запись 11100 преобразуется в запись 111001.
б) Над этой записью производятся те же действия — справа дописывается остаток от деления суммы цифр на 2.
Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является двоичной записью искомого числа R.
Укажите минимальное число R, которое превышает 42 и может являться результатом работы алгоритма. В ответе это число запишите в десятичной системе.
Решение:
Решение на Python.
for n in range(1, 1000): s=format(n, 'b') s=s+str(s.count('1')%2) s=s+str(s.count('1')%2) r=int(s, 2) if r>42: print(r)
Программа будет выводить различные числа, но нас интересует самое маленькое. В ответе получается 46. Чтобы остановить поток чисел, можно нажать сочетание Ctrl + C.
В программе перебираем натуральные числа от 1 до 1000 с помощью цикла for. Каждое число подставляем в описанный алгоритм, в надежде получить в результате число r, удовлетворяющие условию задачи.
С помощью функции format переводим число n в двоичный вид. Получаем результат в виде строки s.
Чтобы найти сумму цифр получившейся двоичной записи, достаточно подсчитать количество единиц в строке s. Ведь только единицы в двоичной записи дают в сумму результат. Это можно сделать, применив функцию .count() к строке s.
Добавляем справа к строке s остаток от деления суммы цифр на 2. Остаток нужно превратить в строковый тип данных, чтобы «присоединить» к строке s справа.
Повторяем пункт Б, скопировав строку с пунктом А.
Чтобы обратно превратить строку двоичной записи в десятичное число, используем функцию int(), указав параметр 2.
В конце программы пропишем условие. Если r больше 42, то будем печатать эти значения. Остаётся выбрать минимальное число r.
Решение с помощью рассуждений.
Алгоритму на вход приходит обычное натуральное число N.
Это число преобразуется в двоичную запись (пункт 1).
Во втором пункте правил формирования нового числа сказано, что к числу, полученному в первом пункте, дописываются справа ещё два дополнительных разряда.
Про 1 дополнительный разряд указано в подпункте а): «Складываются все цифры двоичной записи, и остаток от деления суммы на 2 дописываются в конец числа (справа). Например, запись 11100 преобразуется в запись 111001.»
Если по простому сказать, то мы подсчитываем количество единиц в двоичном представлении числа N. Если количество единиц чётное, то пишем в 1 дополнительный разряд ноль, если нечётное, то пишем в 1 дополнительный разряд единицу.
Со вторым дополнительным разрядом происходит всё тоже самое, что и с первым разрядом, только когда подсчитываем количество единиц, мы так же подсчитываем и в 1-ом дополнительном разряде.
В вопросе просят указать входящее наименьшее число N, чтобы автомат выдал число R больше 42.
Возьмём наименьшее число, которое больше 42 (т.е. 43) и переведём его в двоичную систему. Это можно сделать с помощью стандартного windows калькулятора.
Вызываем калькулятор, выбираем Вид->Программист. Кликаем на отметку Dec (это означает, что мы находимся в десятичной системе) и набираем число 43. Затем кликаем на отметку Bin
Проверим число 1010112. Может ли оно быть результатом работы нашего алгоритма?
Отделяем два дополнительных разряда справа. У нас, не считая двух дополнительных разрядов, количество единиц равно двум. Количество чётное, значит, в первом дополнительном разряде должен стоять 0. А у нас стоит 1.
Следовательно, число 1010112 не может являться результатом работы алгоритма. И это число не подходит.
Проверим последующие числа. На калькуляторе можно прибавлять по 1 и получать следующее число в двоичной системе. Мы проверяем последовательно числа, чтобы не пропустить самое маленькое число.
Подходит число 1011102. Количество единиц без двух дополнительных разрядов равно трём. Число нечётное. Значит, в первом дополнительном разряде должна стоять 1. В этом числе как раз стоит 1.
Количество единиц вместе с дополнительным разрядом равно 4. Число чётное, значит, во втором дополнительном разряде должен стоять 0. У нас и стоит во втором дополнительном разряде 0. Следовательно, число 1011102 подходит по всем правилам и является наименьшим.
В десятичной системе это число 46.
Ответ: 46
Рассмотрим ещё одну интересную задачу для подготовки к ЕГЭ по информатике 2022.
Задача(Замена символов)
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1) Строится двоичная запись числа N.
2) Каждый разряд этой записи заменяется двумя разрядами по следующему правилу: если в разряде стоит 0, то вместо него пишется 01; если в разряде стоит 1, то 1 заменяется на 10.
Например, двоичная запись 1010 числа 10 будет преобразована в 10011001.
Полученная таким образом запись (в ней в два раза больше разрядов, чем в записи исходного числа N) является двоичной записью искомого числа R.
Укажите максимальное нечётное число R, меньшее 256, которое может являться результатом работы данного алгоритма. В ответе это число запишите в десятичной системе.
Решение:
Решение на Python.
for n in range(1, 1000): s=format(n, 'b') s2='' for x in s: if x=='0': s2 = s2 + '01' else: s2 = s2 + '10' r=int(s2, 2) if r%2!=0 and r<256: print(r)
Получается наибольшее число 169.
Здесь после того, как построена строка, содержащая двоичную запись числа n, мы с помощью цикла for перебираем каждый символ и анализируем его.
Предварительно создав переменную s2 для новой строки, мы записываем в неё ’01’, если анализируемый символ является нулём, и ’10’, если единицей.
Добавляем заменённые символы справа к строке s2, таким образом, самый первые символы окажутся постепенно слева, как положено.
Далее, делаем, как в прошлой задаче.
Решение с помощью рассуждений.
В этой задаче в начале строится двоичная запись числа N.
Каждый разряд превращается в два разряда! Единица превращается в 10. Ноль превращается в 01. На рисунке показан пример, как будет преобразовано число 10 = 10102.
Оценим первое число, которое меньше, чем 256. Это число 255.
255 = 111111112
Здесь количество разрядов равно 8. Это чётное число, значит, такое количество разрядов может быть в результате работы алгоритма. Только чётное количество разрядов может получится в результате работы алгоритма.
В старших двух разрядах должны быть цифры 10, т.к. исходное число N не может начинаться с нуля.
В остальных парах попробуем написать 10, чтобы число было как можно больше.
Получается, что число 101010102 удовлетворяет всем правилам алгоритма, является наибольшим, и оно меньше 256.
Но важный момент, нас просили в ответ записать нечётное число.
В двоичной системе число, которое оканчивается на ноль, является чётным.
В двоичной системе число, которое оканчивается на единицу, является нечётным.
Чтобы число было нечётным, изменим последние разряды на 01.
101010012 = 169
Ответ: 169
Набираем обороты в решении 5 задания из ЕГЭ по информатике 2022.
Задача(Классическая, закрепление)
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число следующим образом.
1) Строится двоичная запись числа N.
2) К этой записи дописываются справа ещё два разряда по следующему правилу: если N чётное, в конце числа справа дописываются два нуля, в противном случае справа дописываются две единицы. Например, двоичная запись 1101 будет преобразована в 110111.
Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является двоичной записью числа — результата работы данного алгоритма.
Укажите минимальное число N, для которого результат работы алгоритма будет больше 130. В ответе это число запишите в десятичной системе счисления.
Решение:
Решение на Python.
for n in range(1, 1000): s=format(n, 'b') if n%2==0: s=s+'00' else: s=s+'11' r=int(s, 2) if r>130: print(n)
Минимальное число n получается 33.
Обратите внимание, что здесь уже анализируем число n. Если оно чётное, то к переменной s справа дописываем ’00’, иначе ’11’. Так же в этой задаче мы печатаем в ответе само число n.
Решение с помощью рассуждений.
После перевода в двоичную систему исходного числа N, алгоритм строит новое число по следующему правилу:
Бордовым прямоугольником показаны дополнительные разряды.
Нужно найти минимальное число больше 130. Будем проверять последовательно числа, начиная с 131.
Подходит число 135. В ответе нужно указать число N. Отбросим от числа 100001112 дополнительные разряды и переведём в десятичную систему.
1000012 = 33
Ответ: 33
Похожие задачи встречались в сборнике С. С. Крылова для подготовке к ЕГЭ по информатике.
Задача (Крепкий орешек)
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1. Из числа N вычитается остаток от деления N на 4.
2. Строится двоичная запись полученного результата.
3. К это записи справа дописываются ещё два дополнительных разряда по следующему правилу:
а) Складываются все цифры двоичной записи, и остаток от деления суммы на 2 дописываются в конец числа (справа). Например, запись 11100 преобразуется в запись 111001.
б) Над этой записью производятся те же действия — справа дописывается остаток от деления суммы цифр на 2.
Полученная таким образом запись является двоичной записью числа R.
Укажите наибольшее число N, для которого результат работы данного алгоритма меньше 47. В ответе число N укажите в десятичной системе.
Решение:
Первый способ. Число R должно быть меньше 47. Переведём число 46 в двоичную систему.
46 = 1011102
Результат от второго пункта не должен превышать 10112. Если результат от второго пункта будет превышать это число, то после добавления дополнительных разрядов получится число R, которое не меньше 47.
Проверим число 10112 = 11. Видим, что это число не может являться результатом пункта 2.
11 + 0 = 11 (остаток при делении 11 на 4 равен 3) —
11 + 1 = 12 (остаток при делении 12 на 4 равен 0) —
11 + 2 = 13 (остаток при делении 13 на 4 равен 1) —
11 + 3 = 14 (остаток при делении 13 на 4 равен 2) —
Здесь мы перебираем все остатки при делении на 4. Чтобы число 11 могло являться результатом пункта 2, число, помеченное зелёным цветом, должно совпадать с числом, помеченное оранжевым цветом. Стоит заметить, что если в первой строчке не совпадают числа, то и в остальных они тоже не совпадут. Верно и обратное. Если в первой строчке совпадут числа, то и для остальных остатков тоже числа будут совпадать.
Найдём, число, для которого будут совпадать эти числа, отмеченные зелёным и оранжевым цветом.
10 + 0 = 10 (остаток при делении 10 на 4 равен 2) Не подходит
9 + 0 = 9 (остаток при делении 9 на 4 равен 1) Не подходит
8 + 0 = 8 (остаток при делении 8 на 4 равен 0) Подходит!
Значит, число 8 нам подходит. Число 8 — это результат работы алгоритма в первом пункте. Нас просят найти максимальное число. Следовательно, возьмём остаток 3, чтобы исходное число N было как можно больше. Тогда N будет:
N = 8 + 3 = 11
Ответ получается 11.
Второй способ. Решим задачу с помощью Python’а.
Перебираем числа от 100 до 1 с помощью цикла for. Третий параметр «-1» в цикле for говорит о том, что мы перебираем числа в обратном порядке.
for i in range(100, 0, -1): n = i n = n - n % 4 # Выполняем первый пункт n = format(n, 'b') # Переводим в двоичную систему n = n + str(n.count('1') % 2) # Подпункт a) третьего пункта n = n + str(n.count('1') % 2) # Подпункт б) третьего пункта r = int(n, 2) # Переводим из двоичной системы в десятичную if r < 47: print(i)
В этой программе запрограммировали алгоритм, который указан в задаче. Если значение переменной r (результат работы алгоритма) меньше 47, то печатаем это значение на экран. Первое распечатанное число и есть ответ к задаче.
В переменную n по очереди подставляются числа из нашего диапазона (100-1). Команда % находит остаток от деления.
Функция count, в данном случае, подсчитывает количество единиц в строке, которая находится в переменной n.
Ответ: 11
Задача (Демо 2023)
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1. Строится двоичная запись числа N.
2. Далее эта запись обрабатывается по следующему правилу:
a) если сумма цифр в двоичной записи числа чётная, то к этой записи справа дописывается 0, а затем два левых разряда заменяются на 10;
б) если сумма цифр в двоичной записи числа нечётная, то к этой записи справа дописывается 1, а затем два левых разряда заменяются на 11.
Полученная таким образом запись является двоичной записью искомого числа R.
Например, для исходного числа 610 = 1102 результатом является число 10002 = 810, а для исходного числа 410 = 1002 результатом является число 11012 = 1310.
Укажите минимальное число N, после обработки которого с помощью этого алгоритма получается число R, большее 40. В ответе запишите это число в десятичной системе счисления.
Решение:
for n in range(1, 1000): s=format(n, 'b') if s.count('1')%2==0: s = s + '0' s = '10' + s[2:] else: s = s + '1' s = '11' + s[2:] r=int(s, 2) if r>40: print(n)
Здесь мы пишем программу, как было написано в уроке видеокурса ЕГЭ по информатике. Но, действительно, встречается и новый приём. Нужно изменить левые символы нашей строки s. Это можно сделать с помощью такой конструкции s[2:]. Таким образом, мы берём всю строку, кроме двух первых символов. Например, s=’football’, то s[2:] будет обозначать ‘otball’.
Повторим основные идеи такого подхода при решении пятого задания из ЕГЭ по информатике с помощью программирования. Перебираем числа от 1 до 999 с помощью цикла for. В этом диапазоне надеемся найти наш ответ. С помощью команды format() превращаем число в строку уже в двоичной системе. Сумма цифр в строке зависит только от количества единиц. Нули ничего не дают в сумму. Поэтому применяем функцию .count. Дальше всё делаем, как написано в условии задачи. Команда int(s, 2) превращает строку в двоичной системе в число опять в десятичной системе счисления.
Ответ: 16
Задача (Решаем с помощью Python)
Автомат обрабатывает натуральное число N > 1 по следующему алгоритму:
1) Строится двоичная запись числа N.
2) В конец записи (справа) дописывается вторая справа цифра двоичной записи.
3) В конец записи (справа) дописывается вторая слева цифра двоичной записи.
4) Результат переводится в десятичную систему.
Пример. Дано число N = 11. Алгоритм работает следующим образом.
1) Двоичная запись числа N: 11 = 10112
2) Вторая справа цифра 1, новая запись 101112.
3) Вторая слева цифра 0, новая запись 1011102.
4) Десятичное значение полученного числа 46.
При каком наименьшем числе N в результате работы алгоритма получится R > 170? В ответе запишите это число в десятичной системе счисления.
Решение:
Напишем программу на Python.
for n in range(2, 1000): s=format(n, 'b') s=s+s[-2] s=s+s[1] r=int(s, 2) if r>170: print(n)
Получается наименьшее число 43. К последнему символу можем обратится s[-1], к предпоследнему s[-2]. Но счёт слева начинается с нуля. Первый символ это s[0], второй символ s[1] и т.д.
Обратите внимание, что перебирать числа n в этой задаче начинаем с 2.
Ответ: 43
Задача(Восьмибитное число)
(А.М. Кабанов) Автомат обрабатывает натуральное число N (1≤N≤255) по следующему алгоритму:
1) Строится восьмибитная двоичная запись числа N.
2) Удаляется последняя цифра двоичной записи.
3) Запись «переворачивается», то есть читается справа налево.
4) Полученное число переводится в десятичную запись и выводится на экран.
Каково наибольшее число, меньшее 100, которое после обработки автоматом не изменится?
Решение:
for n in range(1, 256): s=format(n, 'b') # делаем 8-ое число while(len(s)<8): s='0'+s s=s[:-1] #удаляется последняя цифра s=s[::-1] #число переворачивается r=int(s, 2) if n<100 and r==n: print(n)
Ответ получается 90.
Восьмибитное число имеет длину 8 символов. После того, как перевели число n в двоичный вид, с помощью цикла while добисываем нули слева к строке s, пока длина этой строки меньше 8.
Удалить последнюю цифру можно с помощью конструкции s[:-1]. Здесь мы оставляем все цифры, начиная с первой до последней (не включительно).
Перевернуть строку можно с помощью конструкции s[::-1].
Далее решаем как обычно. Число не изменится, если входное число n равно выходному числу r.
Ответ: 90
Разберём задачу, которая была в пробном варианте от 3.02.23 в одном из регионов.
Задача(Пробник 3.02.23)
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1. Строится двоичная запись числа N.
2. Далее эта запись обрабатывается по следующему правилу:
a) если сумма цифр в двоичной записи числа чётная, то к этой записи справа дописывается 0, а затем два левых разряда заменяются на 1;
б) если сумма цифр в двоичной записи числа нечётная, то к этой записи справа дописывается 1, а затем два левых разряда заменяются на 11;
Полученная таким образом запись является двоичной записью искомого числа R.
Например, для исходного числа 610 = 1102 результатом является число 1002 = 410, а для исходного числа 410 = 1002 результатом является число 11012 = 1310.
Укажите число N, после обработки которого с помощью этого алгоритма получается наименьшее значение R, большее 49. В ответе запишите это число в десятичной системе.
Решение:
Напишем программу на языке Python.
for n in range(1, 1000): s=format(n, 'b') if s.count('1')%2==0: s = s + '0' s = '1' + s[2:] else: s = s + '1' s = '11' + s[2:] r=int(s, 2) if r>49: print(r, n)
Хитрость задачки заключается в том, что числа r возрастают неравномерно.
Нам необходимо глазами найти наименьше число r (первое число). Это число 50, а n для него равно 57.
При желании программу можно переписать следующим образом:
r_min=10**9 n_r_min = 0 for n in range(1, 1000): s=format(n, 'b') if s.count('1')%2==0: s = s + '0' s = '1' + s[2:] else: s = s + '1' s = '11' + s[2:] r=int(s, 2) if r > 49: if r < r_min: r_min=r n_r_min=n print(n_r_min)
Здесь ищется минимальное число r автоматически и для него запоминается значение n, которое пойдет в ответ.
Ответ: 57
Боковой вариант 5-ого задания из ЕГЭ по информатике.
Задача (Лучше знать)
Автомат получает на вход четырёхзначное число. По этому числу строится новое число по следующим правилам:
1. Перемножаются первая и вторая, а также третья и четвёртая цифры исходного числа.
2. Полученные два числа записываются друг за другом в порядке убывания (без разделителей).
Пример. Исходное число: 2465. Суммы: 2 * 4 = 8; 6 * 5 = 30. Результат: 308. Укажите наибольшее число, в результате обработки которого автомат выдаст число 124.
Решение:
В подобных задачах из ЕГЭ по информатике нумерация происходит начиная со старшего разряда.
Первое правило можно представить следующим образом:
Второе правило заключается в том, что мы «соединяем» два числа, полученных в первом пункте, причём, сначала идёт большее число, а затем меньшее.
Проанализируем число 124.
Чтобы четырёхзначное число было наибольшим, выгодно, чтобы в старшем разряде стояла 9. Но, не у числа 12, не у числа 4, нет такого делителя. Какой наибольший делитель мы можем получить? Это число 6. Число 6 является делителем 12-ти. Значит, первая цифра будет 6, а вторая цифра будет 2 (6*2=12).
Рассмотрим второе число 4. Третий разряд тоже желательно сделать побольше. Значит, в четвёртый разряд поставим 4, а в младший разряд 1 (4*1=4).
Ответ получается 6241.
Ответ: 6241
Счастливых экзаменов! Видеоролик можете посмотреть ниже!
Второе задание с заменой символом пытался сделать через команду .replace, в консоль выводились почему-то только четные числа, можете обьяснить что не так?
for unk in range(1, 1000):
unk = (bin(unk)[2:])
if «1» in unk:
unk = unk.replace(«1», «10»)
elif «0» in unk:
unk = unk.replace(«0», «01»)
R = int(unk, 2)
# if R < 256 and R % 2 != 0:
print(R)
Я так понимаю, что вы заменяете либо единицы, либо нули. А нужно в одной записи заменить и единицы, и нули. Через реплейс тоже можно решить. s=s.replace(‘1’, ‘2’) s=s.replace(‘0′, ’01’) s=s.replace(‘2′, ’10’). Т.е. мы превращаем 1 в символ, которого точно нет в строке, потом делаем замены.

В конце варианта приведены правильные ответы ко всем заданиям. Вы можете свериться с ними и найти у себя ошибки.
Скачать тренировочный вариант ЕГЭ: Скачать
Файлы для варианта: Скачать
Интересные задания:
4. Все заглавные буквы русского алфавита закодированы неравномерным двоичным кодом, в котором никакое кодовое слово не является началом другого кодового слова. Это условие обеспечивает возможность однозначной расшифровки закодированных сообщений. Известно, что слово СПОРТЛОТО кодируется как 10010100110011110000100. Какой код соответствует букве Л, если известно, что коды подбирались под минимальную длину заданного слова. Примечание: под условием Фано понимается такой метод кодирования, при котором ни одно кодовое слово не является началом другого кодового слова. Такой способ кодирования позволяет получить однозначно декодируемый код.
5. На вход алгоритма подаётся натуральное число N большее 4. Алгоритм строит по нему новое число R следующим образом. 1. Строится двоичная запись числа N. 2. Далее эта запись обрабатывается по следующему правилу:
а) если количество цифр в двоичной записи числа нечётное, то центральный бит двоичного представления инвертируется;
б) если количество цифр в двоичной записи числа чётное, то два центральных бита двоичного представления инвертируется; Например, для исходного числа 610 = 1102 результатом является число 1002 = 410, а для исходного числа 910 = 10012 результатом является число 11112 = 1510. Укажите минимальное число N, после обработки которого с помощью этого алгоритма получается число R, большее 100 и меньшее N. В ответе запишите это число в десятичной системе счисления.
7. Спутник каждую секунду делает снимок 20 на 7.6 километра. Размер пикселя на местности 0.65х0.65 метра. Цвет пикселя выбирается из палитры в 256 цветов. Оцените объем памяти (в МБ) для хранения одного изображения. Сжатие не производится. Ответ округлите до большего целого числа.
8. Определите количество десятизначных чисел, записанных в восьмеричной системе счисления, в записи которых ровно пять цифры 7 и при этом никакая нечетная цифра не стоит рядом с цифрой 7.
9. Откройте файл электронной таблицы, содержащей в каждой строке шесть натуральных чисел. Определите количество строк таблицы, содержащих числа, для которых выполнено строго одно из условий:
– в строке есть повторяющиеся числа;
– в строке есть ровно три нечетных числа. В ответе запишите только число.
10. Текст произведения Ника Горькавого «Теория Катастроф» представлен в виде текстового файла. Откройте файл и определите, сколько бифуркационных технологий содержал итоговый список. В ответе запишите только число.
11. Вася решил закодировать персональные данные всех 1347 учеников всей школы. Для каждого ученика был сформирован ID из нескольких полей: номер класса, буква (а,б,в,г,д), пол, день и месяц рождения, номер имени по таблице имен (всего 103), номер фамилии по таблице фамилий (всего 733). Сперва Вася для каждого поля выделил минимальное количество байт. Затем попробовал закодировать все поля непрерывной битовой строкой и для каждого ID выделил минимальное количество байт. Сколько байт сэкономил Вася во втором случае для кодирования всех учеников школы?
Вам будет интересно:
ЕГЭ 2023 по информатике 11 класс. Новый тренировочный вариант №6 — №221107 (задания и ответы)
* Олимпиады и конкурсы
* Готовые контрольные работы
* Работы СтатГрад
* Официальные ВПР
Поделиться:
ЕГЭ информатика 5 задание разбор, теория, как решать.
Анализ и построение алгоритмов, (Б) — 1 балл
Е5.41 с помощью этого алгоритма получается число R, большее 40
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом. 1. Строится двоичная запись числа N. 2. Далее эта запись обрабатывается по следующему правилу: а) если сумма цифр в двоичной записи числа чётная, то к этой записи справа дописывается 0, а затем два левых разряда заменяются на 10; б) …
Читать далее
Е5.40 справа приписывается в двоичном виде сумма цифр его двоичной записи
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом. 1. Строится двоичная запись числа N. 2. К этой записи дописываются справа ещё несколько разрядов по следующему правилу: а) Если N чётное, то к нему справа приписывается в двоичном виде сумма цифр его двоичной записи; 6) Если N нечётное, …
Читать далее
Е5.40 При каком наименьшем N в результате работы алгоритма получится R = 5
Алгоритм получает на вход натуральное число N > 1 и строит по нему новое число R следующим образом: 1. Строится двоичная запись числа N. 2. Вычисляется количество единиц, стоящих на чётных местах в двоичной записи числа N без ведущих нулей, и количество нулей, стоящих на нечётных местах. Места отсчитываются слева направо (от старших разрядов к …
Читать далее
Е5.39 Какое наименьшее трёхзначное число может появиться на экране
Автомат обрабатывает натуральное число N по следующему алгоритму: 1. Строится троичная запись числа N 2. В конец записи (справа) дописывается остаток от деления числа N на 3. З. Результат переводится из троичной системы в десятичную и выводится на экран. Пример. Дано число N=11. Алгоритм работает следующим образом: 1. Троичная запись числа N: 102 2. Остаток …
Читать далее
Е5.38 Если исходное число кратно 2, оно делится на 2, в противном случае из него вычитается 1
Алгоритм получает на вход натуральное число N > 1 и строит по нему новое число R следующим образом: 1. Если исходное число кратно 2, оно делится на 2, в противном случае из него вычитается 1. 2. Если полученное на предыдущем шаге число кратно 3, оно делится на 3, в противном случае из него вычитается 1. …
Читать далее
Е5.37 в результате работы алгоритма получится число, кратное 4
Алгоритм получает на вход натуральное число N > 99 и строит по нему новое число R следующим образом: 1. Строится двоичная запись числа N. 2. Подсчитывается количество нулей и единиц в полученной записи. Если их количество одинаково, в конец записи добавляется её последняя цифра. В противном случае в конец записи добавляется та цифра, которая встречается …
Читать далее
Е5.36 При каком наименьшем N в результате работы алгоритма получится R = 13?
При каком наименьшем N в результате работы алгоритма получится R = 13? Алгоритм получает на вход натуральное число N > 1 и строит по нему новое число R следующим образом: 1. Вычисляется сумма чётных цифр в десятичной записи числа N. Если чётных цифр в записи нет, сумма считается равной нулю. 2. Вычисляется сумма цифр, стоящих …
Читать далее
Е5.35 Какое наибольшее число, не превышающее 100, после обработки автоматом даёт результат 13?
Какое наибольшее число, не превышающее 100, после обработки автоматом даёт результат 13? Автомат обрабатывает натуральное число N по следующему алгоритму: 1. Строится двоичная запись числа N. 2. Запись «переворачивается», то есть читается справа налево. Если при этом появляются ведущие нули, они отбрасываются. 3. Полученное число переводится в десятичную запись и выводится на экран. Пример. Дано …
Читать далее
Е5.34 Складываются отдельно первая и вторая, вторая и третья, третья и четвёртая цифры заданного числа
На вход исполнителю Сумматор подается четырехзначное шестеричное число. По этому числу строится новое число по следующим правилам. 1. Складываются отдельно первая и вторая, вторая и третья, третья и четвёртая цифры заданного числа. 2. Полученные суммы записываются друг за другом в порядке не убывания без разделителей. Пример. Исходное число: 5301. Суммы: 5 + 3 = 8, …
Читать далее
Е5.33 после обработки автоматом даёт результат 7
Какое наибольшее число, меньшее 110, после обработки автоматом даёт результат 7? Автомат обрабатывает натуральное число N (0≤N≤255) по следующему алгоритму: 1) Строится восьми битная двоичная запись числа N. 2) Удаляются средние 4 цифры. 3) Полученное число переводится в десятичную запись и выводится на экран. Ответ: Тренировочный вариант от 16.11.2020 «Евгений Джобс»
Читать далее
Задание 2. Информатика. Апробация 10.03.2023
Миша заполнял таблицу истинности логической функции (F)
$$
(x to neg (y to z)) lor w,
$$
но успел заполнить лишь фрагмент из трёх различных её строк, даже не указав, какому столбцу таблицы соответствует каждая из переменных (w), (x), (y), (z).
| F | ||||
| 0 | 0 | 0 | ||
| 1 | 0 | |||
| 0 | 1 | 0 |
Определите, какому столбцу таблицы соответствует каждая из переменных (w), (x), (y), (z).
В ответе напишите буквы (w), (x), (y), (z) в том порядке, в котором идут соответствующие им столбцы (сначала буква, соответствующая первому столбцу; затем буква, соответствующая второму столбцу, и т.д.). Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно.
Пример. Функция (F) задана выражением ( neg x lor y), зависящим от двух переменных, а фрагмент таблицы имеет следующий вид:
В этом случае первому столбцу соответствует переменная (y), а второму — переменная (x). В ответе следует написать: (yx).
Решение:
Python
from itertools import permutations, product
def F(x, y, z, w):
return (x <= (not y <= z)) or w
for perm in permutations('xyzw'):
for a,b,c,d,e,f,g in product([0,1], repeat=7):
table = [[a,0,b,0,0],
[1,c,d,e,0],
[0,1,f,g,0]]
if table[0] == table[1]:
continue
if all(F(**dict(zip(perm,row))) == row[-1] for row in table):
print(*perm)
Ответ: (yzxw)
Урок посвящен тому, как решать 5 задание ЕГЭ по информатике
Содержание:
- Объяснение 5 задания
- Исполнитель для возведения в квадрат, деления, умножения и сложения
- Проверка числовой последовательности на соответствие алгоритму
- Разбор 5 задания
- Решение задания про алгоритм, который строит число R
- Решение заданий для темы Проверка числовой последовательности (Автомат)
5-е задание: «Анализ алгоритмов и исполнители»
Уровень сложности
— базовый,
Требуется использование специализированного программного обеспечения
— нет,
Максимальный балл
— 1,
Примерное время выполнения
— 4 минуты.
Проверяемые элементы содержания: Формальное исполнение алгоритма, записанного на естественном языке, или умение создавать линейный алгоритм для формального исполнителя с ограниченным набором команд
До ЕГЭ 2021 года — это было задание № 6 ЕГЭ
Типичные ошибки и рекомендации по их предотвращению:
«Как и в других заданиях базового уровня сложности, источником ошибок служит недостаточная внимательность и отсутствие или поверхностность самостоятельной проверки полученного ответа»
ФГБНУ «Федеральный институт педагогических измерений»
Проверка числовой последовательности на соответствие алгоритму
- для выполнения некоторых заданий необходимо повторить тему системы счисления;
- максимальное значение суммы цифр десятичного числа — это 18, так как 9 + 9 = 18;
- для проверки правильности переданного сообщения иногда вводится бит четности — дополнительный бит, которым дополняется двоичный код таким образом, чтобы в результате количество единиц стало четным: т.е. если в исходном сообщении количество единиц было четным, то добавляется 0, если нечетным — добавляется 1:
например: 310 = 112 после добавления бита четности: 110 ---- 410 = 1002 после добавления бита четности: 1001
например: 1112 - это 710 добавим 0 справа: 11102 - это 1410
Теперь будем рассматривать конкретные типовые экзаменационные варианты по информатике с объяснением их решения.
Разбор 5 задания
Задание демонстрационного варианта 2022 года ФИПИ
Плейлист видеоразборов задания на YouTube:
Решение задания про алгоритм, который строит число R
5_11:
На вход алгоритма подается натуральное число N. Алгоритм строит по нему новое число R следующим образом:
- Строится двоичная запись числа 4N.
- К этой записи дописываются справа еще два разряда по следующему правилу:
- складываются все цифры двоичной записи, и остаток от деления суммы на 2 дописывается в конец числа (справа). Например, запись 10000 преобразуется в запись 100001;
- над этой записью производятся те же действия — справа дописывается остаток от деления суммы цифр на 2.
Полученная таким образом запись является двоичной записью искомого числа R.
Укажите такое наименьшее число N, для которого результат работы алгоритма больше 129. В ответе это число запишите в десятичной системе счисления.
Типовые задания для тренировки
✍ Решение:
-
✎ Решение аналитическим способом:
- Заметим, что после выполнения второго пункта задания, будут получаться только четные числа! Наименьшим возможным четным числом, превышающим 129, является число 130. С ним и будем работать.
- Переведем 130 в двоичную систему счисления. Используя компьютер это можно сделать с помощью программистского режима калькулятора. Либо в консоли интерпретатора Python набрать
bin(130). Получим:
13010 = 100000102
в обратном порядке: было 1000001 -> стало 10000010 еще раз то же самое: было 100000 -> стало 1000001
int('100000',2).1000002 = 3210
✎ Решение с использованием программирования:
PascalAbc.Net:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
uses school; begin var n_ := 1; while True do begin var n := 4*n_; var ost := bin(n).CountOf('1') mod 2; // остаток при делении на 2 n := 2 * n + ost; //в двоичной с.с. добавляем разряд (*2) и остаток к этому разряру (+ost) ost := bin(n).CountOf('1') mod 2; // остаток при делении на 2 n := 2 * n + ost; if n > 129 then begin println(n_); break end; n_ += 1; end; end. |
Python:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
n_ = 1 while True: n = 4*n_ r = str(bin(n)) r = r[2:] for i in range(2): if r.count('1') % 2 == 0: r+='0' else: r+='1' n = int(r, base=2) if n > 129: print(n_) break n_+=1 |
Результат: 8
Для более детального разбора предлагаем посмотреть видео теоретического решения данного 5 задания ЕГЭ по информатике:
📹 YouTube здесь
📹 Видеорешение на RuTube здесь (теоретическое решение)
5_12: Демоверсия ЕГЭ 2018 информатика:
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
- Строится двоичная запись числа N.
- К этой записи дописываются справа ещё два разряда по следующему правилу:
- складываются все цифры двоичной записи числа N, и остаток от деления суммы на 2 дописывается в конец числа (справа). Например, запись 11100 преобразуется в запись 111001;
- над этой записью производятся те же действия – справа дописывается остаток от деления суммы её цифр на 2.
Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является двоичной записью искомого числа R.
Укажите минимальное число R, которое превышает число 83 и может являться результатом работы данного алгоритма. В ответе это число запишите в десятичной системе счисления.
✍ Решение:
- Заметим, что после второго пункта условия задачи получаются только четные числа (т.к. если число в двоичной системе заканчивается на 0, то оно четное). Таким образом, нас будут интересовать только четные числа.
- Наименьшим возможным числом, превышающим 83, является число 84. С ним и будем работать.
- Переведем 84 в двоичную систему счисления. На компьютерном ЕГЭ это можно сделать с помощью программистского режима калькулятора. Либо в консоли интерпретатора Python набрать
bin(84). Получим:
84 = 1010100
86 = 1010110
Результат: 86
Подробное решение данного 5 (раньше №6) задания из демоверсии ЕГЭ 2018 года смотрите на видео:
Видеорешение с программированием (PascalAnc.Net):
📹 YouTube здесь
📹 Видеорешение на RuTube здесь
Аналитическое видеорешение:
📹 Видеорешение на RuTube здесь -> аналитическое решение
5_18:
Алгоритм получает на вход натуральное число N > 1 и строит по нему новое число R следующим образом:
1. Строится двоичная запись числа N.
2. Подсчитывается количество нулей и единиц в полученной записи. Если их количество одинаково, в конец записи добавляется её последняя цифра. В противном случае в конец записи добавляется цифра, которая встречается реже.
3. Шаг 2 повторяется ещё два раза.
4. Результат переводится в десятичную систему счисления.
При каком наименьшем исходном числе N > 65 в результате работы алгоритма получится число, кратное 4?
Типовые задания для тренировки
✍ Решение:
-
✎ Решение с использованием программирования:
PascalAbc.Net:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
uses school; begin var n_ := 1; while True do begin var n := n_; for var i := 1 to 3 do begin if bin(n).CountOf('1') = bin(n).CountOf('0') then // сравниваем if n mod 2 = 0 then // если четное, то в конце 0 n := 2 * n // добавляем разряд = 0 else n := 2 * n + 1 // иначе добавляем разряд = 1 else if bin(n).CountOf('1') > bin(n).CountOf('0') then n := 2 * n else n := 2 * n + 1 end; if (n_ > 65) and (n mod 4 = 0) then begin println(n_); break end; n_ += 1; end; end. |
Python:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
n_ = 1 while True: n = n_ r = str(bin(n)) r = r[2:] for i in range(3): if r.count('1') == r.count('0'): r+=r[-1] elif r.count('1')>r.count('0'): r+='0' else: r+='1' n = int(r, base=2) if n_ > 65 and n % 4 == 0 : print(n_,n) break n_+=1 |
Ответ: 79
5_19:
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1) Число N переводим в двоичную запись.
2) Инвертируем все биты числа кроме первого.
3) Переводим в десятичную запись.
4) Складываем результат с исходным числом N.
Полученное число является искомым числом R.
Укажите наименьшее нечетное число N, для которого результат работы данного алгоритма больше 99. В ответе это число запишите в десятичной системе счисления.
✍ Решение:
-
✎ Решение с использованием программирования:
PascalAbc.Net:
Python:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
n_ = 1 while True: n = n_ r = str(bin(n)) r = r[2:] for i in range(1,len(r)): if r[i]== '0': r=r[:i]+'1'+r[i+1:] else: r=r[:i]+'0'+r[i+1:] n = int(r, base=2) n+=n_ if n > 99 and n_ % 2 != 0 : print(n_,n) break n_+=1 |
Ответ: 65
5_13:
На вход алгоритма подается натуральное число N. Алгоритм строит по нему новое число R следующим образом:
1. Строится двоичная запись числа N.
2. К этой записи дописываются справа еще два разряда по следующему правилу:
— если N делится нацело на 4, в конец числа (справа) дописывается сначала ноль, а затем еще один ноль;
— если N при делении на 4 дает в остатке 1, то в конец числа (справа) дописывается сначала ноль, а затем единица;
— если N при делении на 4 дает в остатке 2, то в конец числа (справа) дописывается сначала один, а затем ноль;
— если N при делении на 4 дает в остатке 3, в конец числа (справа) дописывается сначала один, а затем еще одна единица.
Например, двоичная запись 1001 числа 9 будет преобразована в 100101, а двоичная запись 1100 числа 12 будет преобразована в 110000.
Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является двоичной записью числа R — результата работы данного алгоритма.
Укажите максимальное число R, которое меньше 100 и может являться результатом работы данного алгоритма. В ответе это число запишите
в десятичной системе счисления
.
Типовые задания для тренировки
✍ Решение:
- Поскольку требуется найти наибольшее число, то возьмем наибольшее из возможных чисел, которые < 100 — это число 99. Переведем его в двоичную систему. На компьютерном ЕГЭ это можно сделать с помощью программистского режима калькулятора. Либо в консоли интерпретатора Python набрать
bin(99). Получим:
99 = 11000112
1100011 N
int('11000',2)11000 = 2410
98 = 11000102 : 10 в конце добавлено алгоритмом N = 110002 = 2410 24 делится нацело на 4. По алгоритму в конце должно быть 00, а мы имеем 10 98 - не подходит 97 = 11000012 : 01 в конце добавлено алгоритмом N = 110002 = 2410 24 делится нацело на 4. По алгоритму в конце должно быть 00, а мы имеем 01 97 - не подходит 96 = 11000002 : 00 в конце добавлено алгоритмом N = 110002 = 2410 24 делится нацело на 4. По алгоритму в конце должно быть 00, у нас 00 - верно! 96 - подходит!
Результат: 96
Предлагаем посмотреть видео теоретического решения:
📹 YouTube здесь
📹 Видеорешение на RuTube здесь (теоретическое решение)
5_14:
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом:
1. Строится двоичная запись числа N.
2. К этой записи дописывается (дублируется) последняя цифра.
3. Затем справа дописывается бит чётности: 0, если в двоичном коде полученного числа чётное число единиц, и 1, если нечётное.
4. К полученному результату дописывается ещё один бит чётности.
Полученная таким образом запись (в ней на три разряда больше, чем в записи исходного числа N) является двоичной записью искомого числа R.
Укажите минимальное число R, большее 114, которое может быть получено в результате работы этого алгоритма. В ответе это число запишите в десятичной системе.
Типовые задания для тренировки
✍ Решение:
-
✎ Решение аналитическим способом:
- В постановке задания задано R > 114. R — это результат работы алгоритма. Для того, чтобы определить наименьшее возможно N, переведем сначала 114 в двоичную систему счисления и выделим в нем три добавленные по алгоритму цифры (перевод можно выполнить в консоли Питона:
bin(114))
114 = 11100102
2. В полученное числе N = 1110 дублируется последняя цифра и получается 11100.
3. Поскольку число единиц (3) — нечетное, то справа добавляется 1: 111001.
4. Т.к. в полученном наборе цифр четное число единиц, то добавляем 0: 1110010
1. N = 1110 + 1 = 1111 Работа по алгоритму: 2. 11111 - дублирование последней цифры. 3. 111111 - справа дописываем единицу, т.к. в полученном числе 5 единиц (нечетное) 4. 1111110 - дописываем ноль, т.к. в полученном числе четное число единиц.
int('1111110',2)):min R = 11111102 = 12610
✎ Решение с использованием программирования:
PascalAbc.Net:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
uses school; begin var n_ := 1; while True do begin var n := n_; // дублирвание последней цифры if n mod 2 = 0 then // если четное, то в конце 0 n := 2 * n // добавляем разряд = 0 else n := 2 * n + 1; // иначе добавляем разряд = 1 for var i := 1 to 2 do begin if bin(n).CountOf('1') mod 2 = 0 then n := 2 * n // добавляем разряд = 0 else n := 2 * n + 1 // иначе добавляем разряд = 1 end; if n > 114 then begin println(n); break end; n_ += 1; end; end. |
Python:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
n_ = 1 while True: n = n_ r = str(bin(n)) # строковое значение r = r[2:] # убираем 0b r=r+r[-1] for i in range (2): if r.count('1') % 2 == 0: r = r+'0' else: r = r+'1' r = int(r,base = 2) # в 10-ю с.с. if r > 114: print(r) break n_+= 1 |
Результат: 126
5_17: Досрочный вариант 1 ЕГЭ по информатике 2020, ФИПИ:
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число следующим образом.
1) Строится двоичная запись числа N.
2) К этой записи дописываются справа ещё два разряда по следующему правилу:
— если N чётное, в конец числа (справа) дописываются два нуля, в противном случае справа дописываются две единицы.
Например, двоичная запись 1001 числа 9 будет преобразована в 100111.
Полученная таким образом запись (в ней на два разряда больше, чем в записи исходного числа N) является двоичной записью числа – результата работы данного алгоритма.
Укажите минимальное число N, для которого результат работы алгоритма будет больше 134. В ответе это число запишите в десятичной системе счисления.
Ответ: 33
Видео -> теоретическое решение
📹 Видеорешение на RuTube здесь -> теоретическое решение
5_16:
Автомат обрабатывает целое число N (0 ≤ N ≤ 255) по следующему алгоритму:
1. Строится восьмибитная двоичная запись числа N.
2. Все цифры двоичной записи заменяются на противоположные (0 на 1, 1 на 0).
3. Полученное число переводится в десятичную запись.
4. Из нового числа вычитается исходное, полученная разность выводится на экран.
Какое число нужно ввести в автомат, чтобы в результате получилось 45?
✍ Решение:
- Результатом выполнения алгоритма является число 45. Алгоритм работает в двоичной системе счисления, поэтому переведем число:
45 = 001011012
1 - 0, с учетом, что у разряда с единицей заняли. То есть бит:. _ 1 _ _ _ _ _ _ _ N инвертируемое = 0 _ _ _ _ _ _ _ N исходное 0 0 1 0 1 1 0 1 = 45 результат
1 - 0 не может в результате дать 0, так как у следующей слева единицы мы заняли. Значит, 0 - 1. Чтобы не получить единицу в ответе, необходимо у нуля тоже занять:. . _ 1 0 _ _ _ _ _ _ = 0 1 _ _ _ _ _ _ 0 0 1 0 1 1 0 1 = 45 результат
1 - 0 не может быть, так как у следующего слева нуля мы заняли.Значит
0 - 1. То есть как раз чтобы получить единицу (10 - 1 = 1), занимаем у следующих слева разрядов:. . _ 1 0 0 _ _ _ _ _ = 0 1 1 _ _ _ _ _ 0 0 1 0 1 1 0 1 = 45 результат
0 - 1 не может быть. Значит, чтобы получить в результате ноль, берем 1 - 0, у единицы должно быть занято.. . . _ 1 0 0 1 _ _ _ _ = 0 1 1 0 _ _ _ _ 0 0 1 0 1 1 0 1 = 45 результат
1 - 0 не может быть. Так как слева у единицы занято. Значит, чтобы получить в результате 1, берем 0 - 1:. . . _ 1 0 0 1 0 _ _ _ = 0 1 1 0 1 _ _ _ 0 0 1 0 1 1 0 1 = 45 результат
0 - 1 не даст в ответе единицу, значит, имеем 1 - 0:. . . _ 1 0 0 1 0 1 _ _ = 0 1 1 0 1 0 _ _ 0 0 1 0 1 1 0 1 = 45 результат
0 - 1 не может быть, значит, 1 - 0. Чтобы получить в результате 0, необходимо, чтобы у 1 было занято:. . . . _ 1 0 0 1 0 1 1 _ = 0 1 1 0 1 0 0 _ 0 0 1 0 1 1 0 1 = 45 результат
0 - 1:. . . . _ 1 0 0 1 0 1 1 0 = 0 1 1 0 1 0 0 1 0 0 1 0 1 1 0 1 = 45 результат
01101001 = 10510
Ответ: 105
Смотрите теоретический разбор задания на видео и подписывайтесь на наш канал:
📹 YouTube здесь
📹 Видеорешение на RuTube здесь -> теоретическое решение
Решение заданий для темы Проверка числовой последовательности (Автомат)
5_7:
Автомат получает на вход четырёхзначное число. По этому числу строится новое число по следующим правилам.
- Складываются первая и вторая, а также третья и четвёртая цифры исходного числа.
- Полученные два числа записываются друг за другом в порядке убывания (без разделителей).
Пример. Исходное число: 3165. Суммы: 3 + 1 = 4; 6 + 5 = 11. Результат: 114.
Укажите наименьшее число, в результате обработки которого, автомат выдаст число 1311.
✍ Решение:
Результат: 2949
Процесс теоретического решения данного 5 задания представлен в видеоуроке:
📹 YouTube здесь
📹 Видеорешение на RuTube здесь -> теоретическое решение
5_8:
Автомат получает на вход четырехзначное число. По нему строится новое число по следующим правилам:
- Складываются первая и вторая, затем вторая и третья, а далее третья и четвёртая цифры исходного числа.
- Полученные три числа записываются друг за другом в порядке возрастания (без разделителей).
Пример: Исходное число: 7531. Суммы: 7+5=12; 5+3=8; 3+1=4. Результат: 4812.
✍ Решение:
2, 5, 129:12=9+3
93**
9320.Результат: 9320
Подробное теоретическое решение данного 5 задания можно просмотреть на видео:
📹 YouTube здесь
📹 Видеорешение на RuTube здесь -> теоретическое решение
5_9:
Автомат получает на вход два двузначных шестнадцатеричных числа. В этих числах все цифры не превосходят цифру 6 (если в числе есть цифра больше 6, автомат отказывается работать). По этим числам строится новое шестнадцатеричное число по следующим правилам:
- Вычисляются два шестнадцатеричных числа — сумма старших разрядов полученных чисел и сумма младших разрядов этих чисел.
- Полученные два шестнадцатеричных числа записываются друг за другом в порядке убывания (без разделителей).
Пример: Исходные числа: 25, 66. Поразрядные суммы: 8, B. Результат: B8.
Какие из предложенных чисел могут быть результатом работы автомата?
Перечислите в алфавитном порядке буквы, соответствующие этим числам, без пробелов и знаков препинания.
Варианты:
A) 127
B) C6
C) BA
D) E3
E) D1
✍ Решение:
Проанализируем все варианты:
12 в шестнадцатеричной системе записывается как С.С6 разбиваем на 12 и 6. Число может быть результатом работы автомата. Исходные числа, например, 35 и 37BA разбиваем на 11 и 10. Число может быть результатом работы автомата. Исходные числа, например, 55 и 56E3 разбиваем на 14 и 3. 14=6+8, но цифры большие 6 не принимает автомат. Не подходит.D1 разбиваем на 13 и 1. 13=6+7, но цифры большие 6 не принимает автомат. Не подходит.Результат: BC
Подробное теоретическое решение данного 5 задания можно просмотреть на видео:
📹 YouTube здесь
📹 Видеорешение на RuTube здесь -> теоретическое решение
5_10: Задание 5 ГВЭ 11 класс 2018 год ФИПИ
Автомат получает на вход два двузначных шестнадцатеричных числа. В этих числах все цифры не превосходят цифру 7 (если в числе есть цифра больше 7, автомат отказывается работать). По этим числам строится новое шестнадцатеричное число по следующим правилам.
1. Вычисляются два шестнадцатеричных числа: сумма старших разрядов полученных чисел и сумма младших разрядов этих чисел.
2. Полученные два шестнадцатеричных числа записываются друг за другом в порядке возрастания (без разделителей).
Пример. Исходные числа: 66, 43. Поразрядные суммы: A, 9. Результат: 9A.
Определите, какое из предложенных чисел может быть результатом работы автомата.
Варианты:
1) AD
2) 64
3) CF
4) 811
✍ Решение:
Теоретическое решение 4 задания ГВЭ 11 класса смотрите на видео:
📹 YouTube здесь
📹 Видеорешение на RuTube здесь -> теоретическое решение
5_15:
Автомат получает на вход натуральное число X. По этому числу строится трёхзначное число Y по следующим правилам:
1. Первая цифра числа Y (разряд сотен) – остаток от деления X на 7.
2. Вторая цифра числа Y (разряд десятков) – остаток от деления X на 2.
3. Третья цифра числа Y (разряд единиц) – остаток от деления X на 5.
Пример. Исходное число: 55. Остаток от деления на 7 равен 6; остаток от деления на 2 равен 1; остаток от деления на 5 равен 0. Результат работы автомата: 610.
Сколько существует двузначных чисел, при обработке которого автомат выдаёт результат 312?
Типовые задания для тренировки
✍ Решение:
- Обозначим каждую цифру числа Y согласно заданию:
Y = 3 1 2 x mod 7 x mod 2 x mod 5
1. x mod 2 = 1 => значит, X — нечетное число
2. x mod 5 = 2 => значит, X — либо ?2, либо ?7.
3. раз x — нечетное, то из пред. пункта получаем x = ?7
4. x mod 7 = 3 => переберем все варианты:
97 - не подходит, 87 - подходит (87 / 7 = 12, остаток = 3) 77 - не подходит, 67 - не подходит, 57 - не подходит, 47 - не подходит, 37 - не подходит, 27 - не подходит, 17 - подходит (17 / 7 = 2, остаток = 3)
Результат: 2
Тренировочный вариант и ответы с решением пробник ЕГЭ 2023 по информатике 11 класс ФИПИ состоит из 27 заданий с кратким ответом, выполняемых с помощью компьютера. На выполнение экзаменационной работы по информатике и ИКТ отводится 3 часа 55 минут (235 минут).
Скачать тренировочный вариант с ответами
Скачать файлы для варианта
Другие тренировочные варианты
ege_2023_informatika_23_02
Разбор варианта. ЕГЭ по Информатике 2023
1. На рисунке справа схема дорог Н-ского района изображена в виде графа, в таблице содержатся сведения о длинах этих дорог (в километрах). Так как таблицу и схему рисовали независимо друг от друга, то нумерация населённых пунктов в таблице никак не связана с буквенными обозначениями на графе. В таблице в левом столбце указаны номера пунктов, откуда совершается движение, в первой строке – куда. Определите минимально возможную длину пути BDE. Передвигаться можно только по указанным дорогам.
2. Логическая функция F задаётся выражением w ∨ (y → z) ∧ x. На рисунке приведён частично заполненный фрагмент таблицы истинности функции F, содержащий неповторяющиеся строки. Определите, какой столбец в таблице каждой переменной в выражении. В ответе напишите буквы x, y, z, w в том порядке, в котором идут соответствующие им столбцы. Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно.
3. В файле приведён фрагмент базы данных «Продукты» о поставках товаров в магазины районов города. База данных состоит из трёх таблиц. Таблица «Движение товаров» содержит записи о поставках товаров в магазины в течение первой декады августа 2021 г., а также информацию о проданных товарах. Поле Тип операции содержит значение Поступление или Продажа, а в соответствующее поле Количество упаковок внесена информация о том, сколько упаковок товара поступило в магазин или было продано в течение дня. Заголовок таблицы имеет следующий вид.
4. Все заглавные буквы русского алфавита закодированы неравномерным двоичным кодом, в котором никакое кодовое слово не является началом другого кодового слова. Это условие обеспечивает возможность однозначной расшифровки закодированных сообщений. Известно, что слово СПОРТЛОТО кодируется как 10010100110011110000100. Какой код соответствует букве Л, если известно, что коды подбирались под минимальную длину заданного слова.
5. На вход алгоритма подаётся натуральное число N большее 4. Алгоритм строит по нему новое число R следующим образом. 1. Строится двоичная запись числа N. 2. Далее эта запись обрабатывается по следующему правилу: а) если количество цифр в двоичной записи числа нечётное, то центральный бит двоичного представления инвертируется; б) если количество цифр в двоичной записи числа чётное, то два центральных бита двоичного представления инвертируется; Например, для исходного числа 610 = 1102 результатом является число 1002 = 410, а для исходного числа 910 = 10012 результатом является число 11112 = 1510. Укажите минимальное число N, после обработки которого с помощью этого алгоритма получается число R, большее 100 и меньшее N. В ответе запишите это число в десятичной системе счисления.
6. Исполнитель Черепаха действует на плоскости с декартовой системой координат. В начальный момент Черепаха находится в начале координат, её голова направлена вдоль положительного направления оси ординат, хвост опущен. При опущенном хвосте Черепаха оставляет на поле след в виде линии. В каждый конкретный момент известно положение исполнителя и направление его движения. У исполнителя существует 5 команд: Поднять хвост, означающая переход к перемещению без рисования; Опустить хвост, означающая переход в режим рисования; Вперёд n (где n – целое число), вызывающая передвижение Черепахи на n единиц в том направлении, куда указывает её голова; Назад n (где n – целое число), вызывающая передвижение в противоположном голове направлении; Направо m (где m – целое число), вызывающая изменение направления движения на m градусов по часовой стрелке, Налево m (где m – целое число), вызывающая изменение направления движения на m градусов против часовой стрелки. Запись Повтори k [Команда1 Команда2 … КомандаS] означает, что последовательность из S команд повторится k раз.
7. Спутник каждую секунду делает снимок 20 на 7.6 километра. Размер пикселя на местности 0.65х0.65 метра. Цвет пикселя выбирается из палитры в 256 цветов. Оцените объем памяти (в МБ) для хранения одного изображения. Сжатие не производится. Ответ округлите до большего целого числа.
8. Определите количество десятизначных чисел, записанных в восьмеричной системе счисления, в записи которых ровно пять цифры 7 и при этом никакая нечетная цифра не стоит рядом с цифрой 7.
9. Откройте файл электронной таблицы, содержащей в каждой строке шесть натуральных чисел. Определите количество строк таблицы, содержащих числа, для которых выполнено строго одно из условий: – в строке есть повторяющиеся числа; – в строке есть ровно три нечетных числа. В ответе запишите только число.
10. Текст произведения Ника Горькавого «Теория Катастроф» представлен в виде текстового файла. Откройте файл и определите, сколько бифуркационных технологий содержал итоговый список. В ответе запишите только число.
11. Вася решил закодировать персональные данные всех 1347 учеников всей школы. Для каждого ученика был сформирован ID из нескольких полей: номер класса, буква (а,б,в,г,д), пол, день и месяц рождения, номер имени по таблице имен (всего 103), номер фамилии по таблице фамилий (всего 733). Сперва Вася для каждого поля выделил минимальное количество байт. Затем попробовал закодировать все поля непрерывной битовой строкой и для каждого ID выделил минимальное количество байт. Сколько байт сэкономил Вася во втором случае для кодирования всех учеников школы?
12. Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды, в обеих командах v и w обозначают цепочки цифр) А) заменить(v, w). Эта команда заменяет в строке первое слева вхождение цепочки v на цепочку w. Например, выполнение команды заменить(111, 27) преобразует строку 05111150 в строку 0512750. Если в строке нет вхождений цепочки v, то выполнение команды заменить(v, w) не меняет эту строку. Б) нашлось(v). Эта команда проверяет, встречается ли цепочка v в строке исполнителя Редактор. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь». Строка исполнителя при этом не изменяется. Цикл выполняется, пока условие истинно.
13. На рисунке представлена схема дорог, связывающих города А, Б, В, Г, Д, Е, Ж, З, И, К, Л. По каждой дороге можно двигаться только в одном направлении, указанном стрелкой. Определите количество различных путей ненулевой длины, которые начинаются и заканчиваются в городе Е, не содержат этот город в качестве промежуточного пункта и проходят через промежуточные города не более одного раза.
14. Дано выражение 12×4536 + 1×12345 В записи чисел переменной x обозначена неизвестная цифра из допустимого алфавита для указанных систем счисления. Определите наибольшее значение x, при котором значение данного арифметического выражения кратно 13. Для найденного значения x вычислите частное от деления значения арифметического выражения на 13 и укажите его в ответе в десятичной системе счисления.
15. На числовой прямой даны два отрезка: B = [23;37] и C = [41;73]. Укажите наименьшую длину такого отрезка А, для которого логическое выражение ¬((¬(x ∈ B) → (x ∈ C)) → (x ∈ A)) ложно (т.е. принимает значение 0) при любом значении переменной x.
16. Обозначим частное от деления натурального числа a на натуральное число b как a//b, а остаток как a%b. Например, 17//3 = 5, 17%3 = 2. Алгоритм вычисления значения функции F(n), где n – целое неотрицательное число, задан следующими соотношениями: F(n) = n при n < 10; F(n) = F(n//10) + F(n%10) , если 10 ⩽ n < 1000; F(n) = F(n//1000) — F(n%1000) , если n ⩾ 1000. Определите количество значений n, не превышающих 106 , для которых F(n) = 0?
17. В файле содержится последовательность целых чисел по модулю менее 10000. а) рассматриваются только пары в которых строго одно число оканчивается на 7. б) квадрат разности элементов пары меньше модуля разности квадратов хотя бы одной пары (отвечающей условию а). В ответе запишите два числа: сначала количество найденных пар, затем минимальный квадрат разности. В данной задаче под парой подразумевается два идущих подряд элемента последовательности.
18. Квадрат разлинован на N×N клеток (1 < N < 30). Роботу нужно перейти через поле с севера (верхняя строка) на юг (нижняя строка). Он может начать переход с любой клетки первой строки и закончить на любой клетке нижней строки. С каждым шагом Робот переходит в следующую строку и может за одно перемещение попасть в одну из трех клеток следующей строки (на клетку прямо вниз или на одну из клеток слева/справа от неё). Ходы только влево или вправо (без смены строки), назад (в предыдущую строку) и за границы поля запрещены. В каждой клетке поля лежит монета достоинством от 1 до 100. Робот собирает все монеты по пройденному маршруту. Определите максимальную возможную денежную сумму и количество монет с чётным значением, которую может собрать Робот, пройдя с северной границы поля (сверху) до южной границы поля (снизу). В ответе укажите два числа: сначала максимальную сумму, затем количество монет с четным значением по маршруту с максимальной суммой.
19. Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежат две кучи камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может добавить в меньшую кучу один или три камня. Изменять количество камней в большей куче не разрешается. Игра завершается, когда количество камней в кучах становится равным. Победителем считается игрок, сделавший последний ход, то есть первым сравнявшим количество камней в двух кучах. Игроки играют рационально, т.е. без ошибок. В начальный момент в первой куче было 13 камней, а во второй – S камней, 1 ≤ S ≤ 23? Укажите такое минимальное значение S, при котором Петя не может выиграть за один ход, но при любом ходе Пети Ваня может выиграть своим первым ходом.
20. Для игры, описанной в задании 19, найдите два наименьших значения S, при которых у Пети есть выигрышная стратегия, причём одновременно выполняются два условия: – Петя не может выиграть за один ход; – Петя может выиграть своим вторым ходом независимо от того, как будет ходить Ваня. Найденные значения запишите в ответ в порядке возрастания
21. Для игры, описанной в задании 19, найдите два значения S, при котором одновременно выполняются три условия: – у Вани есть выигрышная стратегия, позволяющая ему выиграть первым или вторым ходом при любой игре Пети; – у Вани нет стратегии, которая позволит ему гарантированно выиграть первым ходом; – Петя может выбирать, каким ходом выиграет Ваня;
22. В файле содержится информация о совокупности N вычислительных процессов, которые могут выполняться параллельно или последовательно. Будем говорить, что процесс B зависит от процесса A, если для выполнения процесса B необходимы результаты выполнения процесса A. В этом случае процессы могут выполняться только последовательно. Информация о процессах представлена в файле в виде таблицы. В первом столбце таблицы указан идентификатор процесса (ID), во втором столбце таблицы – время его выполнения в миллисекундах, в третьем столбце перечислены с разделителем «;» ID процессов, от которых зависит данный процесс. Если процесс является независимым, то в таблице указано значение 0. Определите максимальное количество процессов, которые завершатся за 73 мс, при условии, что все независимые друг от друга процессы могут выполняться параллельно.
23. У исполнителя Кузнечик есть 4 команды: 1. Прибавить 1 2. Прибавить 3 3. Вычесть 1 4. Вычесть 3 Сколько существует программ, для которых при исходном числе 42 результатом будет являться число 42, при этом траектория вычисления содержит только числа от 40 до 49, притом не более 1 раза, т.е. без повторов.
24. Текстовый файл содержит строку из десятичных цифр и букв латинского алфавита. Найдите минимальную длину подстроки включающей все шестнадцатеричные цифры. Строка может включать повторяющиеся цифры и другие символы. В ответе укажите найденную длину..
25. Назовём маской числа последовательность цифр, в которой также могут встречаться следующие символы: символ «?» означает ровно одну произвольную цифру; символ «*» означает любую последовательность цифр произвольной длины; в том числе «*» может задавать и пустую последовательность. Например, маске 123*4?5 соответствуют числа 123405 и 12300405. Найдите все натуральные числа, не превышающие 1010, которые соответствуют маске 1?1?1?1*1 и при этом без остатка делятся на 2023, а сумма цифр числа равна 22. В ответе запишите все найденные числа в порядке возрастания. Количество строк в таблице для ответа избыточно.
26. В сетевом приложении реализован кэш размером V МБ для файлов размером от 1 до 999 МБ. Пользователи запрашивают файлы в порядке, заданном в исходном файле. Алгоритм кэширования сперва заполняет весь кэш. Для размещение следующего файла кэш нужно освободить. Для этого из кэша удаляется один подходящий файл, так чтобы свободное место было минимальным и достаточным для размещения нового файла. Если удаление даже самого большого файла не освобождает необходимого места, то удаляется самый большой файл и алгоритм рекурсивно повторяется, пока не будет достаточного места для нового файла.
27. Дана последовательность натуральных чисел. Расстояние между элементами последовательности – это разность их порядковых номеров. Например, если два элемента стоят в последовательности рядом, расстояние между ними равно 1, если два элемента стоят через один – расстояние равно 2 и т. д. Назовём тройкой любые три числа из последовательности, расстояние между которыми не меньше 17. Необходимо определить количество троек, в которых сумма чисел в тройке делится без остатка на 7717.














