Распишите так чтобы было понятно . не смог понять

какая строка получится в результате применения ниже программы к строке вида 1…12…2 (40 единиц и 40 двоек)?

начало

пока нашлось (111)

заменить (111, 2)

заменить (222, 1)

конец пока

конец

pavelakur pavelakur    3   22.10.2019 12:07    43

Ответы
zhenya28081999 zhenya28081999  14.01.2024 17:10
Для решения данной задачи, сначала нужно разобрать шаги программы и посмотреть, как программа воздействует на строку и какие замены происходят.

1. Исходная строка: 1...12...2 (40 единиц и 40 двоек)
2. Пока находится подстрока "111", заменяем эту подстроку на "2"
- Исходная строка: 1...22...2 (39 единиц и 40 двоек)
3. Заменяем подстроку "222" на "1"
- Исходная строка: 1...12...1...2 (39 единиц, 39 двоек, 1 один, 1 два)

Теперь давайте продолжим применять программу к текущей строке:

4. Пока находится подстрока "111", заменяем эту подстроку на "2"
- Исходная строка: 1...22...2 (38 единиц, 39 двоек, 1 один, 1 два)
5. Заменяем подстроку "222" на "1"
- Исходная строка: 1...12...1...2 (38 единиц, 38 двоек, 1 один, 2 два)

6. Пока находится подстрока "111", заменяем эту подстроку на "2"
- Исходная строка: 1...22...2 (37 единиц, 38 двоек, 1 один, 2 два)
7. Заменяем подстроку "222" на "1"
- Исходная строка: 1...12...1...2 (37 единиц, 37 двоек, 2 один, 2 два)

8. Продолжаем применять шаги 4-7 до тех пор, пока мы не получим окончательную строку.

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

Таким образом, после применения всех шагов программы к исходной строке "1...12...2", мы получим окончательную строку: "1...12...1...2" (1 один, 37 единиц, 37 двоек, 2 два).
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика