Учебно-методический комплекс дисциплины для обучающегося «Языки программирования» для специальности 5В010900 Математика


Пример 4 (удаление символа из слова) А={a,b}. Удалить из слова Р его второй символ, если такой есть. Решение



бет81/142
Дата03.01.2022
өлшемі1.33 Mb.
#450516
түріУчебно-методический комплекс
1   ...   77   78   79   80   81   82   83   84   ...   142
УМКДО -ЯзыкиПрограммирования

Пример 4 (удаление символа из слова) А={a,b}. Удалить из слова Р его второй символ, если такой есть.

Решение.

Казалось бы, эту задачу решить просто: надо сдвинуть автомат под клетку со вторым символом и затем очистить эту клетку:






Однако напомним, что внутри выходного слова не должно быть пустых клеток. Поэтому после удаления второго символа надо «сжать» слово, перенеся первый символ на одну клетку вправо. Для этого автомат должен вернуться к первому символу, запомнить его и стереть, а затем, снова сдвинувшись вправо, записать его в клетку, где был второй символ. Однако начальный «поход» вправо ко второму символу, чтобы его стереть, и последующий возврат к первому символу являются лишними действиями: какая разница - переносить первый символ в пустую клетку или в клетку с каким-то символом? Поэтому сразу запоминаем первый символ, стираем его и записываем вместо второго символа:




В виде программы для МТ все это записывается так:




Достарыңызбен бөлісу:
1   ...   77   78   79   80   81   82   83   84   ...   142




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет