Читаем Описание языка PascalABC.NET полностью

lgWithObjects = $FFF80;

lgNET = $FF00;

lgPascalABCNET = $0401;

lgAll = $FFFFFF;



Данные константы, совместно с описываемой далее функцией CurrentLanguage, позволяют определить язык программирования, на который в данный момент (т. е. в момент инициализации текущей группы заданий) настроен задачник. Константы lgPascal, lgVB, lgCPP, lgCS, lgVBNET, lgPascalABCNET, lg1C, lgPython, lgJava соответствуют конкретному языку из числа тех, которые доступны в текущей версии задачника (Pascal, Visual Basic, C++, C#, Visual Basic .NET, PascalABC.NET, 1С:Предприятие, Python, Java). Эти константы являются битовыми флагами. Константа lg1C появилась в версии 4.9 конструктора учебных заданий (в связи с реализацией комплекса PT for 1C -- варианта задачника для системы 1С:Предприятие), константа lgPython -- в версии 4.10 (в связи с реализацией варианта задачника для языка Python), константа lgJava -- в версии 4.11 (в связи с реализацией варианта задачника для языка Java).

Некоторые константы являются комбинациями битовых флагов (т. е. битовыми масками) и позволяют определить, к какой категории относится текущий язык:

lgAll -- любой язык, lgNET -- язык платформы .NET (языки C# и Visual Basic .NET), lgWithPointers -- язык, для которого можно разрабатывать группы заданий на обработку динамических структур с применением указателей (языки Pascal и C++), lgWithObjects -- язык, для которого можно разрабатывать группы заданий на обработку динамических структур с применением объектов (все языки платформы .NET, а также Python и Java). Особое место занимает язык, реализованный в системе PascalABC.NET, поскольку в нем объединяются свойства обычного языка Pascal и языка платформы .NET. Данному языку соответствует комбинация флагов lgPascal и lgPascalNET; это, в частности, означает, что он принадлежит одновременно к категориям lgWithPointers, lgWithObjects и lgNET. Для языка PascalABC.NET предусмотрена также именованная константа lgPascalABCNET.


function CurrentLanguage: integer;


Функция возвращает значение, соответствующее языку программирования, на который в данный момент настроен задачник. Помимо сравнения возвращаемого значения функции с константами, соответствующими конкретному языку, можно также использовать данную функцию для определения категории, к которой относится текущий язык программирования; в этом случае необходимо применять побитовые операции. Например, для проверки того, что текущий язык программирования относится к категории языков платформы .NET, достаточно проверить истинность следующего условия:


CurrentLanguage and lgNET <> 0


При использовании задачника совместно с системой PascalABC.NET функция CurrentLanguage возвращает значение lgPascalABCNET.


function CurrentLocale: string;


Функция возвращает строку, соответствующую текущей локали, т. е. текущему языку интерфейса, используемому в задачнике. В версии 4.11 конструктора учебных заданий возможными возвращаемыми значениями функции CurrentLocale являются 'ru' (русский вариант задачника) и 'en' (английский вариант).


function CurrentVersion: string;


Данная функция добавлена в версию 4.10 конструктора учебных заданий. Она возвращает номер текущей версии задачника в виде строки числа формата 'd.dd'. Например, в случае версии 4.11 возвращается строка '4.11'. Для версий, предшествующих версии 4.10, функция возвращает строку '4.00'.

Образцы слов и предложений


Приведенные ниже элементы конструктора PT4TaskMaker позволяют получить доступ к встроенным в него образцам текстовых исходных данных: словам (Word), предложениям (Sentence) и многострочным текстам (Text).


const

SampleError = '#ERROR?';

MaxLineCount = 50;


function WordCount: integer;

function SentenceCount: integer;

function TextCount: integer;

function WordSample(N: integer): string;

function SentenceSample(N: integer): string;

function TextSample(N: integer): string;


function EnWordCount: integer;

function EnSentenceCount: integer;

function EnTextCount: integer;

function EnWordSample(N: integer): string;

function EnSentenceSample(N: integer): string;

function EnTextSample(N: integer): string;


Перейти на страницу:

Похожие книги

Разработка приложений в среде Linux. Второе издание
Разработка приложений в среде Linux. Второе издание

Книга известных профессионалов в области разработки коммерческих приложений в Linux представляет СЃРѕР±РѕР№ отличный справочник для широкого круга программистов в Linux, а также тех разработчиков на языке С, которые перешли в среду Linux из РґСЂСѓРіРёС… операционных систем. РџРѕРґСЂРѕР±но рассматриваются концепции, лежащие в основе процесса создания системных приложений, а также разнообразные доступные инструменты и библиотеки. Среди рассматриваемых в книге вопросов можно выделить анализ особенностей применения лицензий GNU, использование СЃРІРѕР±одно распространяемых компиляторов и библиотек, системное программирование для Linux, а также написание и отладка собственных переносимых библиотек. Р

Майкл К. Джонсон , Эрик В. Троан

Программирование, программы, базы данных