printРабочее место участника

printЗадачи

1109. Форматирование программы

Ограничения: время – 1s/2s, память – 64MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

Регистр букв в программе на языке Паскаль не имеет значения, но для лучшего выделения структуры программы рекомендуется писать все резервированные слова (AND, ARRAY, BEGIN, CASE, CONST, DIV, DO, DOWNTO, ELSE, END, FILE, FOR, FUNCTION, GOTO, IF, IN, LABEL, MOD, NIL, NOT, OF, OR, PACKED, PROCEDURE, PROGRAM, RECORD, REPEAT, SET, THEN, TO, TYPE, UNTIL, VAR, WHILE, WITH) прописными буквами, а остальные идентификаторы, включая имена встроенных типов и функций, – строчными буквами.
Напишите программу, которая изменяет регистр букв в программе на языке Паскаль в соответствии с этой рекомендацией, оставляя без изменений регистр в комментариях, которые записываются в {}, и в строковых константах, которые записываются в ''.
Ввод содержит синтаксически правильную программу на языке Паскаль. Количество строк не превышает 100. Длина строк не превышает 80 символов. Длина идентификаторов не превышает 20 символов.
Вывод содержит программу с изменением регистра букв резервированных слов и идентификаторов, остальные символы копируются из ввода без изменений.

Пример ввода

{ My first program }
Program Hello;
BeGiN
   WRITELN('Hello, world!');
end.

Пример вывода

{ My first program }
PROGRAM hello;
BEGIN
   writeln('Hello, world!');
END.
Примечание: резервированные слова языка Паскаль в этой задаче ограничены набором из стандарта ISO 7185, не рассматривайте никаких дополнительных. Также не рассматривайте другие виды записи комментариев. Определение понятия идентификатора полностью совпадает в языках Pascal и C/C++ и намеренно не приводится в тексте задачи, так как является базовым в программировании.
loading