Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые проекты » Розробка синтаксичного розпізнавача обчислюваного оператора переходу мови FORTRAN

Реферат Розробка синтаксичного розпізнавача обчислюваного оператора переходу мови FORTRAN





d Grammar (void);// Граматика мови. p> void GetFilename (void);// Запит імені файлу для відкриття. p> int ScanStr (char *);// Пошук GOTO. p> int Scaner (char *);// Обробка рядка. p> void Scan (void);// Сканування наступного символу. p> void Delspace (char *);// Видалення непотрібних прогалин в рядку.

int AB (void);// Реалізація нетермінала <АВ>. p> int T (void);// Реалізація нетермінала <Т>. p> int O (void);// Реалізація нетермінала <О>.

int IDENT (void);// Реалізація нетермінала . p> int FLOAT (void);// Реалізація нетермінала . p> void Error (int = 0, char * = "");// Обробка помилки. p>// Глобальні змінні.

char filename [MAX_STR_LEN];// Ім'я файлу. p> char * text [COL_STR +1];// Масив покажчиків на рядки тексту. p> char screen [4096];// Буфер під копію екрану. p> char mes [21] [20] [80];// Масив під повідомлення про помилках.

char nx;// Поточний символ. p> int pos;// Поточна позиція в рядку. p> char STR [80];// Сканована рядок. p> int ERR1;// Лічильник сторінок в масиві помилок. p> int ERR2;// Лічильник рядків у масиві помилок. p> FILE * errors;// Дескриптор файлу. p>// Функція MAIN. p> void main (int argc, char * argv [])

{

textcolor (LIGHTGRAY);

textbackground (BLACK);

_setcursortype (_NOCURSOR);

clrscr ();

if (argc> 2)

{

Usage ();

MyExit ();

}

if (argc == 2)

strcpy (filename, argv [1]);

else

{

Welcome ();

gettext (20,7,60,17, screen);

GetFilename ();

}

while (OpenFile ())

{

puttext (20,7,60,17, screen);

GetFilename ();

}

Menu ();

}

// Висновок повідомлень про помилки.

void Message (int j)

{

window (42,3,79,23);

textcolor (BLUE);

textbackground (CYAN);

clrscr ();

for (int i = 0; i

cprintf ("%-30s r n", mes [j] [i]);

}

// Гpамматіка мови.

void Grammar (void)

{

window (1,25,80,25);

textattr (112);

MyPuts (" ~ F1 ~ Help ~ F2 ~ Grammar ~ F3 ~ Language ~ F9 ~ Compile ~ F10 ~ Quit ~ Alt-X ~

Quit ~ Esc ~ Quit ", DARKGRAY);

window (10,5,70,20);

textcolor (WHITE);

textbackground (MAGENTA);

clrscr ();

DrawBox (2,1,60,16, "Гpамматіка мови ");

window (12,6,78,19);

textcolor (YELLOW);

cputs (" r n");

cputs (" 1. <Опеpатоpа> -> GOTO <вираженню> r n ");

cputs (" 2. <Вираженню> -> T | <вираженню> + T | <Вираженню>-T r n ");

cputs (" 3. T -> O | T * O | T/O | T ** O r n ");

cputs (" 4. O -> (<вираженню>) | <Ідентифікатор> | <ДБЗ> r n ");

cputs (" 5. <Ідентифікатор> -> Б {Б | Ц} [L] r n ");

cputs (" 6. <ДБЗ> -> Ц {Ц} [. Ц {Ц}] [L] r n n ");

...


Назад | сторінка 5 з 9 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Сортування даних та реалізація швидкого пошуку у вже відсортованому масиві ...
  • Реферат на тему: Реалізація мовного процесора оператора FOR мови BASIC
  • Реферат на тему: Практична обробка безлічі даних, що представляють собою масив покажчиків на ...
  • Реферат на тему: Обробка набору даних, представленого у вигляді файлу
  • Реферат на тему: Практична обробка набору даних, представленого у вигляді файлу