Модераторы: Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [Алгоритм] Машина Тьюринга, Подсчитать число букв «а» в данном слове 
V
    Опции темы
XaviBeat
Дата 30.3.2009, 10:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 30.3.2009

Репутация: нет
Всего: нет



На ленте машины Тьюринга находится слово, состоящее из букв латинского алфавита. Подсчитать число букв «а» в данном слове и полученное значение записать на ленту левее исходного слова через пробел. Каретка обозревает крайнюю левую букву.

Заранее спасибо. 

Так же выкладываю программу где эту схему надо сделать

Это сообщение отредактировал(а) XaviBeat - 30.3.2009, 11:13

Присоединённый файл ( Кол-во скачиваний: 105 )
Присоединённый файл  Mt___________________.rar 454,27 Kb
PM MAIL   Вверх
CodingMonster
Дата 11.9.2009, 11:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 10.9.2009

Репутация: нет
Всего: нет



Вот, пожалуйста, в аттаче исходник программы для машины Тьюринга.

Для примера положим, что строка может состоять только их символов a, b и c. При необходимости вы сами можете расширить набор. Единицами (1) слева отмечается число вхождений a, звездочка (*) служит как временный символ.

Далее трасса выполнения для тестовой строки "acaababc":
Код

11.09.2009 13:51:38: Начало процедуры проверки программы
11.09.2009 13:51:38: Проверка успешно завешена, программа может быть исполнена

11.09.2009 13:51:40: Начало выполнения программы

Программа успешно перешла в завершающее состояние

Символы ленты на момент завершения работы программы: 1 1 1 1 _ a c a a b a b c _
Результирующие данные: 1 1 1 1 _ a c a a b a b c

Размер входных данных: 8 символов
Длина используемой ленты: 14 ячеек
Размер выходных данных: 13 символов

Статистика использования правил:
1 (_) -> 1 (_, П)   0 раз
1 (a) -> 2 (a, Н)   1 раз
1 (b) -> 2 (b, Н)   0 раз
1 (c) -> 2 (c, Н)   0 раз
2 (_) -> 6 (_, Л)   1 раз
2 (a) -> 3 (*, Л)   4 раз
2 (b) -> 2 (b, П)   3 раз
2 (c) -> 2 (c, П)   5 раз
2 (*) -> 2 (*, П)   10 раз
3 (_) -> 4 (_, Л)   4 раз
3 (b) -> 3 (b, Л)   1 раз
3 (c) -> 3 (c, Л)   3 раз
3 (*) -> 3 (*, Л)   6 раз
4 (_) -> 5 (1, П)   4 раз
4 (1) -> 4 (1, Л)   6 раз
5 (_) -> 2 (_, П)   4 раз
5 (1) -> 5 (1, П)   6 раз
6 (_) -> 0 (_, П)   1 раз
6 (b) -> 6 (b, Л)   2 раз
6 (c) -> 6 (c, Л)   2 раз
6 (*) -> 6 (a, Л)   4 раз
11.09.2009 13:51:40: Завершение выполнения программы



Присоединённый файл ( Кол-во скачиваний: 144 )
Присоединённый файл  calc_entries.rar 0,47 Kb
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Центр помощи"

ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Несоблюдение правил может повлечь за собой самые строгие меры от закрытия/удаления темы до бана пользователя!


  • Название темы должно отражать её суть! (Не следует добавлять туда слова "помогите", "срочно" и т.п.)
  • При создании темы, первым делом в квадратных скобках укажите область, из которой исходит вопрос (язык, дисциплина, диплом). Пример: [C++].
  • В названии темы не нужно указывать происхождение задачи (например "школьная задача", "задача из учебника" и т.п.), не нужно указывать ее сложность ("простая задача", "легкий вопрос" и т.п.). Все это можно писать в тексте самой задачи.
  • Если Вы ошиблись при вводе названия темы, отправьте письмо любому из модераторов раздела (через личные сообщения или report).
  • Для подсветки кода пользуйтесь тегами [code][/code] (выделяйте код и нажимаете на кнопку "Код"). Не забывайте выбирать при этом соответствующий язык.
  • Помните: один топик - один вопрос!
  • В данном разделе запрещено поднимать темы, т.е. при отсутствии ответов на Ваш вопрос добавлять новые ответы к теме, тем самым поднимая тему на верх списка.
  • Если вы хотите, чтобы вашу проблему решили при помощи определенного алгоритма, то не забудьте описать его!
  • Если вопрос решён, то воспользуйтесь ссылкой "Пометить как решённый", которая находится под кнопками создания темы или специальным флажком при ответе.

Более подробно с правилами данного раздела Вы можете ознакомится в этой теме.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Центр помощи | Следующая тема »


 




[ Время генерации скрипта: 0.0642 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.