Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

While not EOF do

Begin

NIL

Sin(t)

Const

MaxReal = MaxInt div SizeOf(real);

NumChars = ord('Z') - ord('a') + 1;

Ln10 = 2.302585092994;

Ln10R = 1 / Ln10;

Переменная - это именованный объект, который в процессе выполнения программы может принимать различные значения.

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

При объявлении переменных следует знать, что:

· каждая переменная программы должна быть объявлена;

· объявления переменных помещают в раздел, который начинается словом var;

· инструкция объявления переменной выглядит так: ИмяПеременной:Тип;

· в имени переменной можно использовать буквы латинского алфавита и цифры (первым символом должна быть буква);

· основными числовыми типами языка Turbo Pascal являются: integer (целый), real (дробный);

· после инструкции объявления переменной рекомендуется указывать назначение переменной.

Пример 1. Объявите переменные, необходимые для вычисления значения функции у = х2.

Var х: real; { аргумент функции }

у: real; { значение функции }

Пример 2. Объявите переменные, необходимые для пересчета веса из фунтов в килограммы.

Var funt: real; { вес в фунтах }

kg: real; { вес в килограммах }

Пример 3. Объявите переменные, необходимые для вычисления стоимости покупки, состоящей из нескольких тетрадей, карандашей и линейки.

Var CenaTetr: real; {цена тетради }

KolTetr: integer; { количество тетрадей }

CenaKar: real; { цена карандаша }

KolKar: integer; { количество карандашей }

CenaLin: real; { цена линейки }

Suirana: real; { стоимость покупки }

Пользовательские типы переменных

К ним относятся переменные перечисляемого и интервального типов. Переменная типа «перечисление» задается перечислением значений, которые она может принимать.

Форма описания этих переменных:

Type <имя типа> = (список значений);

Var < идентификатор 1,...>: <имя типа>;

или

Var < идентификатор >: (список значений);

Пример:

Type Sezon = (Zima, Vesna, Leto, Osen);

Var S1,S2: Sezon;

или

Var S1,S2: (Zima, Vesna, Leto, Osen);

Здесь S1, S2 - переменные типа «перечисление», которые могут принимать любое из заданных значений.

Следует отметить, что описание типа перечисляемой переменной одновременно вводит упорядочение ее значений. Так, для данного примера Zima < Vesna < Leto < Osen (в операциях сравнения).

Для переменных интервального типа указывается некоторое подмножество значений, которые они могут принимать.

Форма описания этих переменных:

Type <имя типа> = <константа 1>..<константа 2>;

Var <идентификатор 1,...>: <имя типа>;

или

Var <идентификатор 1,...>: <константа 1>..<константа 2>;

Здесь <константа 1>, <константа 2> - соответственно константы, определяющие левую и правую границы значений, которые может принимать интервальная переменная. Значение первой константы должно быть обязательно меньше значения второй. Эти константы могут быть целого, символьного или перечисляемого типов.

Пример:

Type Dni = 1..31;

Var D1, D2: Dni;

В этом примере переменные D1 и D2 имеют тип Dni и могут принимать любые значения из диапазона 1..31. Выход из диапазона вызывает программное прерывание.

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

Пример:

Const Min =1; Max=31;

Type Dni = Min..Max;

Var D1, D2: Dni;

Арифметические выражения

Арифметические выражения строятся из числовых констант, переменных, стандартных функций и операций над ними. Для обозначения операций используются символы: + сложение, - вычитание, * умножение и / деление.

В Турбо Паскале определены следующие операции:

­ унарные not, @;

­ мультипликативные *, /, div, mod, and, shl, shr;

­ аддитивные +, -, or, xor;

­ отношения =, <>, <, >, <=, >=,in.

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

Порядок выполнения операций изменяется с помощью скобок. Примеры выражений:

Y

(а + b) * с

а > 2

not Flag and (а = b)

[1, 3..7] * set1

В Турбо Паскале определены следующие логические операции:

not -логическое НЕ;

and -логическое И;

or -логическое ИЛИ;

хоr -исключительное ИЛИ.

Логические операции применимы к операндам целого и логического типов. Если операнды - целые числа, то результат логической операции есть тоже целое число, биты которого (двоичные разряды) формируются из битов операндов по правилам, указанным в табл. 3.2.

Таблица 2. Логические операции над данными типа INTEGER (поразрядно)

Операнд 1 Операнд 2 not and or xor
  -   - - -
  -   - - -
    -      
    -      
    -      
    -      

К логическим операциям в Турбо Паскале обычно относятся и две сдвиговые операции над целыми числами:

i shl j - сдвиг содержимого i на j разрядов влево; освободившиеся младшие разряды заполняются нулями;

i shr j - сдвиг содержимого i на j разрядов вправо; освободившиеся старшие разряды заполняются нулями.

В этих операциях i и j - выражения любого целого типа.

С помощью программы примера 1 можно вывести на экран результат применения логических операций к двум целым числам.

Пример. Программа вводит два целых числа и печатает результат применения к ним логических операций. Для выхода из программы ввести Ctrl-Z и Enter.

var n,m: integer;

<== предыдущая лекция | следующая лекция ==>
Abs lo ptr swap chr odd round trunc hi ord sizeof length pred succ | Бесформатный вывод
Поделиться с друзьями:


Дата добавления: 2014-01-06; Просмотров: 390; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.171 сек.