Интерпретация блок-схем

struct CONSTANTA* HeapConst;//указатель на таблицу констант

struct Rects RectPl;// параметры планшета схемы

struct CONSTANTA* MultiConst;// свертка блока мультиветвления

bool FlagRun;// признак выполняется программа или нет

// вспомогательные функции

int Poisk_Function(char *,int ,char* []);//поиск функции//Ok

void DeleteVariable(struct VARIABLE* );//удалить таблицу переменных//Ok

void DeleteSvertka(struct SVERTKA*);//удалить свертку//Ok

void DeleteConst(struct CONSTANTA* );//удалить таблицу констант//Ok

int ClassSimbol(const char&);//класс символа//Ok

int LenTextBlock(char*);//длинна текста блока// Ok

void DeleteScheme(struct BLOCK*); //Удалить схему// Ok

void CopyStrToStr(char *,char *); //Копировать строку в строку//Ok

int AddStringToTextBlock(struct BLOCK *,char *);//Добавить строку к

//тексту блока//Ok

void GetsStringFromFile(FILE *,char *);//Прочитать строку из файла//Ok

// конструкторы

ClassScheme();

// функции для чтения записи схемы

unsigned char LoadFromFile(char *);// функция для считывания файла

// с диска //Ok

unsigned char SaveToFile(char *); // функция для записи файла на

// диск // Ok

// функции для интерпретации блок-схемы

struct VARIABLE* PoiskVar(char* );//поиск переменной по имени//Ok

struct VARIABLE* CreateVar(char*, char,unsigned int,unsigned int*,int);

//создать переменную с параметрами//Ok

struct CONSTANTA* CreateConst(unsigned char,char*);//создание константы//Ok

unsigned char TextBlockToSvertka(char *, int);//функция для построения

// свертки блока//Ok

int ClassSvertka(struct SVERTKA* ,int [][2],int ,int ,int );// класc свертки//Ok

void UnarOperation(struct SVERTKA*);// определяет унарные

// операции которые обозначены как n-арные(+,-)//Ok

struct SVERTKA* Insetr(struct SVERTKA* ,unsigned char);//вставка

// оператора в начала последовательности и после ';' //Ok

unsigned char Sintacsis(struct SVERTKA*,int [][2],int,int,int,int*,

int*);// проверка синтаксиса свертки//Ok

struct SVERTKA* SintacsisHelp(struct SVERTKA*,int [][2],int,int,int,

int*,int*);// проверка синтаксиса свертки//Ok

struct SVERTKA* Polis(struct SVERTKA*);//построение полиза//Ok

struct SVERTKA* Stek(struct SVERTKA* ,int);//поиск элемента стека если

// его нет то создание его//Ok

struct SVERTKA* Run(unsigned char,int&,struct SVERTKA*,int,

struct SVERTKA*);//

// выполнение конкретной операции

unsigned char Run(struct SVERTKA* );//функция выполнения

//команд полиза//Ok

unsigned char RunBegin(struct SVERTKA*);//выполнение команд блока начало//Ok

unsigned char Translation1(void);//Первый этап трансляции//Ok

unsigned char Translation2(void);//второй этап трансляции//Ok

unsigned char Translation3(void);//Третий этап трансляции

struct BLOCK* BpFunction(struct BLOCK*);//выполнение связки БП//Ok

float Trigonometria(struct SVERTKA*,int&);

// обработчик тригонометрических функций//Ok

struct SVERTKA* NewSvertka(int&,unsigned char,unsigned char);

// построение новой свертки//Ok

// функции поиска блока

struct BLOCK *Poisk(struct BLOCK *);// поиск блока по адресу//Ok

struct BLOCK *Poisk(int,int);// поиск блока по заданным координатам//Ok

struct BLOCK *Poisk(unsigned int);// поиск блока по типу блока//Ok

// функции создания, добавления, вырезания и удаления блока из схемы