Содержание материала

ПРОБЕЛ

Раньше мы также работали с вложенными пробелами, используя две подпрограммы  IsWhite  и  SkipWhite. Удостоверьтесь, что эти подпрограммы есть в вашей текущей версии Cradle и добавьте строку:

     SkipWhite;

в конец GetName и GetNum.

Теперь давайте определим новую процедуру:

Code:

{ Lexical Scanner }

Function Scan: string;

begin

   if IsAlpha(Look) then

      Scan := GetName

   else if IsDigit(Look) then

      Scan := GetNum

   else begin

      Scan := Look;

      GetChar;

   end;

   SkipWhite;

end;

 

Мы можем вызвать ее из новой основной программы:

Code:

{ Main Program }

begin

   Init;

   repeat

      Token := Scan;

      writeln(Token);

   until Token = CR;

end.

 

 

(Вы должны добавить описание строки Token в начало программы. Сделайте ее любой удобной длины, скажем 16 символов).

Теперь запустите программу. Заметьте, что входная строка действительно разделяется на отдельные токены.

Добавить комментарий

Не использовать не нормативную лексику.

Просьба писать ваши замечания, наблюдения и все остальное,
что поможет улучшить предоставляемую информацию на этом сайте.

ВСЕ КОММЕНТАРИИ МОДЕРИРУЮТСЯ ВРУЧНУЮ, ТАК ЧТО СПАМИТЬ БЕСПОЛЕЗНО!


Защитный код
Обновить