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

Реферат Оператор присвоювання мови FORTRAN





f (liter == '.')

{liter = fgetc (in);

while (isdigit (liter))

{liter = fgetc (in);

num + +;

}

ungetc (liter, in);

num -;

return (1);

}

else

{if (isalpha (liter))

{number = 0;

while (isalnum (liter))

{number + +;

num + +;

liter = fgetc (in);

}

ungetc (liter, in);

num -;

return (2);

}

else switch (liter)

{case '+': num = 0; return (3);

case '-': num = 0; return (4);

case '/': num = 0; return (5);

case '*': num = 0;

if ((liter = fgetc (in)) == '*') return (7);

else

{ungetc (liter, in);

return (6);

}

case '(': return (8);

case ')': return (9);

case '=': return (10);

case ' n': return (11);

case EOF: return (12);

default: return (0);

}

}// else

}


// розпізнала ПОМИЛКИ У ідентифікатор.

void identif (void)

{if (temp == 0)

{While ((next! = RAV) && (next! = _EOLN_) && (next! = _EOF_))

{err [sum] = next;

sum + +;

next = scaner ();

}

}

if (temp == 1)

{if ((next! = CBZ) && (next! = ID))

{if (next == ERROR) error (2);

else error (3);

}

number = num-1;

num = 0;

}

if (number> 6) error (5);

}


// нетермінал "O" <Операнд >

void operand ()

{if (next == SKL)

{next = scaner ();

expr ();

if (next! = SKR) error (6);

else next = scaner ();

}

else

{if (next == ID) {identif (); next = scaner ();}

else

{if (next! = CBZ)

{If ((next! = _EOLN_) && (next! = _EOF_))

{If (next == ERROR)

{error (7);

next = scaner ();

operand ();

}

else

{if (next == RAV) error (7);

else error (8);

}

}

else error (8);

}

else next = scaner ();

}// else

}// else

}


// НЕТEРМІНАЛ "Е" <Вираз >

void expr (void)

{term ();

while ((next == PLUS) | | (next == MIN))

{next = scaner ();

expr ();

}

}


// нетермінал "T" <Терм >

void term (void)

{operand ();

while ((next == DIV) | | (next == MUL) | | (next == STEP))

{next = scaner ();

term ();

}

}


void error (int choice)

{switch (choice)

{case 1: mistake [line] [ofset + +] = 1; break;

case 2: mistake [...


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





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

  • Реферат на тему: Return to materialism
  • Реферат на тему: Arguing your case (10 кл)
  • Реферат на тему: Arguing your case (10 кл)
  • Реферат на тему: Об'єктно-орієнтовані CASE-засоби
  • Реферат на тему: Case-study. Аналіз випадку