20
3.1. Прости типове данни
използването на променливи от този тип. За целта в Pascal е въведен тип диапазон
(подобласт) на вече дефиниран тип. Общият вид на дефиницията е:
SubRange =
Constant '..' Constant.
Всъщност всички целочислени типове могат да се разглеждат като диапазони на
един единствен тип - LongInt.
Новият тип приема (наследява) всички операции, дефинирани над базовия тип
(този, на който е подобласт), но принадлежащите му стойностите са в затворения
интервал, определен от двете константи.
Например:
type WorkDay = Monday..Friday;
 Digit =   0..9;
3.1.5. Символен тип
Стойностите, принадлежащи на символния тип (CHAR) са символи от наличния
символен набор. Символният набор може да бъде различен при различните компютри.
За конкретната реализация на UniPascal това е разширеният ASCII код (8 битовия ASCII
код). За 8 битовия ASCII код следните множества са наредени и заемат последователни
стойности:
*
арабските цифри (от 0 до 9);
*
големите латински букви (от A до Z);
*
малките латински букви (от a до z);
*
големите букви от кирилицата (от А до Я);
*
малките букви от кирилицата (от а до я).
За символния тип не са определени операции. Но за него важат всички описани
за изброимия тип стандартни функции. Освен тях в Pascal е дефинирана още и
стандартната функция CHR с аргумент цяло число в интервала [0, 255], даваща като
резултат символ със съответния ASCII код. Между впрочем, в UniPascal необходимостта
от такава функция отпада поради наличието на явно преобразуване на типа. Така че
всъщност CHR(x) = CHAR(x) за всяко x (от интервала 0..255). Функцията CHR е
реализирана за пълнота.
3.1.6. Реален тип
Към реалния тип (REAL) в UniPascal принадлежат (както е естествено да се очаква)
реалните числа. За съжаление, поради метода на представяне на реалните числа в
изчислителните машини изобщо, това не са познатите ни от математиката реални числа,
а реални числа, представяни с крайна точност, в частност трансцедентните числа и
безкрайните периодични дроби не могат да се представят точно в компютърната реална
аритметика.
Реалните числа се представят закръглено с точност, която специално за UniPascal
е 7-8 цифри за мантисата, а порядъка е в интервала [-38, 38], т.е. могат да бъдат
представяни реални числа със 7-8 цифри, умножени по 10 на степен от - 38 до 10 на
степен 38. Трябва винаги да се има предвид тази особеност на компютърната реална
аритметика, когато се съставят програми.
Над реалния тип са дефинирани едноместните операции унарен плюс и унарен
минус (смяна на знака), както и следните двуместни операции: събиране (+), изваждане
(-), умножение (*), деление(/).
Дефинирани са и следните стандартни функции на реален аргумент, на които
резултатът е от реален тип:
<<  <  GO  >  >>

Вернуться к началу сайта