Пожалуйста,объясните поподробней!!!! Исполнитель Редактор получает ** вход строку цифр и...

0 голосов
98 просмотров

Пожалуйста,объясните поподробней!!!! Исполнитель Редактор получает на вход строку цифр и преобразовывает её. Редактор может выполнять две команды, в обеих командах v и w обозначают цепочки цифр.
заменить (v, w)
нашлось (v)
Дана программа для исполнителя Редактор:
НАЧАЛО
ПОКА нашлось (333) ИЛИ нашлось (555)
ЕСЛИ нашлось (555)
ТО заменить (555, 3)
ИНАЧЕ заменить (333, 5)
КОНЕЦ ЕСЛИ
КОНЕЦ ПОКА
КОНЕЦ
Какая строка получится в результате применения приведённой ниже программы к строке, состоящей из 193 идущих подряд цифр 5? В ответе запишите полученную строку.


Информатика | 98 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Выполним несколько первых шагов алгоритма:
1 "3", 190 "5"
2 "3", 187 "5"
3 "3", 184 "5"
Очевидно, что из 193 "5" получим в конце концов 64 "3" и 1 "5" 
(193=64*3+1):
Следующий этап:
1 "5", 61 "3", 1 "5"
2 "5", 58 "3", 1 "5"
3 "5", 55 "3", 1 "5"
56 "3", 1 "5"
...
8 "3", 1 "5"
1 "5", 5 "3", 1 "5"
2 "5", 2 "3", 1 "5"
Таким образом, из 193 "5" получится строка "55335"

(194k баллов)
0

Причина - в условном операторе "ЕСЛИ нашлось (555)". Т.е. если в строке находятся три "5", то они меняются на одну "3". И только если этих трёх "5" нет, то меняются три "3".

0

Пожалуйста. Очень хорошо, что разобрались!