Delphi. Учимся на примерах - [43]
Таблица Д.1. Числовые типы данных языка Object Pascal
Целочисленные типы | Диапазон значений | Типы чисел с плавающей запятой | Диапазон значений |
---|---|---|---|
Byte | 0..255 | Real | 5.0·10>-324..1.7·10>308 |
ShortInt | -128..127 | Real48 | 2.9·10>-39..1.7·10>38 |
SmallInt | -32768..32767 | Single | 1.5·10>-45..3.4·10>38 |
Word | 0..65535 | Double | 5.0·10>-324..1.7·10>308 |
Integer, LongInt | -2147483648..21474883647 | Extended | 3.6·10>-4951..1.1·10>4932 |
Cardinal, LongWord | 0..4294967295 | Comp | -2>63+1..2>63–1 |
Int64 | -2>63..2>63–1 | Currency | -922337203685477.5808..922337203685477.5807 |
Символьный тип
Символьный тип обозначается при помощи ключевого слова Char к его значения хранят только один символ.
Строковые типы
В языке Object Pascal используются два обобщенных строковых типа:
• String — если в проекте Delphi указана директива компилятора {$H+} (поддержка больших строк), то этому типу соответствуют строки длиной от 0 до 2147483648 символов; в противном случае типу String соответствуют строки длиной от 0 до 255 символов;
• PChar — тип, аналогичный строковому типу языка C.
По своей сути, строковые значения — это массивы символов, в которых нумерация элементов для типа String начинается с 1, а для типа PChar — с 0.
Булев тип данных
Переменная булевого типа занимает один байт памяти и может принимать только одно из двух значений: True ("истина", "да", 1) или False ("ложь", "нет", 0). Булев тип обозначается при помощи ключевого слова Boolean.
Массивы
Массив — это упорядоченная именованная совокупность однотипных значений, к которым можно обращаться по их порядковому номеру (индексу). Для описания массивов в языке Object Pascal используют следующие формы:
• array [1..N1] of type — одномерный массив фиксированного размера (N1 — размерность массива, type — тип значений, хранимых в массиве);
• array[1..N1, 1..N2] of type — двухмерный массив фиксированного размера;
• array[1..N1, 1..N2, 1..N3] of type — трехмерный массив фиксированного размера;
• array of type — массив переменного размера. Длину таких массивов можно изменять в процессе выполнения программы при помощи процедуры SetLength. Индексация значений начинается с 0.
Константы
Константа — это именованное фиксированное значение. Для объявления констант используют конструкцию вида:
>const имя_константы = значение;
Например:
>const Factor = 1.756;
Тип константы определяется автоматически по присвоенному ей значению.
Переменные
Переменная — это именованное значение определенного типа, которое можно изменять в процессе выполнения программы. Для объявления переменных используют запись следующего вида:
var имя_переменной: имя_типа;
Например :
>var
> i: Integer; //переменная i типа Integer
> s: String; //переменная S типа String
> MyArray: array[1..10] of Char; {переменная MyArray — массив значений типа Char. Эту переменную можно было бы также объявить как String[10]}
При обращении и инициализации переменных используют следующие правила:
• для присвоения значений переменным используют оператор присваивания :=;
• строковые и символьные значения, присваиваемые переменным, заключают в одинарные кавычки ('с', ' строка');
• для обращения к отдельным элементам массива или отдельным символам строки используют запись вида: а[1] — для одномерных массивов и строк; а[3][1] – для двухмерных массивов; а[1][6][2] — для трехмерных массивов и т. д.;
• в качестве типа переменной может быть указан как встроенный тип языка Object Pascal, так и пользовательский, определенный при помощи ключевого слова type (создание пользовательских типов рассматривается ниже).
К переменным в программе обращаются по их идентификаторам.
Пример для типа String:
>var
> s1, s2: String; //объявляем две переменные типа String
> с: Char; //и одну типа Char
> ...
>s1:= 'Строка'; //присваиваем s1 некоторое значение
>с:= s[1]; //переменная с хранит значение 'С'
>s2:= s1 + с; //в s2 сохраняем строку 'СтрокаС'
>…
Пример для динамического массива:
>var
> MyArray: array of Char; s: String;
> …
>SetLength(MyArray, 1); //устанавливаем длину массива = 1
>A[0]:= 'С';
>SetLength(MyArray, 2); //устанавливаем длину массива = 2
>А[1]:= 'т';
>s:= А[0] + А[1] + 'рока' //в s сохраняется значение 'Строка'
>…
Пользовательские типы данных
Для объявления пользовательских типов, используют конструкцию вида:
>type имя_типа = описание_типа;
К примеру, таким образом можно объявлять типы множеств, перечислимые типы и подтипы.
Множества
Множество — это совокупность однотипных целочисленных или символьных значений, среди которых не может быть двух одинаковых. Для объявления типа множества используется запись вида
>set of первое_значение..последнее_значение;
Совокупности значений, которые используются для инициализаций переменных этого типа, заключают в квадратные скобки, а значения отделяются друг от друга запятыми.
Например:
>type
> TNumbers = set of 1..10;
> TAlphabet = set of 'a';
>var
> Odds, Evens: TNumbers;
> ABC: TAlphabet;
> …
>Odds:= [1, 3, 5, 7, 9];
>Evens:= [2, 4, 6, 8, 10];
>ABC:= ['a', 'b', 'с'];
>…
Перечислимые типы
Перечислимые типы используют для определения упорядоченных наборов значений в виде списка идентификаторов, соответствующих этим значениям. Для объявления таких типов используют запись следующего вида:
В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.
Сейчас во многих школах, институтах и других учебных заведениях можно встретить компьютеры старого парка, уже отслужившие свое как морально, так и физически. На таких компьютерах можно изучать разве что Dos, что далеко от реалий сегодняшнего дня. К тому же у большинства, как правило, жесткий диск уже в нерабочем состоянии. Но и выбросить жалко, а новых никто не дает. Различные спонсоры, меценаты, бывает, подарят компьютер (один) и радуются, как дети. Спасибо, конечно, большое, но проблемы, как вы понимаете, этот компьютер в общем не решает, даже наоборот, усугубляет, работать на старых уже как-то не хочется, теперь просто есть с чем сравнивать.
В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.
В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.
В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.
Python - объектно-ориентированный язык сверхвысокого уровня. Python, в отличии от Java, не требует исключительно объектной ориентированности, но классы в Python так просто изучить и так удобно использовать, что даже новые и неискушенные пользователи быстро переходят на ОО-подход.