Описание языка PascalABC.NET - [11]

Шрифт
Интервал

R.Epsilon - константа, представляющая самое маленькое положительное число типа R;

R.NaN - константа, представляющая не число (возникает, например, при делении 0/0);

R.NegativeInfinity - константа, представляющая отрицательную бесконечность (возникает, например, при делении -2/0);

R.PositiveInfinity - константа, представляющая положительную бесконечность (возникает, например, при делении 2/0).

Для каждого вещественного типа R кроме decimal определены следующие статические функции:

R.IsNaN(r) - возвращает True, если в r хранится значение R.NaN, и False в противном случае;

R.IsInfinity(r) - возвращает True, если в r хранится значение R.PositiveInfinity или R.NegativeInfinity, и False в противном случае;

R.IsPositiveInfinity(r) - возвращает True, если в r хранится значение R.PositiveInfinity, и False в противном случае;

R.IsNegativeInfinity(r) - возвращает True, если в r хранится значение R.NegativeInfinity, и False в противном случае;

Для каждого вещественного типа R определены следующие статические функции:

R.Parse(s) - функция, конвертирующая строковое представление числа в значение типа R. Если преобразование невозможно, то генерируется исключение;

R.TryParse(s,res) функция, конвертирующая строковое представление числа в значение типа R и записывающая его в переменную res. Если преобразование возможно, то возвращается значение True, в противном случае - False.

Кроме того, определена экземплярная функция ToString, возвращающая строковое представление переменной типа R.

Вещественные константы можно записывать как в форме с плавающей точкой, так и в экспоненциальной форме:

1.7 0.013 2.5e3 (2500) 1.4e-1 (0.14)

Логический тип

Значения логического типа boolean занимают 1 байт и принимают одно из двух значений, задаваемых предопределенными константами True (истина) и False (ложь).

Для логического типа определены статические методы:

boolean.Parse(s) - функция, конвертирующая строковое представление числа в значение типа boolean. Если преобразование невозможно, то генерируется исключение;

boolean.TryParse(s,res) - функция, конвертирующая строковое представление числа в значение типа boolean и записывающая его в переменную res. Если преобразование возможно, то возвращается значение True, в противном случае - False.

Кроме этого, определена экземплярная функция ToString, возвращающая строковое представление переменной типа boolean.

Логический тип является порядковым. В частности, False

Символьный тип

Символьный тип char занимает 2 байта и хранит Unicode-символ. Символы реализуются типом System.Char платформы .NET.

Операция + для символов означает конкатенацию (слияние) строк. Например: 'a'+'b' = 'ab'. Как и для строк, если к символу прибавить число, то число предварительно преобразуется к строковому представлению:

var s: string := ' '+15; // s = ' 15'

var s1: string := 15+' '; // s = '15 '

Над символами определены операции сравнения < > <= >= = <>, которые сравнивают коды символов:

'a'<'b' // True

'2'<'3' // True

Для преобразования между символами и их кодами в кодировке Windows (CP1251) используются стандартные функции Chr и Ord:

Chr(n) - функция, возвращающая символ с кодом n в кодировке Windows;

Ord(с) - функция, возвращающая значение типа byte, представляющее собой код символа c в кодировке Windows.

Для преобразования между символами и их кодами в кодировке Unicode используются стандартные функции ChrUnicode и OrdUnicode:

ChrUnicode(w) - возвращает символ с кодом w в кодировке Unicode;

OrdUnicode(с) - возвращает значение типа word, представляющее собой код символа c в кодировке Unicode.

Кроме того, выражение #число возвращает Unicode-символ с кодом число (число должно находиться в диапазоне от 0 до 65535).

Аналогичную роль играют явные преобразования типов:

char(w) возвращает символ с кодом w в кодировке Unicode;

word(с) возвращает код символа c в кодировке Unicode.

Стандартные подпрограммы работы с символами.

Статические методы типа char.

Перечислимый и диапазонный типы

Перечислимый тип определяется упорядоченным набором идентификаторов.

type typeName = (value1, value2, ..., valuen);

Значения перечислимого типа занимают 4 байта. Каждое значение value представляет собой константу типа typeName, попадающую в текущее пространство имен.

Например:

type

Season = (Winter,Spring,Summer,Autumn);

DayOfWeek = (Mon,Tue,Wed,Thi,Thr,Sat,Sun);

К константе перечислимого типа можно обращаться непосредственно по имени, а можно использовать запись typeName.value, в которой имя константы уточняется именем перечислимого типа, к которому она принадлежит:

var a: DayOfWeek;

a := Mon;

a := DayOfWeek.Wed;

Значения перечислимого типа можно сравнивать на <:

DayOfWeek.Wed < DayOfWeek.Sat

Для значений перечислимого типа можно использовать функции Ord, Pred и Succ, а также процедуры Inc и Dec. Функция Ord возвращает порядковый номер значения в списке констант соответствующего перечислимого типа, нумерация при этом начинается с нуля.

Для перечислимого типа определена экземплярная функция ToString, возвращающая строковое представление переменной перечислимого типа. При выводе значения перечислимого типа с помощью процедуры write также выводится строковое представление значения перечислимого типа.


Еще от автора Неизвестный Автор
Галчонок

В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.


Призраки ночи

В книге собраны предания и поверья о призраках ночи — колдунах и ведьмах, оборотнях и вампирах, один вид которых вызывал неподдельный страх, леденивший даже мужественное сердце.


Закат  вечности

В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.


mmmavro.org | День 131, Победа

В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.


mmmavro.org | День 132, Поэт

В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.


Песнь о Нибелунгах

…«Песнь о Нибелунгах» принадлежит к числу наиболее известных эпических произведений человечества. Она находится в кругу таких творений, как поэмы Гомера и «Песнь о Роланде», «Слово о полку Игореве» и «Божественная комедия» Данте — если оставаться в пределе европейских литератур…В. Г. Адмони.


Рекомендуем почитать
Pro Git

Разработчику часто требуется много сторонних инструментов, чтобы создавать и поддерживать проект. Система Git — один из таких инструментов и используется для контроля промежуточных версий вашего приложения, позволяя вам исправлять ошибки, откатывать к старой версии, разрабатывать проект в команде и сливать его потом. В книге вы узнаете об основах работы с Git: установка, ключевые команды, gitHub и многое другое.В книге рассматриваются следующие темы:основы Git;ветвление в Git;Git на сервере;распределённый Git;GitHub;инструменты Git;настройка Git;Git и другие системы контроля версий.


Java 7

Рассмотрено все необходимое для разработки, компиляции, отладки и запуска приложений Java. Изложены практические приемы использования как традиционных, так и новейших конструкций объектно-ориентированного языка Java, графической библиотеки классов Swing, расширенной библиотеки Java 2D, работа со звуком, печать, способы русификации программ. Приведено полное описание нововведений Java SE 7: двоичная запись чисел, строковые варианты разветвлений, "ромбовидный оператор", NIO2, новые средства многопоточности и др.


MFC и OpenGL

В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.


Симуляция частичной специализации

В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.


Обработка событий в С++

В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.


Питон — модули, пакеты, классы, экземпляры

Python - объектно-ориентированный язык сверхвысокого уровня. Python, в отличии от Java, не требует исключительно объектной ориентированности, но классы в Python так просто изучить и так удобно использовать, что даже новые и неискушенные пользователи быстро переходят на ОО-подход.