2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Триады, тетрады, синтаксическое дерево...
Сообщение21.04.2010, 18:37 
(A+B)*C-D

Это выражение нужно представить в таких формах
триады, тетрады, синтаксическое дерево... и "об. п. зпись"

как это и что это ?

 i  от модератора AD:
Прошу больше не использовать красный цвет. Он зарезервирован для модераторов для применения в особо тяжелых случаях. Пункт I.1.р) правил форума.
Переношу в "Помогите решить/разобраться".

 
 
 
 Re: Триады, тетрады, синтаксическое дерево...
Сообщение22.04.2010, 03:35 
Ну в обратной польской записи это наверное будет выглядеть как -*+ABCD, i.e., операторы записываются не между операндами, а перед ними, в результате чего отпадает необходимость в использовании скобок.

Синтаксическое дерево вы можете нарисовать разместив в узлах операторы, а на ветках -- операнды. Рисуете знак -, справа от него будет C, слева -- синтаксическое дерево подвыражения (A+B)*C, его вы уже теперь легко самостоятельно построите. :)

Что такое триады и тетрады, не знаю. :)

 
 
 
 Re: Триады, тетрады, синтаксическое дерево...
Сообщение22.04.2010, 04:13 
Circiter в сообщении #311947 писал(а):
Ну в обратной польской записи это наверное будет выглядеть как -*+ABCD, i.e., операторы записываются не между операндами, а перед ними, в результате чего отпадает необходимость в использовании скобок.
Наоборот. Операнды просто кладутся в стек. Операции берут два операнда из стека и кладут результат в стек.
(12+34)*56 в обратной польской нотации: 12 34 + 56 *

 
 
 
 Re: Триады, тетрады, синтаксическое дерево...
Сообщение22.04.2010, 13:07 
Всем большое спасибо, тоже кое что нашел)
Тетрады:
<операция>(<операнд 1>,<операнд 2>,<результат>)
+(А,В,Т1)
*(Т1,С,Т2)
......

Триады:
<операция>(<операнд 1>,<операнд 2>)
+(А,В)
*(^1,С)
......

-- Чт апр 22, 2010 13:08:40 --

venco в сообщении #311948 писал(а):
Circiter в сообщении #311947 писал(а):
Ну в обратной польской записи это наверное будет выглядеть как -*+ABCD, i.e., операторы записываются не между операндами, а перед ними, в результате чего отпадает необходимость в использовании скобок.
Наоборот. Операнды просто кладутся в стек. Операции берут два операнда из стека и кладут результат в стек.
(12+34)*56 в обратной польской нотации: 12 34 + 56 *

+

-- Чт апр 22, 2010 13:15:27 --

Circiter в сообщении #311947 писал(а):
Синтаксическое дерево вы можете нарисовать разместив в узлах операторы, а на ветках -- операнды.

+
Код:
A...B.....C....D
.\ /...../..../
(+)..../...../
...\./....../
...(*)...../
......\.../
.......\./
.......(-)

...

 i  от модератора AD:
С тегом [code] это будет гораздо лучше, потому что шрифты у всех разные.

 
 
 [ Сообщений: 4 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group