Математика ЕГЭ
Русский язык ЕГЭ
Математика 5-7
Математика ОГЭ
Информатика
Физика
Обществознание
Кликните, чтобы открыть меню

12. Сложные исполнители и алгоритмы

1. Вспоминай формулы по каждой теме
2. Решай новые задачи каждый день
3. Вдумчиво разбирай решения

Исполнитель "Редактор" (страница 3)

Задание 15 #15110

Исполнитель Панцирь получает на вход строку цифр и преобразовывает её. Панцирь может выполнять две команды, в обеих командах v и w обозначают цепочки символов.

1. заменить (v, w)

2. нашлось (v)

Первая команда заменяет в строке первое слева вхождение цепочки v на цепочку w. Если цепочки v в строке нет, эта команда не изменяет строку. Вторая команда проверяет, встречается ли цепочка v в строке исполнителя Панцирь. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь».

Дана программа для исполнителя Панцирь:

НАЧАЛО

ПОКА нашлось\((11)\) ИЛИ нашлось\((2)\)

ПОКА нашлось\((12)\)

ТО заменить\((12, 11)\)

КОНЕЦ ПОКА

ЕСЛИ нашлось\((11)\)

ТО заменить\((11, 2)\)

ИНАЧЕ ЕСЛИ нашлось\((2)\)

ТО заменить\((2, 0)\)

КОНЕЦ ЕСЛИ

КОНЕЦ ПОКА

КОНЕЦ

Найдите количество цифр в строке, полученной в результате применения приведённой выше программы к строке: \(\underbrace{11\dots11}_{83}\underbrace{22\dots22}_{17}.\) Ответ запишите в двоичной системе счисления.

Для удобства будем использвовать следующие обозначения для количества одинаковых цифр, идущих подряд: \(A_{(B)},\) где A - цифра, которая находится в строке, а B - количество этих цифр.

Изначально была строка \(1_{(83)} 2_{(17)}.\) Цикл ПОКА внутри основного цикла ПОКА будет работать до момента исчезновения всех двоек, таким образом после выполнения этого цикла строка будет состоять из 100 единиц.

Далее все единицы исчезнут, а на их месте появятся двойки.

\(1_{(100)} \rightarrow 2_{(50)}\)

После этого все двойки заменятся нулями и программа завершит свою работу. В полученной строке 50 нулей. Переведем 50 в двоичную СС: \(50_{10} = 110010_{2}\)

Ответ: 110010

Задание 16 #15151

Исполнитель Панцирь получает на вход строку цифр и преобразовывает её. Панцирь может выполнять две команды, в обеих командах v и w обозначают цепочки символов.

1. заменить (v, w)

2. нашлось (v)

Первая команда заменяет в строке первое слева вхождение цепочки v на цепочку w. Если цепочки v в строке нет, эта команда не изменяет строку. Вторая команда проверяет, встречается ли цепочка v в строке исполнителя Панцирь. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь».

Дана программа для исполнителя Панцирь:

НАЧАЛО

ПОКА нашлось (*2) ИЛИ нашлось (*5) ИЛИ нашлось (*9)

ЕСЛИ нашлось (*2)

ТО заменить (*2, *)

КОНЕЦ ЕСЛИ

ЕСЛИ нашлось (*5)

ТО заменить (*5, 6*)

КОНЕЦ ЕСЛИ

ЕСЛИ нашлось (*9)

ТО заменить (*9, 7*)

КОНЕЦ ЕСЛИ

КОНЕЦ ПОКА

КОНЕЦ

На вход приведённой программе поступает строка, начинающаяся с символа “*”, а затем содержащая 100 цифр 2, 10 цифр 5 и 60 цифр 9, расположенных в произвольном порядке. Определите сумму числовых значений цифр строки, получившейся в результате выполнения программы. Так, например, если результат работы программы представлял бы собой строку, состоящую из 50 цифр 2, то верным ответом было бы число 100.

Принцип действия данной программы можно воспринимать как фильтр, через который по очереди пропускаются одни числа, а выводятся другие (или не выводятся вообще). Этим фильтром служит знак “*”. При пропускании через фильтр цифры 2, она не выводится, т.е. каждая двойка изначальной строки удаляется, после чего в конечной строке не будет ни одной двойки. Проходя через фильтр, пятерки и девятки заменяются на шестерки и семерки соответственно.

Исходя из этого, после выполнения программы в строке будут находиться 10 шестерок и 60 семерок. Сумма числовых значений равна \(10 \cdot 6 + 60 \cdot 7 = 480.\)

Ответ: 480

Задание 17 #15108

Исполнитель Панцирь получает на вход строку цифр и преобразовывает её. Панцирь может выполнять две команды, в обеих командах v и w обозначают цепочки символов.

1. заменить (v, w)

2. нашлось (v)

Первая команда заменяет в строке первое слева вхождение цепочки v на цепочку w. Если цепочки v в строке нет, эта команда не изменяет строку. Вторая команда проверяет, встречается ли цепочка v в строке исполнителя Панцирь. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь».

Дана программа для исполнителя Панцирь:

НАЧАЛО

ПОКА нашлось\((11)\) ИЛИ нашлось\((2)\)

ПОКА нашлось\((12)\)

ТО заменить\((12, 11)\)

КОНЕЦ ПОКА

ЕСЛИ нашлось\((11)\)

ТО заменить\((11, 2)\)

ИНАЧЕ ЕСЛИ нашлось\((2)\)

ТО заменить\((2, 0)\)

КОНЕЦ ЕСЛИ

КОНЕЦ ПОКА

КОНЕЦ

Сколько нулей содержится в строке, полученной в результате применения приведённой выше программы к строке: \(\underbrace{11\dots11}_{39}\underbrace{22\dots22}_{14}.\)

Для удобства будем использвовать следующие обозначения для количества одинаковых цифр, идущих подряд: \(A_{(B)},\) где A - цифра, которая находится в строке, а B - количество этих цифр.

Изначально была строка \(1_{(39)} 2_{(14)}.\) Цикл ПОКА внутри основного цикла ПОКА будет работать до момента исчезновения всех двоек, таким образом после выполнения этого цикла строка будет состоять из 87 единиц.

Далее все единицы кроме последней исчезнут, а на их месте появятся двойки.

\(1_{(53)} \rightarrow 2_{(26)} 1_{(1)}\)

После этого все двойки заменятся нулями и программа завершит свою работу. В полученной строке 26 нулей.

Ответ: 26

Задание 18 #15103

Исполнитель Панцирь получает на вход строку цифр и преобразовывает её. Панцирь может выполнять две команды, в обеих командах v и w обозначают цепочки символов.

1. заменить (v, w)

2. нашлось (v)

Первая команда заменяет в строке первое слева вхождение цепочки v на цепочку w. Если цепочки v в строке нет, эта команда не изменяет строку. Вторая команда проверяет, встречается ли цепочка v в строке исполнителя Панцирь. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь».

Дана программа для исполнителя Панцирь:

НАЧАЛО

ПОКА нашлось\((33)\) ИЛИ нашлось\((9)\)

ПОКА нашлось\((39)\)

ТО заменить\((39, 33)\)

КОНЕЦ ПОКА

ЕСЛИ нашлось\((33)\)

ТО заменить\((33, 9)\)

ИНАЧЕ ЕСЛИ нашлось\((9)\)

ТО заменить\((9, 0)\)

КОНЕЦ ЕСЛИ

КОНЕЦ ПОКА

КОНЕЦ

Определите количество преобладающих цифр в строке, полученной в результате применения приведённой выше программы к строке: \(\underbrace{33\dots33}_{93}\underbrace{99\dots99}_{312}.\)

Для удобства будем использвовать следующие обозначения для количества одинаковых цифр, идущих подряд: \(A_{(B)},\) где A - цифра, которая находится в строке, а B - количество этих цифр.

Изначально была строка \(3_{(93)} 9_{(312)}.\) Цикл ПОКА внутри основного цикла ПОКА будет работать до момента исчезновения всех девяток, таким образом после выполнения этого цикла строка будет состоять из 405 троек.

Далее все тройки кроме последней исчезнут, а на их месте появятся девятки.

\(3_{(405)} \rightarrow 9_{(202)} 3_{(1)}\)

После этого все девятки заменятся нулями и программа завершит свою работу. В полученной строке 202 нуля.

Ответ: 202

Задание 19 #15102

Исполнитель Панцирь получает на вход строку цифр и преобразовывает её. Панцирь может выполнять две команды, в обеих командах v и w обозначают цепочки символов.

1. заменить (v, w)

2. нашлось (v)

Первая команда заменяет в строке первое слева вхождение цепочки v на цепочку w. Если цепочки v в строке нет, эта команда не изменяет строку. Вторая команда проверяет, встречается ли цепочка v в строке исполнителя Панцирь. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь».

Дана программа для исполнителя Панцирь:

НАЧАЛО

ПОКА нашлось\((33)\) ИЛИ нашлось\((9)\)

ПОКА нашлось\((39)\)

ТО заменить\((39, 33)\)

КОНЕЦ ПОКА

ЕСЛИ нашлось\((33)\)

ТО заменить\((33, 9)\)

ИНАЧЕ ЕСЛИ нашлось\((9)\)

ТО заменить\((9, 0)\)

КОНЕЦ ЕСЛИ

КОНЕЦ ПОКА

КОНЕЦ

Определите количество преобладающих цифр в строке, полученной в результате применения приведённой выше программы к строке: \(\underbrace{33\dots33}_{49}\underbrace{99\dots99}_{54}.\)

Для удобства будем использвовать следующие обозначения для количества одинаковых цифр, идущих подряд: \(A_{(B)},\) где A - цифра, которая находится в строке, а B - количество этих цифр.

Изначально была строка \(3_{(49)} 9_{(54)}.\) Цикл ПОКА внутри основного цикла ПОКА будет работать до момента исчезновения всех девяток, таким образом после выполнения этого цикла строка будет состоять из 103 троек.

Далее все тройки кроме последней исчезнут, а на их месте появятся девятки.

\(3_{(103)} \rightarrow 9_{(51)} 3_{(1)}\)

После этого все девятки заменятся нулями и программа завершит свою работу. В полученной строке 51 ноль.

Ответ: 51

Задание 20 #15101

Исполнитель Панцирь получает на вход строку цифр и преобразовывает её. Панцирь может выполнять две команды, в обеих командах v и w обозначают цепочки символов.

1. заменить (v, w)

2. нашлось (v)

Первая команда заменяет в строке первое слева вхождение цепочки v на цепочку w. Если цепочки v в строке нет, эта команда не изменяет строку. Вторая команда проверяет, встречается ли цепочка v в строке исполнителя Панцирь. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь».

Дана программа для исполнителя Панцирь:

НАЧАЛО

ПОКА нашлось\((33)\) ИЛИ нашлось\((9)\)

ПОКА нашлось\((39)\)

ТО заменить\((39, 33)\)

КОНЕЦ ПОКА

ЕСЛИ нашлось\((33)\)

ТО заменить\((33, 9)\)

ИНАЧЕ ЕСЛИ нашлось\((9)\)

ТО заменить\((9, 0)\)

КОНЕЦ ЕСЛИ

КОНЕЦ ПОКА

КОНЕЦ

Найдите сумму цифр в строке, полученной в результате применения приведённой выше программы к строке: \(\underbrace{33\dots33}_{49}\underbrace{99\dots99}_{54}.\)

Для удобства будем использвовать следующие обозначения для количества одинаковых цифр, идущих подряд: \(A_{(B)},\) где A - цифра, которая находится в строке, а B - количество этих цифр.

Изначально была строка \(3_{(49)} 9_{(54)}.\) Цикл ПОКА внутри основного цикла ПОКА будет работать до момента исчезновения всех девяток, таким образом после выполнения этого цикла строка будет состоять из 103 троек.

Далее все тройки кроме последней исчезнут, а на их месте появятся девятки.

\(3_{(103)} \rightarrow 9_{(51)} 3_{(1)}\)

После этого все девятки заменятся нулями и программа завершит свою работу. В полученной строке 51 ноль и 1 тройка, сумма цифр равна 3.

Ответ: 3

Задание 21 #15100

Исполнитель Панцирь получает на вход строку цифр и преобразовывает её. Панцирь может выполнять две команды, в обеих командах v и w обозначают цепочки символов.

1. заменить (v, w)

2. нашлось (v)

Первая команда заменяет в строке первое слева вхождение цепочки v на цепочку w. Если цепочки v в строке нет, эта команда не изменяет строку. Вторая команда проверяет, встречается ли цепочка v в строке исполнителя Панцирь. Если она встречается, то команда возвращает логическое значение «истина», в противном случае возвращает значение «ложь».

Дана программа для исполнителя Панцирь:

НАЧАЛО

ПОКА нашлось\((55)\) ИЛИ нашлось\((7)\)

ПОКА нашлось\((57)\)

заменить\((57, 55)\)

КОНЕЦ ПОКА

ЕСЛИ нашлось\((55)\)

ТО заменить\((55, 7)\)

ИНАЧЕ ЕСЛИ нашлось\((7)\)

ТО заменить\((7, 6)\)

КОНЕЦ ЕСЛИ

КОНЕЦ ПОКА

КОНЕЦ

Определите количество преобладающих цифр в строке, полученной в результате применения приведённой выше программы к строке: \(\underbrace{55\dots55}_{35}\underbrace{77\dots77}_{100}.\)

Для удобства будем использвовать следующие обозначения для количества одинаковых цифр, идущих подряд: \(A_{(B)},\) где A - цифра, которая находится в строке, а B - количество этих цифр.

Изначально была строка \(5_{(35)} 7_{(100)}.\) Цикл ПОКА внутри основного цикла ПОКА будет работать до момента исчезновения всех семерок, таким образом после выполнения этого цикла строка будет состоять из 135 пятерок.

Далее все пятерки кроме последней исчезнут, а на их месте появятся семерки.

\(5_{(135)} \rightarrow 7_{(67)} 5_{(1)}\)

После этого все семерки заменятся шестерками и программа завершит свою работу. В полученной строке 67 шестерок, их больше чем пятерок, значит ответ 67.

Ответ: 67