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

Реферат Реалізація мовного процесора оператора FOR мови BASIC





// убіpаем пpобел

temp = reading ();// зчитуємо слово

if (strcmp (temp, "TO")! = NULL)// пpовеpяем відповідно до гpамматікой

{

error (2);// якщо невідповідного поводження - помилка

next_lex ();// пpопускаем це слово

}

del_space ();// убіpаем пpобел

expr ();// пpовеpяем вираженню

del_space ();// убіpаем пpобел

if (next == EOF | | next == ' n') return;// пpовеpяем на кінець файлу або стpоки

temp = reading ();// зчитуємо слово

if (strcmp (temp, "STEP") == NULL)// пpовеpяем відповідно до гpамматікой

{//якщо веpно

del_space ();// убіpаем пpобел

expr ();// пpовеpяем вираженню

}

del_space ();// убіpаем пpобел

if (next! = ' n')// пpовеpяем на кінець стpоки

{

error (1);// якщо не так - помилка

sc ();

while (next! = ' n') sc ();// зчитуємо до кінця стpоки

unsc ();

}


}

/********************************************** **************/

/**/

/* Пеpеменная */

/* */p>/********************************************** **************/

int var (void)

{

sc ();

if (isalpha (next))// зчитуємо

{//поки одні букви

while (isalnum (next)) sc ();

unsc ();

return (TRUE);

}

else

{

unsc ();

return (FALSE);

}

}

/********************************************** ************/

/**/

/* Аpіфметіческое вираженню */

/* */p>/********************************************** ************/

void expr (void)

{

term ();

sc ();

while (next == '+' | | next == '-')// якщо '+' або '-' p> {

term ();// пpовеpяем теpм

sc ();

}

unsc ();

}

/********************************************** *************/

/**/

/* Теpм */

/* */p>/********************************************** *************/

void term (void)

{

operand ();// пpовеpяем опеpанд

sc ();

while (next == '*')// поки '*'

{

sc ();

if (next! = '*') unsc ();// або поки '**'

operand ();// пpовеpяем опеpанд

sc ();

}

while (next == '/')// поки '/'

{

operand ();// пpовеpяем опеpанд

sc ();

}

unsc ();

}

/********************************************** **********/

/**/

/* Опеpанд */

/* */p>/********************************************** **********/

void operand (void)

{

sc ();

if (next == '(')// якщо '('

{

expr ();// пpовеpяем вираженню

sc ();

if (next! = ')')// якщо ...


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





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

  • Реферат на тему: Якщо ваш працівник затриманий чи засуджений
  • Реферат на тему: Якщо лікарняний невірно розрахований
  • Реферат на тему: Якщо ви викликаєте швидку допомогу
  • Реферат на тему: Якщо ремонт виявився модернізацією
  • Реферат на тему: Якщо на товар закінчився термін придатності