рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

МАНИПУЛИРОВАНИЕ АРИФМЕТИЧЕСКИМИ ВЫРАЖЕНИЯМИ.

МАНИПУЛИРОВАНИЕ АРИФМЕТИЧЕСКИМИ ВЫРАЖЕНИЯМИ. - раздел Образование, Графы Дано Выражение А*(-B)+С/d Операции Выполняются Над Выражениями, Пред...

Дано выражение а*(-b)+с/d

Операции выполняются над выражениями, представленными в виде

бинарных деревьев. Такие выражения можно символьно складывать,

ш1.0

Дерево Дерево

общего вида: ▌ бинарного вида:

(+) ▌ (+)

/ ▌ │

(*) (/) ▌ (*)─────────(/)

/ / ▌ │ │

(а) (-) (с) (d) ▌ (а)──(-) (с)──(d)

│ ▌ │

(b) ▌ (b)

 

Рис.6.30 Представление выражения в виде дерева

 

 

┌──┬───┬──┐

┌──────────┼─ │ + │ ─┼────────┐

│ └──┴───┴──┘ │

┌──┬─┴─┬──┐ ┌──┬─┴─┬──┐

┌─┼─ │ * │ ─┼─┐ ┌─┼─ │ / │ ─┼─┐

│ └──┴───┴──┘ │ │ └──┴───┴──┘ │

┌──┬─┴─┬──┐ ┌──┬─┴─┬──┐ ┌──┬─┴─┬──┐ ┌──┬─┴─┬──┐

│//│ а │//│ │//│ - │ ─┼─┐ │//│ c │//│ │//│ d │//│

└──┴───┴──┘ └──┴───┴──┘ │ └──┴───┴──┘ └──┴───┴──┘

┌──┬─┴─┬──┐

│//│ b │//│

└──┴───┴──┘

Рис. 6.31 Представление выражения в виде бинарного дерева.

 

перемножать, вычитать, дифференцировать, интегрировать, сравни-

вать на эквивалентность и т.д. Т.е. получаются символьные выраже-

ния, которые можно закодировать в виде таблиц:

(-) - операция унарного минуса;

() - операция возведения в степень;

(+) - операция сложения;

(*) - операция умножения;

(/) - операция деления.

(Е) - указательная переменная, адресующая корень дерева,

каждая вершина которого состоит из левого указателя (LPТR), пра-

вого указателя (RPTR) и информационного поля TYPE.

┌────┬────┬────┐

│LPTR│TYPE│RPTR│

└────┴────┴────┘

 

Для неконцевой вершины поле TYPE задает арифметическую опе-

рацию, связанную с этой вершиной. Значения поля TYPE вершин

+,-,*, /, (-) и равны 1, 2, 3, 4, 5, 6 соответственно.

Для концевых вершин поле символа в TYPE имеет значение 0,

что означает константу или переменную. В этом случае правый ука-

затель вершины задает адрес таблицы символов, который соответс-

твует данной константе или переменной. В дереве указывается тип

оператора, а не он сам, что позволяет упростить обработку таких

деревьев.

 

┌──┬───┬──┐

┌──────────┼─ │ + │ ─┼────────┐

│ └──┴───┴──┘ │

┌──┬─┴─┬──┐ ┌──┬─┴─┬──┐

┌─┼─ │ * │ ─┼─┐ ┌─┼─ │ / │ ─┼─┐

│ └──┴───┴──┘ │ │ └──┴───┴──┘ │

┌──┬─┴─┬──┐ ┌──┬─┴─┬──┐ ┌──┬─┴─┬──┐ ┌──┬─┴─┬──┐

│//│ а │ │ │//│ - │ ─┼─┐ │//│ c │ │ │//│ d │ │

└──┴───┴─┼┘ └──┴───┴──┘ │ └──┴───┴─┼┘ └──┴───┴─┼┘

│ ┌──┬─┴─┬──┐ │ │

│ │//│ b │ │ │ │

│ └──┴───┴─┼┘ │ │

│┌───────────────────┘ │ │

││ ┌──────────────────────────┘ │

││ │┌───────────────────────────────────────┘

││ ││ ┌─────────┬────────────┐

││ ││ │Symbol │Value │

││ ││ ├─────────┼────────────┤

││ │└──┼─ D │ │

││ │ ├─────────┼────────────┤

││ └───┼─ C │ │

││ ├─────────┼────────────┤

│└─────┼─ B │ │

│ ├─────────┼────────────┤

│ │ E │ │

│ ├─────────┼────────────┤

└──────┼─ A │ │

└─────────┴────────────┘

 

Рис.2.31 Таблица символов

Процедура вычислений:

Создается семимерный массив меток и его элементам задаются

требуемые значения.Оператор генерирует метку исходя из значения

поля корневой вершины. И передается управление управление опера-

тору, помеченного меткой. Если данная вершина концевая, то в ка-

честве значения выдается значение переменной или константы, обоз-

наченной этой вершиной. Эта операция выполняется путем использо-

вания правого указателя данной вершины для ссылки на нужную за-

пись в таблице символов. Для неконцевой вершины инициализируются

рекурсивные вычисления ее поддеревьев, характеризующих операнды

текущего оператора. Этот процесс продолжается до тех пор, пока не

будут достигнуты листья дерева. Для полученных листьев значения

выбираются из соответствующих записей таблицы символов.

Ниже приводится программа, вычисляющая арифметическое выра-

жение.

– Конец работы –

Эта тема принадлежит разделу:

Графы

Графы Логическая структура определения структура отображающая... Основные операции над деревьями... Над деревьями определены следующие основные операции для...

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: МАНИПУЛИРОВАНИЕ АРИФМЕТИЧЕСКИМИ ВЫРАЖЕНИЯМИ.

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Логическая структура, определения
Граф - это сложная нелинейная многосвязная динамическая структура, отображающая свойства и связи сложного объекта. Многосвязная структура обладает следующими свойствами:

Машинное представление оpгpафов
Существуют два основных метода представления графов в памяти ЭВМ: матричный, т.е. массивами, и связными нелинейными списками. Выбор метода представления зависит от природы данных

Логическое представление и изображение деревьев.
Имеется ряд способов графического изображения деревьев. Пер- вый способ заключается в использовании для изображения поддеревь- ев известного метода диаграмм Венна, второй - метода

Представление любого дерева,леса бинарными деревьями.
Дерево и лес любого вида можно преобразовать единственным образом в эквивалентное бинарное дерево. Правило построения бинарного дерева из любого дерева: 1. В каждом узле

Машинное представление деревьев в памяти ЭВМ.
Деревья можно представлять с помощью связных списков и масси- вов (или последовательных списков). Чаще всего используется связное представление деревьев, т.к. оно очень с

Деревья Хаффмена (деревья минимального кодирования)
Пусть требуется закодировать длинное сообщение в виде строки битов: А В А С С D А кодом, минимизирующим длину закодированного сообщения. 1) назначим коды: ┌

Деревья при работе с арифметическими выражениями
Операция объединения двух символов в один использует струк- туру бинарного дерева. Каждый узел содержит символ и частоту вхождения. Код любого символа может быть определен просмот

Формирование таблиц символов.
В качестве примера приложения бинарных деревьев сформулируем алгоритм ведения древовидно-структурированной таблицы символов. Основной критерий, которому должна удовлетворять прогр

Сбалансированные деревья
ОПРЕДЕЛЕНИЯ. Одной из наиболее часто встречающихся задач яв- ляется поиск необходимых данных. Существуют различные методы, от- личающиеся друг от друга временем п

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги