|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
12.11.2018, 19:42 | #1 |
Новичок
Джуниор
Регистрация: 02.05.2016
Сообщений: 2
|
Помогите с конечными автоматами
Всем доброе время чуток . Есть некая проблема помогите решить
Есть прога которая должна реализовать функцию лексического анализа, получающего на вход цепочку языка, отображающего переходы между состояниями конечного автомата . Говорю сразу я не программист и не учусь на него , просто препод задал и все. Зарание спасибо #include <stdio.h> #include <iostream> using namespace std; int scan_g() { enum state { H, A, B, C, S, ER }; enum state CS; FILE *fp; int c; CS = H; fp = fopen("date", "r"); c = fgetc(fp); do { switch (CS) case H: if (c == 'a') { c = fgetc(fp); CS = A; } else if (c == 'b') { c = fgetc(fp); CS = B; } else CS = ER; break; case A: if (c == 'b') { c = fgetc(fp); CS = C; } else CS = ER; break; case B: if (c == 'a') { c = fgetc(fp); CS = C; } else CS = ER; break; case C: if (c == 'a') { c = fgetc(fp); CS = A; } else if (c == 'b') { c = fgetc(fp); CS = B; } else if (c == '?') CS = S; else CS = ER; break; } } while (CS != S && CS != ER); if (CS == ER) return -1; else return 0; } |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Перевод нужен срочно помогите ) в течение 2 часов от Паскаля на Турбо СИ нужно помогите | Жанибек | Помощь студентам | 14 | 01.04.2015 17:23 |
Помогите создать програму для роботы с файлами, пожалуйста помогите нужно очень срочно | Сергей Человек | Фриланс | 3 | 06.07.2009 19:30 |
Помогите Помогите Пожалуйста Решить Одну Задачку в Паскале!!! | VisTBacK | Помощь студентам | 6 | 19.09.2008 13:44 |