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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Транслирование, коды, примеры с пояснениями 
:(
    Опции темы
ManiaK
Дата 27.7.2005, 21:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Homo Sapience
***


Профиль
Группа: Комодератор
Сообщений: 1145
Регистрация: 3.8.2004
Где: ИУ5-93

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



Цитата(Fixin @ 27.7.2005, 22:49)
А я тоже хочу что-нить свое сочинить.

А!! smile Молчу.. smile

Цитата(Fixin @ 27.7.2005, 22:49)
Нисходяще-рекурсивный-переделанный

Терпеть не могу этого названия. "Бревно" и всё - что тут рекурсить!..
PM MAIL WWW   Вверх
Fixin
Дата 27.7.2005, 21:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ёжик
***


Профиль
Группа: Комодератор
Сообщений: 1357
Регистрация: 6.1.2004

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



Цитата
"Бревно" и всё - что тут рекурсить!..
Чего? Это другое название?
PM MAIL ICQ   Вверх
ManiaK
Дата 27.7.2005, 22:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Homo Sapience
***


Профиль
Группа: Комодератор
Сообщений: 1145
Регистрация: 3.8.2004
Где: ИУ5-93

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



Цитата(Fixin @ 27.7.2005, 22:57)
Чего? Это другое название?

Да это я его так... ласково окрестил smile
PM MAIL WWW   Вверх
Fixin
Дата 27.7.2005, 22:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ёжик
***


Профиль
Группа: Комодератор
Сообщений: 1357
Регистрация: 6.1.2004

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



Без флема. (зарекалась свинья...) Есть предложения по вышеприведенной проблеме?
PM MAIL ICQ   Вверх
ManiaK
Дата 27.7.2005, 22:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Homo Sapience
***


Профиль
Группа: Комодератор
Сообщений: 1145
Регистрация: 3.8.2004
Где: ИУ5-93

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



Цитата(Fixin @ 27.7.2005, 23:13)
Без флема.

"Извини Петька, не сдержался!.." (с) Василий Иваныч

Цитата(Fixin @ 27.7.2005, 23:13)
Есть предложения по вышеприведенной проблеме?

Ест. После стакана они не могут не ест smile Писать при обходе дерева не в строку, а в "стек" и не куски строк, а тип вроде этого:
Код

struct token
{
    Byte_t TokType;// Тип: 0 - оператор, 1 - операнд
    char data;// Строковое представление
};


Проще говоря, чётко разделить понятия операнд и оператор. На типовОм уровне.
PM MAIL WWW   Вверх
Fixin
Дата 27.7.2005, 22:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ёжик
***


Профиль
Группа: Комодератор
Сообщений: 1357
Регистрация: 6.1.2004

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



Без этого разделения, нет смысла у моего стека, учитыая, что переменные не из одной буквы зачастую. smile Ну да ладно, сканирование строки - не так уж "шлемиельно". Вобщем, поэтому я и не хочу использовать "бревно", хех.
PM MAIL ICQ   Вверх
ManiaK
Дата 27.7.2005, 22:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Homo Sapience
***


Профиль
Группа: Комодератор
Сообщений: 1145
Регистрация: 3.8.2004
Где: ИУ5-93

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



"Толи я тупой, толи лыжи не едут..."

Цитата(Fixin @ 27.7.2005, 18:26)
a-(-b*c+d/e)*f+g*h

Цитата(Fixin @ 27.7.2005, 18:26)
abc*-de/+f*-gh*+


Это как?? Может там такое исходное выражение:
Цитата(Fixin @ 27.7.2005, 18:26)
a*(-b*c+d/e)*f+g*h

smile
Добавлено @ 23:00
Унарный + или - может быть только в двух случаях:
1) В самом начале выражения.
2) В самом начале подвыражения (того, что в скобке).

Так какие проблемы отловить этот случай и при транслировании в выходную строку не определять символ как оператор, а определять как часть операнда?..
PM MAIL WWW   Вверх
Fixin
Дата 28.7.2005, 18:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ёжик
***


Профиль
Группа: Комодератор
Сообщений: 1357
Регистрация: 6.1.2004

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



Нет, так и есть. Ошибка была в моей версии выхода. smile

Про добавление: так и собиоался сканировать, но искал более универсальный метод. Но он есть только в "бревне".
PM MAIL ICQ   Вверх
Любитель
Дата 29.7.2005, 12:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

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



Вобщем вот мой "вырванный" парсер. Правда, корявый, но для примера думаю пойдёт. Сражу скажу, что при считывании файла строки заносятся в массив Strings, а в тексте заменяются на $индекс_в_массиве.

Присоединённый файл ( Кол-во скачиваний: 9 )
Присоединённый файл  parser.cpp 8,46 Kb


--------------------
PM MAIL ICQ Skype   Вверх
Fixin
Дата 29.7.2005, 17:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ёжик
***


Профиль
Группа: Комодератор
Сообщений: 1357
Регистрация: 6.1.2004

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



А бинарик (сетапка)? без него не интересно...
PM MAIL ICQ   Вверх
Nightwalker
Дата 18.2.2006, 22:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Народ что такое "Операнда?"
PM MAIL   Вверх
_hunter
Дата 20.2.2006, 11:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 8564
Регистрация: 24.6.2003
Где: Europe::Ukraine:: Kiev

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





--------------------
Tempora mutantur, et nos mutamur in illis...
PM ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

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

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


 




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


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

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