Сколько существует программ для которых при исходном числе 1 результатом является число 20

Исполнитель преобразует число на экране. У исполнителя есть две команды, которым присвоены номера:

1. Прибавить 1

2. Умножить на 2

Первая команда увеличивает число на экране на 1, вторая умножает его на 2.

Программа для исполнителя – это последовательность команд.

Сколько существует программ, для которых при исходном числе 1 результатом является число 20 и при этом траектория вычислений содержит число 10?

Траектория вычислений программы – это последовательность результатов выполнения всех команд программы.

Например, для программы 121 при исходном числе 7 траектория будет состоять из чисел 8, 16, 17.

комментировать
в избранное
vdtes­ t [29.9K]
8 месяцев назад

Составим все возможные программы, для числа 1,которые дают в результате 20 и содержат число 10 в траектории вычислений, а затем посчитаем их количество.

  1. 12122:[2, 4, 5, 10, 20]
  2. 22122:[2, 4, 5, 10, 20]
  3. 111122:[2, 3, 4, 5, 10, 20]
  4. 122112:[2, 4, 8, 9, 10, 20]
  5. 211122:[2, 3, 4, 5, 10, 20]
  6. 222112:[2, 4, 8, 9, 10, 20]
  7. 1112112:[2, 3, 4, 8, 9, 10, 20]
  8. 2112112:[2, 3, 4, 8, 9, 10, 20]
  9. 11211112:[2, 3, 6, 7, 8, 9, 10, 20]
  10. 21211112:[2, 3, 6, 7, 8, 9, 10, 20]
  11. 121111112:[2, 4, 5, 6, 7, 8, 9, 10, 20]
  12. 221111112:[2, 4, 5, 6, 7, 8, 9, 10, 20]
  13. 1111111112:[2, 3, 4, 5, 6, 7, 8, 9, 10, 20]
  14. 2111111112:[2, 3, 4, 5, 6, 7, 8, 9, 10, 20]
  15. 12121111111111:[2, 4, 5, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
  16. 22121111111111:[2, 4, 5, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
  17. 111121111111111:[2, 3, 4, 5, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
  18. 122111111111111:[2, 4, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
  19. 211121111111111:[2, 3, 4, 5, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
  20. 222111111111111:[2, 4, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
  21. 1112111111111111:[2, 3, 4, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
  22. 2112111111111111:[2, 3, 4, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
  23. 11211111111111111:[2­ , 3, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
  24. 21211111111111111:[2­ , 3, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
  25. 121111111111111111:[­ 2, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
  26. 221111111111111111:[­ 2, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
  27. 1111111111111111111:­ [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
  28. 2111111111111111111:­ [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
Читайте также:
Понятие мощности и производственной программы

Траектория вычислений указана в квадратных скобках.

№23 2023 досрочного варианта ЕГЭ по информатике

Ответ: Всего существует 28 программ, для которых при исходном числе 1 результатом является число 20 и при этом траектория вычислений содержит число 10

Источник: www.bolshoyvopros.ru

Разбор 23 задания демоверсия егэ по информатике 2019 ФИПИ : траектория программы содержит число

Особенности решения задачи № 23 единого государственного экзамена

Сафонова Людмила Анатольевна

Мордовский государственный педагогический университет имени М.Е. Евсевьева

Изучение алгоритмов имеет большую практическую значимость. Это связано с тем, что разработка алгоритма предполагает подробное описание каждого шага решения задачи. В едином государственном экзамене по информатике исполнителям отводится три задачи (№ 12, 18, 23).

Рассмотрим задачу № 23 на выполнение алгоритмов для исполнителей, её формулировка:

Исполнитель преобразует число на экране.

У исполнителя есть две команды, которым присвоены номера:

Первая команда увеличивает число на экране на 1, вторая умножает его на 2. Программа для исполнителя – это последовательность команд.

Сколько существует программ, для которых при исходном числе 1 результатом является число 20 и при этом траектория вычислений содержит число 10?

Траектория вычислений программы – это последовательность результатов выполнения всех команд программы. Например, для программы 121 при исходном числе 7 траектория будет состоять из чисел 8, 16, 17.

Можно запрограммировать данное решение или попытаться перечислить все пути в явном виде, но это слишком трудоёмко и скорее всего, в итоге приведёт к ошибке. Данная задача имеет достаточно простое теоретическое решение, то есть решение на бумаге.

Данная задача взята из Дэмо-версии 2021 год [1]. В задаче речь идет об исполнителе, который может исполнять две команды: первая – увеличить число на 1, вторая – умножить это число на 2. Нам необходимо найти количество команд, которые из числа 1 получают результатом число 20, при этом траектория обязательно содержит число 10.

Читайте также:
Сканер hp laserjet 3055 установить программу для сканирования

Что это значит: траектория вычисления обязательно содержит какое-то число? Смотрите, если мы стартуем с 1 и выполняем команду № 2 (умножить на 2), то есть 1*2 получаем 2. Исполнитель выполняет опять ту же команду и полученную 2 (двойку) тоже умножает на 2 (2*2=4). Дальше можно выполнить команду № 1 и прибавить 1 (4+1=5). Теперь 5 умножим на 2 (5*2=10). Тем самым мы получаем 10.

Согласно условия задачи, это число мы всегда должны иметь ввиду при подсчете траектории вычислений. Далее мы 10 умножаем на 2 и получаем требуемое число 20.

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

Как это сделать? Достаточно просто.

Необходимо рассмотреть два случая:

1) мы пойдем с вами от 1 до 10, тогда в результате вычислений мы обязательно получим число 10 и включим её в траекторию;

2) мы начнем от 10 и дойдем до 20.

Таким образом, у нас получится первый набор команд, ведущий нас от 1 до 10 и второй – от 10 до 20.

Если, например, у нас окажется 5 наборов команд для случая от 1 до 10, и 4 набора команд от 10 до 20, то общее количество наборов мы подсчитаем, перемножив 5 и 4. То есть, получится 5*4 = 20 разных вариантов команд.

Итак, давайте вернемся к нашей задаче и посчитаем, сколько у нас таких команд будет, если мы пойдем от 1 до 10. Нарисуем динамическую таблицу. Почему она динамическая вы сейчас поймете.

Разбор демоверсии ЕГЭ по информатике 2022 (22-27 Задание)

Продолжаем анализ демонстрационного варианта ЕГЭ по информатике 2022.

В этой статье разберём с 22-ого по 27 задание.

ЕГЭ по информатике 2022 будет повержено!

Ниже на четырёх языках программирования записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа: L и M. Укажите наибольшее число x, при вводе которого алгоритм печатает сначала 4, а потом 5.

Читайте также:
Программа для сведения музыки на мак

ЕГЭ по информатике демоверсия 2022 - задание 12

Решение данного задания будет похоже на решение 6 задания из ЕГЭ по информатике 2022.

С помощью перебора на языке Python найдём при каких значениях переменная L=4 И переменная M=5 в конце программы.

for i in range(1, 1000): X=i Q=9 L=0 while X >= Q: L = L + 1 X = X — Q M=X if M < L: M = L L = X if L==4 and M==5: print(i)

Наибольшее значение равно 49.

Исполнитель преобразует число на экране.

У исполнителя есть две команды, которым присвоены номера:

1. Прибавить 1 2. Умножить на 2

Программа для исполнителя – это последовательность команд. Сколько существует программ, для которых при исходном числе 1 результатом является число 20, и при этом траектория вычислений содержит число 10?

Траектория вычислений программы – это последовательность результатов выполнения всех команд программы. Например, для программы 121 при исходном числе 7 траектория будет состоять из чисел 8, 16, 17.

Решим задачу c помощью шаблона на языке Python.

def F(x, y): if x == y: return 1 if x > y: return 0 if x < y: return F(x+1, y) + F(x*2, y) print(F(1, 10)*F(10, 20))

Число x, это то число, с которым мы работаем. Число y — это куда нужно прийти.

Если число x достигло пункта назначения, то возвращаем 1. Если оно перескочило y, то возвращаем 0. А если ещё не дошло до y, то продолжаем вычисления с помощью рекурсии.

У нас число 10 обязательное, поэтому разбиваем функцию следующим образом F(1, 10)*F(10, 20), через умножение. Это и будет ответ. Получается 28.

Текстовый файл состоит из символов P, Q, R и S.

Определите максимальное количество идущих подряд символов в прилагаемом файле, среди которых нет идущих подряд символов P. Для выполнения этого задания следует написать программу.


Решение:

Напишем решение на языке Python.

f=open(’24.txt’) s=f.read() count=1 mx=0 for i in range(0, len(s)-1): if s[i]==’P’ and s[i+1]==’P’: count=1 else: count=count+1 mx = max(mx, count) print(mx)

Подсчитываем символы, пока не встретилась комбинация двух P подряд. Как только встретилась данная комбинация, сбрасываем счётчик на 1. Здесь мы сбрасываем счётчик на значение 1, чтобы учесть один символ, которые находится в самой комбинации PP. И в начале мы тоже устанавливаем счётчик в значение 1 по этой же причине.

ЕГЭ по информатике демоверсия 2022 - задание 24 решение

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru