Простейшим числовым типом данных в Паскале являются целые типы, предназначенные для хранения целых чисел. Целые числа в Паскале принято делить на два типа: со знаком и без знака. Числа со знаком – это целочисленный тип, в который входят как положительные, так и отрицательные числа, без знака – только положительные.
Ниже приведены две таблицы с целочисленными типами. Сначала выпишем типы целых чисел со знаком :
Тип | Байт | Диапазон значений |
shortint | 1 | -128 . 127 |
smallint | 2 | -32768 . 32767 |
integer, longint | 4 | -2147483648 . 2147483647 |
int64 | 8 | -9223372036854775808 . 9223372036854775807 |
Урок по Pascal. Тип данных Integer + структура программы.
А это целочисленные типы без знака :
Тип | Байт | Диапазон значений |
byte | 1 | 0 . 255 |
word | 2 | 0 . 65535 |
longword, cardinal | 4 | 0 . 4294967295 |
uint64 | 8 | 0 . 18446744073709551615 |
Как видно, в первой колонке стоит название типа, во второй – количество байт, занимаемое в памяти числами этого типа, в третьей – соответственно диапазон возможных значений. В числах со знаком есть два типа – integer и longint (буквально «целый» и «длинный целый»), которые являются синонимами. То есть вы можете в разделе описаний использовать как одно название, так и другое.
Аналогично во второй таблице (неотрицательные целые числа в Паскале) есть также два целочисленных типа-синонима размером 4 байта – longword и cardinal , поэтому используйте либо одно, либо другое.
Ещё можно заметить, что если числа первой таблицы условно перенести в правую часть относительно нуля (сдвинуть интервал вправо так, чтобы минимальным числом оказался 0), то мы получим интервалы целых чисел второй таблицы, лежащие в соответствующих строках. Так, если в 1-байтовом типе shortint к левой и правой границам прибавить 128, то получим тип byte (0..255); если в 2-байтовом типе smallint к границам прибавить 32768, то получим соответствующий 2-байтовый тип без знака word (0..65535) и т.д.
Всё это случается потому, что в целочисленных типах без знака числа могут быть разделены ровно надвое: половина чисел – в отрицательную часть, половина – в положительную. А почему тогда в числах со знаком левая граница по абсолютной величине на 1 больше за правую границу? – спросите вы. Например, в типе shortint минимум -128, тогда как максимум всего 127 (по модулю на 1 меньше). А это потому, что в правую часть входит также и 0, и об этом надо знать и помнить.
Часто употребляемые типы данных в Делфи. Integer, Real, String
Так зачем же целые числа в Паскале делить на столько типов? Почему не обойтись, например, наибольшим из целочисленных типов в PascalABC.Net и Free Pascal – int64 – это почти 9 с половиной квинтиллионов (!) как с минусом, так и с плюсом? Да по простой банальной (?) причине – экономия памяти.
Если вам надо сложить два небольших однобайтовых положительных числа (0..255), а вы эти числа описали как int64 (8 байт), то на это ушло в 8 раз больше памяти. А если программа большая и переменных много, то экономия памяти встает очень резко. Причем нет смысла использовать целые типы со знаком, если в задаче речь идет о таких величинах, как длина, масса, расстояние, время и т.п.
В разделе сайта Задачник Абрамяна (подраздел Integer) понаблюдайте за использованием различных целочисленных типов в Паскале.
Каждый тип обозначает подмножество целых чисел:
Тип Диапазон Формат
ShortInt -128..127 Знаковый 8 бит
Integer -32768.. Знаковый 16 бит
LongInt -2147483648.. Знаковый 32 бита
Byte 0..255 Беззнаковый 8 бит
Word 0..65535 Беззнаковый 16 бит
Все целочисленные типы являются порядковыми . Максимальным значениям Integer и LongInt соответствуют константы MaxInt и MaxLongInt . Максимальные и минимальные значения других целочисленных типов можно получать, изпользуя функции Low и High .
Ада
В этом пакете объявлены целочисленные типы с диапазонами, не зависимыми от компилятора и операционной среды.
Тип Диапазон Формат
Integer_8 -128..127 Знаковый 8 бит
Integer_16 -32768..32767 Знаковый 16 бит
Integer_32 -2147483648..2147483647 Знаковый 32 бита
Integer_64 -2**63 .. 2**63 — 1 Знаковый 64 бита
Unsigned_8 0..255 Беззнаковый 8 бит
Unsigned_16 0..65535 Беззнаковый 16 бит
Unsigned_32 0..4294967296 Беззнаковый 32 бита
Unsigned_64 0 .. 2**64 — 1 Беззнаковый 64 бита
Пакет Standard (подключается автоматически):
В этом пакете определены стандартные целочисленные типы. По стандарту, диапазон каждого следующего типа должен быть не уже, чем у предыдущего. Кроме того, на два из этих типов наложены явные минимальные ограничения по битности.
Тип Не уже, чем у. Обычно является.
Short_Short_Integer Integer_8
Short_Integer Integer_16
Integer Integer_16 Integer_32
Long_Integer Integer_32 Integer_32
Long_Long_Integer Integer_64
Несмотря на то, что я в правой колонке выписал битность каждого типа, использовать я рекоммендую только Integer и Long_Integer. Для всех остальных битностей предпочтительней типы Integer_x. Компилятор — это как частный сыщик. Чем больше от него недоговорок, тем меньше он будет полезен. Кто знает, какими битностями будут обладать стандартные типы на платформе Win128.
Кроме указанных типов, в Standard есть часто используемые:
Natural is Integer range 0 .. Integer»Last;
Positive is Integer range 1 .. Integer»Last;
Система типов языка Ада продумана лучше, чем в Borland Pascal. В Borland Pascal нельзя скомпилировать такую программу:
Индекс -1 — это обычное явление, если работать с массивами, начальный индекс которых 0. Если массив пустой, то верхняя граница цикла for (длина массива минус один) как раз и получается -1. Вместо вызова ошибки этот цикл должен просто ничего не делать. В языке Ада таких проблем не возникнет. Используйте Natural и Positive на здоровье.
Данные – это общее понятие для всего того, с чем оперирует ЭВМ.
Переменные, используемые для хранения данных в языке Паскаль, могут быть различных типов. Это, в частности, связано со стремлением получать более компактные и быстродействующие программы, использующие меньшее количество памяти при своей работе.
Например, для хранения небольших чисел требуется меньше памяти, чем для хранения больших. Целые числа из диапазона 0-255 занимают лишь 1 байт памяти, тогда как бльшие числа требуют бльшего количества байт. Если по логике работы программы известно, что результат не превысит 255, то для его хранения достаточно использовать однобайтовую переменную.
С другой стороны, современные процессоры обычно по-разному обрабатывают целые и вещественные числа. Например, команды целочисленной арифметики в процессорах i80x86 выполняются непосредственно в основном АЛУ и требуют относительно немного процессорного времени. Тогда как операции с вещественными числами выполняются математическим сопроцессором, который, хотя и обладает большими возможностями по обработке, но требует гораздо больше времени для получения результата.
Поэтому, если по логике работы алгоритма не требуется использование вещественных чисел, нет смысла задействовать громоздкую «плавающую» арифметику. Указав в программе, что данная переменная является целочисленной, программист фактически даёт инструкцию компилятору обрабатывать её быстрым АЛУ основного процессора, не задействуя без необходимости сопроцессор.
Кроме того, для разных типов данных могут быть определены различные операции. Например, бессмысленно выполнять операцию деления для строк символов или делать сложение вещественной переменной с логической. Если при декларации переменной указывается её тип, компилятор получает возможность следить за правильностью выражений, в которых эта переменная будет использоваться. Это позволяет немного сократить число ошибок в программе.
В Паскале существуют простые, составные и ссылочные типы данных. Сейчас мы познакомимся подробно лишь с первыми из них, а об остальных поговорим на следующих лекциях.
Логическое значение — это одно из двух значений истинности, которые обозначаются зарезервированными именами false и true .
Источник: qipu.ru
Тест на тему “Типы данных в Паскале”
А какую оценку получите вы? Чтобы узнать — пройдите тест.
Последние результаты
17 секунд назад
26 секунд назад
41 секунда назад
51 секунда назад
57 секунд назад
Тест «Садко» с результатом 8/14
1 минута назад
1 минута назад
1 минута назад
1 минута назад
2 минуты назад
2 минуты назад
2 минуты назад
2 минуты назад
2 минуты назад
2 минуты назад
2 минуты назад
2 минуты назад
3 минуты назад
Тест «Мцыри» с результатом 9/10
3 минуты назад
3 минуты назад
Не подошло? Напиши в комментариях, чего не хватает!
Образовакатвой помощник в учебе
Полное или частичное копирование материалов разрешается только с указанием активной гиперссылки на https://obrazovaka.ru
- Пользовательское соглашение
- Политика конфиденциальности
- Архив вопросов — 1
- Архив вопросов — 2
- Архив вопросов — 3
- Архив вопросов — 4
- Архив вопросов — 5
- Архив вопросов — 6
- Архив вопросов — 7
- Архив вопросов — 8
- Архив вопросов — 9
- Архив вопросов — 10
- Архив вопросов — 11
- Архив вопросов — 12
Источник: obrazovaka.ru
Тип longint в паскале
Переменные целого типа могут принимать только целые значения. Такие переменные в программе описываются следующим образом:
Здесь a, b, c… — имена переменных, integer – тип переменных. Транслятор, встретив такое описание переменных a, b, c, запоминает, что эти переменные могут принимать только целые значения и формирует соответственно этому команды программы.
Таблица. Операции над целыми типами, дающие в результате значение целого типа
При описании переменной необходимо указать ее тип. Тип переменной описывает набор значений, которые она может принимать, и действия, которые могут быть над ней выполнены. Описание типа определяет идентификатор, который обозначает тип.
Простые типы делятся на стандартные (порядковые) и перечисляемые (ограниченные).
Стандартные типы
Турбо-Паскаль имеет четыре встроенных стандартных типа: integer (целое), real (вещественное), boolean (логический) и char (символьный).
Целочисленный тип (integer)
В Турбо-Паскале имеется пять встроенных целочисленных типов: shortint (короткое целое), integer (целое), longint (длинное целое), byte (длиной в байт) и word (длиной в слово). Каждый тип обозначает определенное подмножество целых чисел, как это показано в следующей Таблице.
Встроенные целочисленные типы.
Тип
Диапазон
Формат
8 битов со знаком
16 битов со знаком
32 бита со знаком
8 битов без знака
16 битов без знака
Арифметические действия над операндами целочисленного типа осуществляются в соответствии со следующими правилами:
- Тип целой константы представляет собой встроенный целочисленный тип с наименьшим диапазоном, включающим значение этой целой константы.
- В случае бинарной операции (операции, использующей два операнда), оба операнда преобразуются к их общему типу перед тем, как над ними совершается действие. Общим типом является встроенный целочисленный тип с наименьшим диапазоном, включающим все возможные значения обоих типов. Например, общим типом для целого и целого длиной в байт является целое, а общим типом для целого и целого длиной в слово является длинное целое. Действие выполняется в соответствии с точностью общего типа и типом результата является общий тип.
- Выражение справа в операторе присваивания вычисляется независимо от размера переменной слева.
Операции совершаемые над целыми числами:
SQR — возведение в квадрат
DIV — после деления отбрасывает дробную часть
MOD — получение целого остатка после деления
ABS — модуль числа
RANDOM(X)-получение случайного числа от 0 до Х
Описываются переменные целого типа следующим образом:
var список переменных: тип;
Например: var а,р,n:integer;
Вещественный тип(real)
К вещественному типу относится подмножество вещественных чисел, которые могут быть представлены в формате с плавающей запятой с фиксированным числом цифр. Запись значения в формате с плавающей запятой обычно включает три значения — m, b и e — таким образом, что m*b е , где b всегда равен 10, а m и e являются целочисленными значениями в диапазоне вещественного типа. Эти значения m и e далее определяют диапазон и точность вещественного типа.
Имеется пять видов вещественных типов: real, singlе, duble, exnende, comp. Вещественные типы различаются диапазоном и точностью связанных с ними значений
Диапазон и десятичные цифры для вещественных типов
Тип
Диапазон
Цифры
2.9×10Е-39 до 1.7×10Е 38
1.5×10Е-45 до 3.4×10Е 38
5.0×10Е-324 до 1.7×10Е 308
3.4×10Е-493 до 1.1×10Е 403
Операции совершаемые над вещественными числами:
- Все операции допустимые для целых чисел.
- SQRT(x)-корень квадратный из числа х.
- SIN(X), COS(X), ARCTAN(X).
- LN(X)-натуральный логарифм.
- EXP(X)-экспонента Х (е х ).
- EXP(X*LN(A))-возведение в степень (А х ).
- Функции преобразования типов:
- TRUNC(X)-отбрасывает дробную часть;
- ROUND(X)-округление.
Описываются переменные вещественного типа следующим образом:
Символьный тип(char)
K типу char относится любой символ заключенный в апострофы. Для представления апострофа как символьную переменную, надо заключить его в апостроф:’’’’.
Каждый символ имеет свой код и номер. Порядковые номера цифр 0,1..9 упорядочены по возрастанию. Порядковые номера букв также упорядочены по возрастанию, но не обязательно следуют друг за другом.
К символьным данным применимы знаки сравнения:
Например: ‘A’ — это особый вид констант, задаваемых через запятую и имеющих свой порядковый номер, начиная с 0.
Можно выполнить такие операторы присваивания:
но нельзя выполнять смешанные присваивания:
К переменным перечислимого типа применимы следующие функции:
1. ORD — порядковый номер
2. PRED — предшествующий элемент
3. SUCC — последующий элемент.
Переменные перечислимого типа можно сравнить, так как они упорядочены и пронумерованы. Так выражения: север запад и бак
Программирование. Числовые типы данных Pascal-Паскаль
- Скачено бесплатно: 7794
- Куплено: 414
- Pascal-Паскаль->Программирование. Числовые типы данных Pascal-Паскаль
Числовые типы данных Pascal-Паскаль
Наиболее распространенные в математике числовые типы – это целые числа, которые представляют бесконечное множество дискретных значений, и действительные числа, которые представляют неограниченный континуум значений.
Описание числовых типов данных (целые) Паскаля
В пределах одного языка могут быть реализованы различные подмножества множества целых чисел. Диапазон возможных значений целых числовых типов зависит от их внутреннего представления, которое может занимать один, два или четыре байта. Так, в Паскале 7.0 используются следующие целые числовые типы данных:
Byte | 1 | 0..255 |
ShortInt | 1 | -128..+127 |
Word | 2 | 0..65535 |
Integer | 2 | -32768..+32767 |
LongInt | 4 | -2 147 483 648..+2 147 483 647 |
С целыми числовыми типами данных Паскаля можно выполнять следующие операции:
- Арифметические:
сложение(+);
вычитание(-);
умножение(*);
остаток от деления (mod);
возведение в степень;
унарный плюс (+);
унарный минус (-).
- Операции отношения:
отношение равенства (=);
отношение неравенства (<>);
отношение меньше ( );
отношение не меньше (>=);
отношение не больше ( r , где M – мантисса числа; r – порядок числа (r – целое число); P – основание системы счисления. Например, для десятичного основания представление 2Е-1 (здесь Е – основание десятичной системы счисления) будет иметь вид: 2*10 -1 =0.2, а представление 1.234Е5 будет соответствовать: 1.234*10 5 =123400.0.
В Паскале используются следующие типы вещественных чисел, которые определяют произвольное число лишь с некоторой конечной точностью, зависящей от внутреннего формата вещественного числа:
4 | Single | 7..8 | -45..+38 |
6 | Real | 11..12 | -39..+38 |
8 | Double | 15..16 | -324..+308 |
10 | Extended | 19..20 | -4951..+4932 |
8 | Comp | 19 . .20 | -2*10 63 +1..+2*10 63 -1 |
При описании вещественной переменной типа real в памяти компьютера будет создана переменная размерностью 4 байта. При этом 3 байта будут отданы под мантиссу, а один – под порядок.
Над действительными числовыми типами данных можно выполнять следующие операции:
Исходники Pascal (127)
Справочник
Справочник по паскалю: директивы, функции, процедуры, операторы и модули по алфавиту
Нет связанных сообщений
Источник: girlgames01.ru