Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
21 ошибка прогр... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Пример работы с... 65535
Содержание сайт... 65535
ТЕХНОЛОГИИ ДОСТ... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Создание отчето... 65535
Имитационное мо... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Реклама
Сейчас на сайте
Гостей: 4
На сайте нет зарегистрированных пользователей

Пользователей: 13,372
новичок: vausoz
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Компьютерный магазин на Turbo Pascal (База данных) + Пояснительная записка
Информационная система - продуктовый магазин на Turbo Pascal (База данны...
База данных студентов на Turbo Pascal (Списки) + Пояснительная записка

Учебник Паскаль

5. С Т А Н Д А Р Т Н Ы Е Т И П Ы
Д А Н Н Ы Х

К стандартным относятся целые, действительные, логические,
символьный и адресный типы.

ЦЕЛЫЕ типы определяют константы, переменные и функции, значения
которых реализуются множеством целых чисел, допустимых в данной ЭВМ.

 тип диапазон значений требуемая память
__________________________________________________________
Shortint -128 .. 127 1 байт
Integer -32768 .. 32767 2 байта
Longint -2147483648 .. 2147483647 4 байта
Byte 0 .. 255 1 байт
Word 0 .. 65535 2 байта
__________________________________________________________


Над целыми операндами можно выполнять следующие арифметические
операции: сложение, вычитание, умножение, деление, получение остатка
от деления. Знаки этих операций:

+ - * div mod

Результат арифметической операции над целыми операндами есть вели-
чина целого типа. Результат выполнения операции деления целых величин
есть целая часть частного. Результат выполнения операции получения
остатка от деления - остаток от деления целых. Например:

17 div 2 = 8, 3 div 5 = 0.
17 mod 2 = 1, 3 mod 5 = 3.


Операции отношения, примененные к целым операндам, дают результат
логического типа TRUE или FALSE ( истина или ложь ).
В языке ПАСКАЛЬ имеются следующие операции отношения: равенство =,
неравенство <>, больше или равно >=, меньше или равно <=, больше >,
меньше < .
К аргументам целого типа применимы следующие стандартные (встроен-
ные) функции, результат выполнения которых имеет целый тип:

Abs(X), Sqr(X), Succ(X), Pred(X),

и которые определяют соответственно абсолютное значение Х, Х в квад-
рате, Х+1, Х-1.
Следующая группа стандартных функций для аргумента целого типа да-
ет действительный результат:

Sin(X), Cos(X), ArcTan(X), Ln(X), Exp(X), Sqrt(X).

Эти функции вычисляют синус, косинус и арктангенс угла, заданного
в радианах, логарифм натуральный, экспоненту и корень квадратный со-
ответственно.
Результат выполнения функции проверки целой величины на нечетность
Odd(X) имеет значение истина, если аргумент нечетный, и значение
ложь, если аргумент четный:

X=5 Odd(X)=TRUE , X=4 Odd(X)=FALSE.

Для быстрой работы с целыми числами определены процедуры:

Inc(X) X:=X+1
Inc(X,N) X:=X+N
Dec(X) X:=X-1
Dec(X,N) X:=X-N


ДЕЙСТВИТЕЛЬНЫЕ типы определяет те данные, которые реализуются
подмножеством действительных чисел, допустимых в данной ЭВМ.

Тип Диапазон Количество цифр Требуемая
значений мантиссы память (байт)
---------------------------------------------------------------
Real 2.9e-39 .. 1.7e+38 11 6
Single 1.5e-45 .. 3.4e+38 7 4
Double 5.0e-324 .. 1.7e+308 15 8
Extended 3.4e-4932 .. 1.1e+4932 19 10
Comp -9.2e+18 .. 9.2e+18 19 8
---------------------------------------------------------------


Тип Real определен в стандартном ПАСКАЛЕ и математическим сопро-
цессором не поддерживается.
Остальные действительные типы определены стандартом IEEE 457 и ре-
ализованы на всех современных компьютерах.
Для их использования при наличии сопроцессора или при работе на
ЭВМ типа 80486 необходимо компилировать программу с ключом {$ N+}, а
при отсутствии сопроцессора - с ключами {$N-,E+}.
Тип Comp хотя и относится к действительным типам, хранит только
длинные целые значения.
Над действительными операндами можно выполнять следующие арифмети-
ческие операции, дающие действительный результат:

сложение + , вычитание - , умножение * , деление / .

К величинам действительного типа применимы все операции отношения,
дающие булевский результат.
Один из операндов, участвующих в этих операциях, может быть целым.
К действительным аргументам применимы функции, дающие действитель-
ный результат:

Abs(X), Sqr(X), Sin(X), Cos(X), ArcTan(X), Ln(X), Exp(X),
Sqrt(X), Frac(X), Int(X), Pi.

Функция Frac(X) возвращает дробную часть X, функция Int(X) - целую
часть X.
Безаргументная функция Pi возвращает значение числа Пи действи-
тельного типа.
К аргументам действительного типа применимы также функции

Trunc(X) и Round(X),

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

ЛОГИЧЕСКИЙ тип (Boolean) определяет те данные, которые могут при-
нимать логические значения TRUE и FALSE.
К булевским операндам применимы следующие логические операции:

not and or xor.

Логический тип определен таким образом, что FALSE < TRUE. Это поз-
воляет применять к булевским операндам все операции отношения.
В ТУРБО ПАСКАЛЬ введены еще разновидности логического типа:
ByteBool, WordBool и LongBool, которые занимают в памяти ЭВМ один, два
и четыре байта соответственно.

СИМВОЛЬНЫЙ тип (Char) определяет упорядоченную совокупность симво-
лов, допустимых в данной ЭВМ. Значение символьной переменной или
константы - это один символ из допустимого набора.
Символьная константа может записываться в тексте программы тремя
способами:
-как один символ, заключенный в апострофы, например:

'A' 'a' 'Ю' 'ю';

-с помощью конструкции вида #K, где K - код соответствущего симво-
ла, при этом значение K должно находиться в пределах 0..255;
-с помощью конструкции вида ^C, где C - код соответствущего управ-
ляющего символа, при этом значение C должно быть на 64 больше
кода управляющего символа.
К величинам символьного типа применимы все операции отношения.
Для величин символьного типа определены две функции преобразования

Ord(C) Chr(K).

Первая функция определяет порядковый номер символа С в наборе сим-
волов, вторая определяет по порядковому номеру К символ, стоящий на
К-ом месте в наборе символов. Порядковый номер имеет целый тип.
К аргументам символьного типа применяются функции, которые опреде-
ляют предыдущий и последующий символы:

Pred(C) Succ(C). Pred('F') = 'E' ; Succ('Y') = 'Z' .

При отсутствии предыдущего или последующего символов значение со-
ответствующих функций не определено.
Для литер из интервала 'a'..'z' применима функция UpCase(C), кото-
рая переводит эти литеры в верхний регистр 'A'..'Z'.

АДРЕСНЫЙ тип (Pointer) определяет переменные, которые могут содер-
жать значения адресов данных или фрагментов программы. Для хранения
адреса требуются два слова (4 байта), одно из них определяет сегмент,
второе - смещение.
Работа с адресными переменными (указателями) будет рассмотрена
позже, сейчас отметим, что для получения значения адреса какой-либо
переменной введена унарная операция @.
 

6. К О Н С Т А Н Т Ы

Тип констант в языке ПАСКАЛЬ определяется по их виду: константы
целого типа - это целые числа, не содержащие десятичной точки, конс-
танты действительного типа - действительные числа, логические конс-
танты - логические значения TRUE и FALSE, символьные константы - либо
строки длиной в один символ, либо конструкции вида #K или ^K.
Язык ПАСКАЛЬ допускает использовать синонимы для обозначения конс-
тант, в этом случае текст программы содержит раздел описания
констант, например: {}

7. П Е Р Е М Е Н Н Ы Е.
И Н И Ц И А Л И З А Ц И Я П Е Р Е М Е Н Н Ы Х


Тип переменных определяется пользователем в разделе описания пере-
менных:{}
В настоящее время в профессиональном программировании принято
записывать имена переменных с использованием так называемой венгерс-
кой нотации.
Венгерская нотация - это соглашение о наименованиях переменных и
функций. Соглашение широко используется при программировании на язы-
ках PASCAL, C и в среде WINDOWS.
Венгерская нотация основывается на следующих принципах:
-имена переменных и функций должны содержать префикс, описывающий
их тип;
-имена переменных и функций записываются полными словами или сло-
восочетаниями или их сокращениями, но так, чтобы по имени можно было
понять назначение переменной или действие, выполняемое функцией.
Префиксы записываются малыми буквами, первая буква каждого слова -
заглавная, префиксы и слова записываются либо слитно, либо через сим-
вол _ (подчеркивание).
Для языка PASCAL могут быть рекомендованы следующие префиксы для
скалярных переменных и функций:

Префикс Тип
---------------------
by Byte
sh Shortint
i Integer
w Word
l Longint
r Real
si Single
d Double
e Extended
c Comp
ch Char
b Boolean
p Pointer
x,у координаты символа или точки на экране

Для величин структурированного типа могут быть использованы следу-
ющие префиксы:

a Array
s String
sz Stringz
se Set
re Record
f File
t Text


Например:

rV, arVector[1..20], sName, iCount.

В откомпилированной программе для всех переменных отведено место в
памяти, и всем переменным присвоены нулевые значения.
Для задания начальных значений переменным (инициализации перемен-
ных) TURBO PASCAL позволяет присваивать начальные значения переменным
одновременно с их описанием. Для этого используется конструкция

имя переменной: тип = значение;

которая должна быть размещена в разделе описания констант, например:

const rWeight: Real = 0.4;


8. В Ы Р А Ж Е Н И Я

Выражение состоит из констант, переменных, указателей функций,
знаков операций и скобок. Выражение задает правило вычисления некото-
рого значения. Порядок вычисления определяется старшинством (приори-
тетом) содержащихся в нем операций. В языке ПАСКАЛЬ принят следующий
приоритет операций:

1. унарная операция not, унарный минус -, взятие адреса @
2. операции типа умножения * / div mod and shl shr
3. операции типа сложения + - or xor
4. операции отношения = <> < > <= >= in
{}
Выражения входят в состав многих операторов языка ПАСКАЛЬ, а также
могут быть аргументами встроенных функций.


9. О П Е Р А Т О Р П Р И С В А И В А Н И Я

Тип переменной и тип выражения должны совпадать кроме случая, ког-
да выражение относится к целому типу, а переменная - к действительно-
му. При этом происходит преобразование значения выражения к
действительному типу.{}
Опубликовал Kest October 26 2008 12:40:30 · 1 Комментариев · 27296 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Страница 2 из 3 < 1 2 3 >
Комментарии
Андрій August 12 2010 17:42:34
Зробітьсилку на загрузку зразу всієї книгиsmiley
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
IIIDTrans
Трассировка прово...
ZipForge
Упорядоченный дин...
Расширенный загру...
Delphi. Разработк...
RSS Feeds
MiniChat
FreeNet
Пример создания W...
AddPage [Исходник...
PRNDbgrid
PDA версия сайта
Быстрое создание ...
XPcontrol
Открытие Cd-ROM'a...
Delphi. Учимся на...
«Философия» прогр...
VFW
Rss Parser

Топ загрузок
Приложение Клие... 100774
Delphi 7 Enterp... 97838
Converter AMR<-... 20268
GPSS World Stud... 17014
Borland C++Buil... 14192
Borland Delphi ... 10292
Turbo Pascal fo... 7374
Калькулятор [Ис... 5984
Visual Studio 2... 5207
Microsoft SQL S... 3661
Случайные статьи
Too many condition...
Стандартный маршал...
Малая вирусная энц...
Файлы PostScript
Здесь такжерассмот...
PNG - самый соврем...
Доступ к удаленной...
Операции ввода-выв...
Sol казино
Другие тесты
Настройка меню “Пуск”
Сортировка списков
1.2. Вопросы
8.3. Алгоритм «раз...
Первое контрольно...
Настройка плагина ...
Реализация простог...
Сетевые протоколы ...
Деструкторы в язы...
Популярно о PageRank
Преобразование зад...
Если многомерный с...
Кнопки для перепос...
3.3. Принадлежнос...
Где взять денег в ...
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?