dddmitriy
1

Предпоследний символ последнего слова через конечный автомат

30.03.2011, 21:38. Показов 928. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, возникло несколько вопросов по реализации конечного автомата в Делфи. Вот условие:

Разработать конечный автомат, который реализует данную функцию. Определить входящий и выходящий алфавиты, начальное состояние и значения переменных. Представить матрицу и граф переходов. Запрограммировать автомат в виде функции языка Delphi(консоль). Входящие сигналы (предложения) представить в виде строки.
Предложения - набор латинских букв и цифр, разделенных одним либо большим числом пробелов, в конце обязательно должна стоять точка.

Задание: вывести на экран предпоследний символ последнего слова, которое оканчивается на 's'.
Ясно, что в конечном автомате код будет существенно отличаться от этого
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
program Project2;
 
{$APPTYPE CONSOLE}
 
uses
  SysUtils;
var  st,st1, st2, st3:string;
     s,L,i:integer;
begin
 st1:='s'+' ';
 st2:='s.';
 writeln ('Vvedite predlozhenie');
 readln (st3);
 L:=length(st3);
 S:= Pos(st1, st3);
 for i:= l downto 1 do
  begin
  st:=copy(st3, Pos(st1, st3)-1, 1);
  end;
 writeln(st);
 readln;
end.
недоделанного безобразия, вот и всё, что мне ясно Собственно, вопросы:
1. Алфавиты нужно реализовывать через множества (set of)?
2. Если со входящим алфавитом более-менее понятно - ['a'..'z', 'A'..'Z','0'..'9', ' ', '.'] - то какой он должен быть на выходе: то же самое, но без цифр, пробелов и точек?
3. Нужно ли как-то реализовывать все состояния в коде? Их, как я понимаю, в данном случае должно быть 6 (Ожидание ввода, считывание строки, обработка, поиск необходимых символов, вывод результата и выход).

Заранее большое спасибо всем отписавшимся и отдельная благодарность тем, кто это осилил прочитать
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.03.2011, 21:38
Ответы с готовыми решениями:

Написать программу реализующую конечный автомат, который распознает слова
(abc)nd(ef)m, , n≥0, m≥0 желательно с объяснением

Вывести второй и предпоследний символ слова
Ввести слово. Вывести второй и предпоследний символ. Ввести строку. Зашифровать ее, заменив каждый...

вывести символы в следующем порядке: первй символ из входного файла, последний символ, второй символ, предпоследний смвл
Дан файл in.txt, содержащий текст. Требуется вывести в файл out.txt символы в следующем порядке:...

Конечный автомат
Здравствуйте! Возникли проблемы с задачей: дан набор правил q0 -> aq1, q1 -> bq2, q1 -> q2, q1 ->...

0
30.03.2011, 21:38
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.03.2011, 21:38
Помогаю со студенческими работами здесь

Конечный автомат (C# -> C++)
Здравствуйте! Помогите переписать программу с C# на C++ Равнодушным не останусь, на пиво...

Конечный автомат
Объясните что представляет из себя конечный автомат. Что это такое? Как он работает?

Конечный автомат
Всем привет, дан код: class Program { static void Main() { ...

Конечный автомат
Здравствуйте, мне в задании дан недетерминированный конечный автомат и его мне надо преобразовать в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru