ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 10.07.2024
Просмотров: 24
Скачиваний: 0
Алгоритмический язык Pascal
Тема 5 «Структура данных в языке Паскаль»
1.Переменная величина. Типы данных
2.Концепция типов данных в языке Паскаль
3.Операция присваивания
4.Типы данных в языке Паскаль
5.Структура программы в языке Паскаль
Тема 5. Переменная величина. Типы данных
1. Переменная величина. Типы данных
Переменная величина - объект, который способен принимать значения из некоторого множества, в отличие от математики в информатике множество может иметь произвольное значение. Переменные величины - обозначаются именами (идентификаторами), имя должно начинаться с буквы (в большинстве
алгоритмических языков буквы могут относиться только к латинскому алфавиту).
При использовании переменной величины в алгоритмическом языке Паскаль, в отличие от многих других языков, переменная величина должна быть описана. Описать переменную величину - значит указать тип переменной величины.
Тип переменной величины - важнейшая характеристика переменной величины, он определяет:
1.Множество значений переменной величины.
2.Множество допустимых операций.
3.Структуру значения.
4.Внутреннее машинное представление.
Тема 5. Переменная величина. Типы данных
2. Концепция типов данных в языке Паскаль
До появления языка Паскаль тип переменной величины не был самостоятельным объектом, а определялся разработчиком языка по указанию имени переменной. С появлением языка Паскаль тип переменной стал самостоятельным объектом, который может быть определен самим пользователем.
Определить тип можно в разделе описания типов
type <имя типа> = <описание типа>.
Если тип стандартен, его можно не описывать, если тип не стандартен, его нужно обязательно описать. Любая переменная величина должна быть в Паскале описана (указано имя и ее тип).
Тема 5. Переменная величина. Типы данных
Операция присваивания является оной из самых важных среди всех конструкций языка. С помощью этой операции переменные величины принимают свои значения или меняют их.
Следует различать два понятия:
•описание переменной величины (указание имени переменной и ее типа)
•определение переменной величины
Определить значение переменной величины в алгоритмическом языке можно двумя путями:
1.С помощью операции обмена данными, с внешними устройствами (дисплей, клавиатура, магнитные диски, лента и др.) или внутренними устройствами (операционная память, регистры процессора).
2.С помощью операции присваивания (:=). Операция присваивания:
<имя переменной> := <значение переменной величины>
Операция присваивания означает действия, с помощью которых переменная величина, имя которой указано справа получает значение указанное слева
Например: а := 3.5, n := n + 1
Тема 5. Переменная величина. Типы данных
4. Типы данных в языке Паскаль
Типы данных
Скалярные |
Структурированные |
Динамические |
Стандартные
Целые (Integer)
Вещественные (Real)
Символьные (Сhar)
Логические (Boolean)
Перечислимые
Ограниченные
Регулярные
Комбинированные
Файловые
Множественные
Строковые
Тема 5. Переменная величина. Типы данных
Целые типы (Integer) minint ≤ x ≤ maxint
Тип |
Диапазон |
Формат |
Размер в |
||
байтах |
|||||
|
|
|
|
||
|
|
|
|
|
|
Shortint |
-128 |
.. 127 |
Знаковый |
1 |
|
|
|
|
|
|
|
Integer |
-32768 |
.. 32767 |
Знаковый |
2 |
|
|
|
|
|
|
|
Longint |
-2147483648 |
.. 2147483647 |
Знаковый |
4 |
|
|
|
|
|
||
Byte |
0 .. 255 |
Беззнаковый |
1 |
||
|
|
|
|
||
Word |
0 .. 65535 |
Беззнаковый |
2 |
Для целых чисел допустимы операции +; -; *; div (целочисленное деление); mod (вычисление остатка от деления нацело); SQR(х); ABS(x); pred(x) (операция вывода предыдущего значения); succ(x) (вычисление последующего значения).
Тема 5. Переменная величина. Типы данных
Вещественные типы (Real)
Они в памяти компьютера представляются приближенно в пределах диапазона представимых вещественных чисел. Записывается либо в форме с
десятичной точкой, либо экспоненциальной форме (−1.35×10−8 |
= −1.35E −08) |
||||||
|
|
|
|
|
|
|
|
|
Тип |
Диапазон |
Число |
|
Размер в |
|
|
|
|
|
|
значащих цифр |
|
байтах |
|
|
Real |
2.9×10-39... 1.7× 10 38 |
11-12 |
|
6 |
|
|
|
Single |
1.5 10-45 ... 3.4× 10 38 |
7-8 |
|
4 |
|
|
|
Doudle |
5.0 ×10-324 |
... 1.7× 10 308 |
15-16 |
|
8 |
|
|
Extended |
3.4 ×10-4932 |
... 1.1 ×10 4932 |
19-20 |
|
10 |
|
|
Comp |
-263 + 1 ... 263 - 1 |
19-20 |
|
8 |
|
Допустимы все операции кроме операции взятия последующего и предыдущего значений, операции возведения в степень и тангенса не определены. Допустимы многие стандартные функции.
Тема 5. Переменная величина. Типы данных
Символьные типы (Сhar)
Значениями переменной символьного типа является символ. Множество допустимых символов различно для различных компьютеров. Каждый символ имеет свой порядковый номер.
Константы символьного типа записываются в апострофах, чтобы отличать их от
имен
‘a’, ‘5’, ‘?’ с:=`A`:d=`%`.
Каждому символу соответствует код в памяти машины.
Символьный тип - упорядочен. Символ считается больше другого, если больше его код.
Допустимы операции: вычисление кода символа – ord(c) (где с – произвольный символ), вычисление символа по его коду chr(I) (где I- целое число, имеющее значение кода) взятие последующего pred(c) и предыдущего значения succ(c). Внутреннее машинное представление 1 байт.
Тема 5. Переменная величина. Типы данных
Логические типы (Boolean)
Значениями его являются две являются две константы, обозначаемые с помощью стандартных идентификаторов True - истина и False - ложь.
Допустимы операции: отрицания not; логического умножения (конъюнкции) and; логическое сложение (дизъюнкции) or.
При этом справедливы следующие условия:
False < True Succ(False)=True Pred(True)=False Ord(False)=0 Ord(True)=1
Внутреннее машинное представление 1 бит памяти.
Тема 5. Переменная величина. Типы данных
5. Структура программы
Общая структура программы на языке Turbo-Pascal состоит из заголовка,
раздела объявления данных, раздела процедур и функций и раздела операторов (или тела программы).
Заголовок:
Program <имя программы> (<параметры>); {комментарии к программе}.
Например:
Program PR1 (input; output);
{Программа нахождения суммы двух чисел:}
Раздел объявлений:
Раздел объявления (подключения) модулей
Uses <список модулей>; {объявление модулей}.
Например:
Uses Crt, Graph;