![]() |
Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
![]() ![]() |
![]() |
Глюк |
![]() ![]()
Сообщение
#1
|
Новичок ![]() Группа: Пользователи Сообщений: 34 Пол: Мужской Репутация: ![]() ![]() ![]() |
Здравствуйте!Я сделал прогу,которая выводит комментарий Конечного Автомата,но она выводит только 1 комментарий,а если вводить 2 и более - нет.Как это реализовать?И автомат может двигаться только вперед,а назад возвращаться не может...
procedure TForm1.Button1Click(Sender: TObject); |
Глюк |
![]()
Сообщение
#2
|
Новичок ![]() Группа: Пользователи Сообщений: 34 Пол: Мужской Репутация: ![]() ![]() ![]() |
пожалуйста,помогите,оч надо
![]() |
Lapp |
![]()
Сообщение
#3
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
Глюк, ты хотя бы поясни свои обозначения для состояний.. А то непонятно, что именно ты под ними подразумеваешь. Вообще, прога несколько.. запутанная
![]() ![]() repeat Если не помогло - приходи снова, но с пояснениями состояний. -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Глюк |
![]()
Сообщение
#4
|
Новичок ![]() Группа: Пользователи Сообщений: 34 Пол: Мужской Репутация: ![]() ![]() ![]() |
спасибо,что исправили не столь грамотного...=)
Вот рисунок алгоритма. ![]() H – начальное состояние конечного автомата, S – конечное… И комментариями могут быть фразы, заключенные в { } или (* *). Алгоритм на рисунке соответствует нахождению одного комментария. А надо сделать для нескольких…пробовал – не получается, причем автомат может двигаться только вперед, назад – нет. |
Глюк |
![]()
Сообщение
#5
|
Новичок ![]() Группа: Пользователи Сообщений: 34 Пол: Мужской Репутация: ![]() ![]() ![]() |
Lapp
Ну и как быть-то? ![]() Не получается...=(((( Сообщение отредактировано: Глюк - 13.11.2007 16:41 |
Lapp |
![]()
Сообщение
#6
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
Ну и как быть-то? Заключить твой цикл repeat в еще один (внешний) цикл. В начале внешнего цикла присваивать qa значение H, а также очищать строку комментариев. В конце внешнего цикла, если qa=S, то выводить комментарий. Выход из внешнего цикла по достижении конца строки. Еще рекомендую ввести счетчик найденных комментариев (n). Короче, примерно вот так: n:=0; Более детально логику я не проверял, но вроде работает более-менее разумно.. ![]() -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
![]() ![]() |
![]() |
Текстовая версия | 12.07.2025 11:48 |