У исполнителя Вычислитель две команды, которым присвоены номера
Рабочая тетрадь по Информатике 8 класс Босова
of your page —>
Задание 102. У исполнителя Вычислитель две команды, которым присвоены номера:
1 — вычесть 1,
2 — умножить на 3
Внесите недостающие надписи в схему и получите для Вычислителя алгоритм получения: а) из 2 получить 13:
Программа: 21211
б) из 5 получить 26:
Программа: 11221
в) из 7 получить 52:
Программа: 12211
У исполнителя Делитель две команды, которым присвоены номера: 1. раздели на 2 2. вычти 3
У исполнителя Делитель две команды, которым присвоены номера:
1. раздели на 2
2. вычти 3
Первая из них уменьшает число на экране в 2 раза, вторая уменьшает его на 3.
Исполнитель работает только с натуральными числами.
Составьте алгоритм получения из числа 76 числа 5, содержащий не более 5 команд. В ответе запишите только номера команд.
(Например, 21211 — это алгоритм:
вычти 3
раздели на 2
вычти 3
раздели на 2
раздели на 2,
который преобразует число 33 в 3.)
Если таких алгоритмов более одного, то запишите любой из них.
Разбор задания
В нашем случае, будем выполнять следующее: если число четное, то делим его на 2 (команда 1); если нечетное то вычитаем 3 (команда 2).
1. 76 число четное, делим на 2 получаем 38 (команда 1)
2. 38 число четное, делим на 2 получаем 19 (команда 1)
3. 19 число нечетное, поэтому вычитаем 3 и получаем 16 (команда 2)
4. 16 число четное, делим на 2 получаем 8 (команда 1)
5. 8 хоть и четное число, но при делении на 2 мы получим 4, поэтому вычитаем 3 и получаем 5 (команда 2)
Таким образом получаем следующую последовательность номеров команд — 11212.
ОГЭ по информатике — Задание 5 (Команды исполнителя)

Сегодня изучим 5 задание из ОГЭ по информатике 2023. Это задание понятное и несложное.
Обычно в 5 задании из ОГЭ по информатике даются команды, которые может делать исполнитель, и зная начальное и конечное положение, нужно найти какой-нибудь параметр одной из команд.
Лучше один раз решить, чем сто раз услышать, приступим к первой тренировочной задаче.
Задача (Составляем программу)
У исполнителя Вычислитель две команды, которым присвоены номера:
- приписать 1
- разделить на 3
Первая из них приписывает к числу справа 1, вторая уменьшает его в три раза.
Составьте алгоритм получения из 5 числа 19, содержащий не более 5 команд. В ответе запишите только номера команд.
(Например, 22121 — это алгоритм
разделить на 3
разделить на 3
приписать 1
разделить на 3
приписать 1,
который преобразует число 18 в 71.)
Если таких алгоритмов более одного, запишите любой из них.
Нам нужно получить из 5 число 19, используя только две вышеуказанные команды. Здесь нужно пробовать составить команды, опираясь на интуицию и здравый смысл. Важно знать, что решение точно есть! Следим за тем, чтобы длина алгоритма не превышала 5 команд.
5 → 51 (Команда 1)
51 : 3 = 17 (Команда 2)
17 → 171 (Команда 1)
171 : 3 = 57 (Команда 2)
57 : 3 = 27 (Команда 2)
Ответ: 12122
Задача (Составляем программу, закрепление)
У исполнителя Квадратор две команды, которым присвоены номера:
- возведи в квадрат
- вычти 3
Первая из них возводит число на экране во вторую степень, вторая вычитает из числа 3.
Исполнитель работает только с натуральными числами.
Составьте алгоритм получения из числа 14 числа 58, содержащий не более 5 команд. В ответе запишите только номера команд.
(Например, 21221 — это алгоритм
вычти 3
возведи в квадрат
вычти 3
вычти 3
возведи в квадрат
который преобразует число 7 в 100.)
Если таких алгоритмов более одного, запишите любой из них.
Здесь, скорее всего, нужно добраться до 64. Потом два раза сделать -3, получится 58.
14 — 3 = 11 (Команда 2)
11 — 3 = 8 (Команда 2)
8 2 = 64 (Команда 1)
64 — 3 = 61 (Команда 2)
61 — 3 = 58 (Команда 2)
Ответ: 22122
Задача (Составляем программу, ещё раз)
У исполнителя Квадратор две команды, которым присвоены номера:
- возведи в квадрат
- прибавь 2
Первая из них возводит число на экране во вторую степень, вторая прибавляет к числу 2.
Составьте алгоритм получения из числа 1 числа 85, содержащий не более 5 команд. В ответе запишите только номера команд.
(Например, 21221 — это алгоритм
прибавь 2
возведи в квадрат
прибавь 2
прибавь 2
возведи в квадрат
который преобразует число 1 в 169.)
Если таких алгоритмов более одного, запишите любой из них.
Здесь, скорее всего, нужно добраться до 81. Потом два раза прибавить 2, получится 85.
1 + 2 = 3 (Команда 2)
3 2 = 9 (Команда 1)
9 2 = 81 (Команда 1)
81 + 2 = 83 (Команда 2)
83 + 2 = 85 (Команда 2)
Ответ: 21122
Задача (Стандартная)
У исполнителя Гамма две команды, которым присвоены номера:
1. прибавь 3;
2. умножь на b
(b — неизвестное натуральное число; b ≥ 2).
Выполняя первую из них, Гамма увеличивает число на экране на 3, а выполняя вторую, умножает это число на b. Программа для исполнителя Гамма — это последовательность номеров команд. Известно, что программа 11121 переводит число 3 в число 75. Определите значение b.
В начале у нас есть число 3. С ним начинаем делать команды из программы (11121).
Сперва нужно выполнить три раза команду 1.
3 + 3 = 6
6 + 3 = 9
9 + 3 = 12
В 5 задании из ОГЭ по информатике важно знать: мы делаем очередную команду к предыдущему результату.
Следуя программе, дальше нужно сделать команду под номером 2. Получается 12 * b. Затем выполним последнюю команду под номером 1. В результате будет выражение 12 * b + 3. Это выражение в итоге должно равняться 75.
Теперь осталось решить уравнение и найти b.
В ответе напишем 6.
Задача (С делением)
У исполнителя Омега две команды, которым присвоены номера:
1. прибавь 3;
2. раздели на b
(b — неизвестное натуральное число; b ≥ 2).
Выполняя первую из них, Омега увеличивает число на экране на 3, а выполняя вторую, делит это число на b. Программа для исполнителя Омега — это последовательность номеров команд. Известно, что программа 11121 переводит число 30 в число 6. Определите значение b.
К первоначальному числу 30 применим три раза команду под номером 1.
30 + 3 = 33
33 + 3 = 36
36 + 3 = 39
Затем применим вторую команду. Получается 39 / b. Последней командой будет снова команда под номером один 39 / b + 3. Результат должен быть равен 6.
Решим это уравнение.
39 / b = 3
b = 39 / 3 = 13
Задача (Квадратное уравнение)
У исполнителя Алго две команды, которым присвоены номера:
1. прибавить 1
2. умножить на b
(b — неизвестное натуральное число; b ≥ 2)
Выполняя первую из них, Алго — это последовательность команд.
Известно, что программа 12121 переводит число 4 в число 49.
Определите значение b.
Сделаем команды из программы для первоначального числа 4.
4 + 1 = 5
5b
5b+1
(5b+1)*b = 5b 2 + b
5b 2 + b + 1
Конечный результат должен равняться 49.
Получили квадратное уравнение!
5b 2 + b — 48 = 0
D = 1 + 4 * 5 * 48 = 961
Иногда без калькулятора бывает трудно определить, какое число нужно возвести в квадрат, чтобы получить дискриминант. В этом случае нужно посмотреть на последнюю цифру. У нас это 1. Какое число при возведении в квадрат получает на конце единицу ? Это 1 и 9. Значит, на эти цифры может оканчиваться искомое число. Чтобы подобраться к числу 900, можно попробовать возвести 31 в квадрат. Проверив столбиком число 31, подтверждаем, что 31 это и есть корень из дискриминанта.
Второй корень получается отрицательный, он нам не подходит.
Задача(Двухэтажная дробь)
У исполнителя Омега две команды, которым присвоены номера:
1. вычти b
2. раздели на 3
(b — неизвестное натуральное число).
Выполняя первую из них, Омега уменьшает число на экране на b, а выполняя вторую, делит это число на 3.
Программа для исполнителя Омега — это последовательность номеров команд.
Известно, что программа 211212 переводит число 42 в число 1.
Определите значение b.
Выполним команду под номером 2 с первоначальным числом 42.
Далее нужно сделать два раза команду под номером 1.
Далее идёт команда под номером 2.
Ещё раз команду 1.
Выполним последний раз команду под номером 2.

Это выражение после выполнения программы должно равняться 1. Получаем уравнение, которое нужно решить.
Ответ: 1
Задача (Возведение в квадрат)
У исполнителя Омега две команды, которым присвоены номера:
1. прибавь b
2. возведи в квадрат
(b — неизвестное натуральное число).
Выполняя первую из них, Омега увеличивает число на экране на b, а выполняя вторую, заменяет число на экране на это же число, возведённое в квадрат.
Программа для исполнителя Омега — это последовательность номеров команд.
Известно, что программа 11112 переводит число 2 в число 100.
Определить значение b.
Начнём делать с первоначальном числом 2 все команды из программы.
2 + b
2 + b + b = 2 + 2b
2 + 2b + b = 2 + 3b
2 + 3b + b = 2 + 4b
Мы сделали первые четыре команды из программы. Получили 2 + 4b. Теперь применим последнюю команду возведение в квадрат. В итоге получаем (2 + 4b) 2 . Это выражение должно равняться числу 100. Получается уравнение.
Здесь можно применить формулу квадрата суммы, тогда получится квадратное уравнение, но мы воспользуемся формулой разностью квадратов!
(2 + 4b) 2 — 100 = 0
(2 + 4b — 10)*(2 + 4b + 10) = 0
2 + 4b — 10 = 0 или 2 + 4b + 10 = 0
4b — 8 = 0 или 4b + 12 = 0
В правом уравнении получается отрицательное b. Оно нам не подходит, т.к. b — натуральное число. Левое уравнение даёт результат.
4b — 8 = 0
4b = 8
b = 8 / 4 = 2
В ответе получается 2.
Задача(Припиши справа b)
У исполнителя Сигмы две команды, которым присвоены номера:
1. вычти 1
2. припиши справа b
(b — неизвестная цифра)
Выполняя первую из них, Сигма уменьшает число на экране на 1, а выполняя вторую, приписывает к этому числу справа b.
Алгоритм для исполнителя Сигма — это последовательность номеров команд.
Известно, что алгоритм 12121 переводит число 3 в число 244.
Определите число b.
Действие приписать справа b — это значит умножить число на 10 и прибавить b. Пример: пусть b=3, применим эту команду к числу 4. Тогда 4*10 + 3 = 43.
Выполним программу с первоначальным числом 3.
3 — 1 = 2
2*10 + b = 20 + b
20 + b — 1 = 19 + b
(19 + b)*10 + b = 190 + 10*b + b = 190 + 11*b
190 + 11*b — 1 = 189 + 11*b
Пример задания:
проблема здесь в том, что мы не знаем значения x, поэтому выполним программу, используяxкак переменную:
2: 3·x= 3x
2: (3·x– 1) ·x= 3x 2 – x
1: 3x 2 – x –1 = 23
остаётся решить уравнение
или
это уравнение имеет 2 корня, x1=3 иx2=– 2,666
нас интересует только целое положительное решение, поэтому ответ – 3
Решение (метод перебора):
можно использовать метод подбора, учитывая, что нас интересует только натуральное число, большее, чем 1
пусть x= 2, тогда при выполнении программы 12121 для числа 4 получаем
что не совпадает с заданным значением 23
берём следующее значение, пусть x= 3, тогда при выполнении программы 12121 для числа 4 получаем
что совпадает с заданным результатом.
Ещё пример задания:
Р-01. У исполнителя Удвоитель две команды, которым присвоены номера:
1. Прибавь 1
2. Умножь на 2
Выполняя первую из них, Удвоитель прибавляет к числу на экране 1, а выполняя вторую, умножает его на 2. Запишите порядок команд в программе получения из числа 3 числа 63, содержащей не более 8 команд, указывая лишь номера команд.
Решение («обратный ход»):
такие задачи проще решать, если переформулировать их для обратного исполнителя, которого можно назвать Раздвоителем; его команды
раздели на 2 (только для чётных чисел)
получим с помощью Раздвоителя число 3 из 63 (идём в обратную сторону)
будем использовать следующий (в данном случае – оптимальный) алгоритм: если число нечётное, вычитаем единицу (команда 1), потому что делить его на 2 нельзя; если число чётное, делим его на два; сверху записаны номера выполняемых команд:
1 2 1 2 1 2 1 2
таким образом, выполняя программу 12121212, Раздвоитель получает число 3 из 63
программу для Удвоителя (выполняющего обратную цепочку действий) запишем в обратном порядке: 21212121
Ещё пример задания:
Р-00. У исполнителя Калькулятор две команды, которым присвоены номера:
1. Прибавь 3
2. Умножь на 4
Выполняя первую из них, Калькулятор прибавляет к числу на экране 3, а выполняя вторую, умножает его на 4. Запишите порядок команд в программе получения из числа 3 числа 57, содержащей не более 6 команд, указывая лишь номера команд.
(Например, программа 21211 это программа
умножь на 4
умножь на 4
которая преобразует число 2 в 50.)
Решение (вариант 1, «прямой ход»):
обратим внимание, что в условии ограничено число команд, поэтому неявно ставится задача написать самую короткую программу для решения задачи
начнем решать задачу, «отталкиваясь» от начального числа
на первом шаге с помощью имеющихся команд из числа 3 можно получить 6 или 12;
на втором шаге из 6 можно получить 9 и 24, а из 12 – 15 и 48, и т.д., получается такая схема (структура «дерево»), цифры около стрелок показывает номер выполненной команды:

у
же чувствуется, что дерево сильно разрастается, на следующем уровне будет уже 8 вариантов, потом – 16 и т.д. (на каждом следующем уровне – в 2 раза большем, чем на предыдущем)
нужно выбрать такой план дальнейшего перебора вариантов, который может быстрее всего привести к цели (числу 57)
видим, что после второй операции ближе всего к результату оказалось число 48, попробуем начать анализ с этой ветки; если не получится – возьмем число 24 и т.д.
ветка дерева, начиная от числа 48, построена на рисунке справа; красный крестик показывает, что полученное значение превышает 57
итак, мы вышли на число 57 в результате такой последовательности команд: 22111, ее длина равна 5, что удовлетворяет условию задачи.
таким образом, правильный ответ – 22111.
Возможные ловушки и проблемы:
большую схему неудобно рисовать, в ней легко запутаться
не всегда можно сразу угадать нужную ветку «дерева», то есть, ту, которая быстрее всего приведет к успеху
Решение (вариант 2, «обратный ход»):
нам нужно увеличить число (с 3 до 57), для этого в большинстве случаев умножение эффективнее сложения, поэтому нужно постараться максимально использовать умножение, а сложение – только в крайних случаях
попробуем решить задачу «обратным ходом», начав с числа 57;
очевидно, что последней командой не может быть умножение на 4 (57 на 4 не делится), поэтому последняя команда – сложение (прибавь 3), над стрелкой записан номер команды:

число 54 также не делится на 4, поэтому предыдущая команда – тоже сложение:

аналогично для числа 51:

число 48 делится на 4, поэтому используем умножение:

наконец, добавив в начало программы еще одно умножение, получаем полную цепочку:

таким образом, правильный ответ – 22111, эта программа состоит из 5 команд.
Возможные ловушки и проблемы:
иногда может потребоваться «откат» назад, например, если исходное число – 6, то применив деление на 4 для 12 мы «проскакиваем» его (получаем 12/4=3<6), поэтому нужно возвращаться обратно к 12 и дважды применять сложение; в этом случае ответ будет такой:

Почему здесь «обратный ход» лучше?:
обратим внимание, что когда мы «шли» в обратном направлении, от конечного числа к начальному, часто очередную операцию удавалось определить однозначно (когда число не делилось на 4)
это связано с тем, что среди допустимых команд есть «не всегда обратимая» операция – умножение: умножить целое число на 4 можно всегда, а разделить нацело – нет; в подобных случаях результат быстрее получается именно «обратным ходом», во время которого сразу отбрасываются невозможные варианты