IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Реализация интерпретатора на Паскале
Volentain
сообщение 26.09.2005 13:20
Сообщение #1


Гость






Народ помогите!!!!
Нужен Интерпритатор реализованый на паскале, данные берёт из файла (строка типа: const:=12 idep 123 и тд в выходном записывает: Const идентификатор; : двоеточие; = равно и тд)

Сообщение отредактировано: volvo - 27.09.2005 9:26
 К началу страницы 
+ Ответить 
klem4
сообщение 26.09.2005 13:44
Сообщение #2


Perl. Just code it!
******

Группа: Модераторы
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


В первый массив записываешь слова, встречающиеся в тексте :

 
s1 : array[1..3] of string=('const','begin','=');


а второй--соответствие на русском

s2 : array[1..3] of string=('константа','начало','равно');


потом, последовательно просматрива текст, выделяешь слово и ищешь его в массиве s1, если слово найдено, заменяешь его соответствующим словом из массива s2.

Сообщение отредактировано: klem4 - 26.09.2005 15:52


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Volentain
сообщение 27.09.2005 8:16
Сообщение #3


Гость






Цитата(klem4 @ 26.09.2005 13:44)
В первый массив записываешь слова, встречающиеся в тексте :

 
s1 : array[1..3] of string=('const','begin','=');


а второй--соответствие на русском

s2 : array[1..3] of string=('константа','начало','равно');


потом, последовательно просматрива текст, выделяешь слово и ищешь его в массиве s1, если слово найдено, заменяешь его соответствующим словом из массива s2.


не всё так просто. Данные должны кодироваться и не возможно перечислить всё типы. Возьмёшься написать, не бесплатно конечно? Если да скину всё задание, есть желание свяжись со мной: <...>

Сообщение отредактировано: volvo - 27.09.2005 9:22
 К началу страницы 
+ Ответить 
klem4
сообщение 27.09.2005 8:20
Сообщение #4


Perl. Just code it!
******

Группа: Модераторы
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


Цитата
Данные должны кодироваться и не возможно перечислить всё типы


объясни подробней, какие данные ? что за кодирование ? на сколько я понял есть файл в котором инфа хранится в строках ... вот с ними и надо работать, или что ?

Цитата
Возьмёшься написать, не бесплатно конечно? Если да скину всё задание, есть желание свяжись со мной: <...>


а по поводу этого либо в приват либо в задачи на заказ, а то и наказать могут, это я так, к слову.

Сообщение отредактировано: volvo - 27.09.2005 9:23


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 27.09.2005 9:21
Сообщение #5


Гость






Цитата(Volentain @ 27.09.2005 8:16)
Данные должны кодироваться и не возможно перечислить всё типы.
А вот это надо было сразу указывать в задании, а не теперь, когда тебя спросили...

Цитата(Volentain @ 27.09.2005 8:16)
Если да скину всё задание

Или скидывай все задание сюда, или я перенесу тему в "Задачи на заказ". Там и опубликуешь свои контактные номера...

Кстати, в следующий раз тема с таким названием будет удалена сразу...
Цитата(Правила раздела)
1. Заголовок темы должен быть информативным В противном случае тема удаляется
По твоему, "Помогите срочно, в долгу не останусь" это информативно?
 К началу страницы 
+ Ответить 
Volentain
сообщение 27.09.2005 10:04
Сообщение #6


Гость






Нужен распознаватель заданной символьной цепочки, заданой формулой Бэкуса-Наура. Н-р:
<цепочка>::=<описание константы>
<значение>::=<целая константа>|<16-ти ричная константа>|<вещественная константа>|<строковая константа>
<строковая константа>::'<цифра>|<идентификатор>|<цифра><идентификатор>'
Примеры входных и выходных данных:
const Error=$FFFF
const Eps=1E-3
в выходной файл Accept or Reject? если цепочка верна или не верна соответственно.
+идентификатор в цепочки не должен совпадать с ключевыми словами Pascal
Структура программы должна быть модульной
Помогите кто может пожалуйста
 К началу страницы 
+ Ответить 
volvo
сообщение 27.09.2005 13:08
Сообщение #7


Гость






А что, инструментами типа Lex & Yacc for Turbo Pascal пользоваться нельзя? Обязательно самому и с нуля построить еще один велосипед?
 К началу страницы 
+ Ответить 
Volentain
сообщение 28.09.2005 8:10
Сообщение #8


Гость






В том то и дело что нельзя
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 21.06.2025 22:16
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"