Главная » Уроки по ОАиП » Урок 2. Переменные. Типы данных. Математические выражения |
ЛЕКЦИЯ |
Урок 2. Переменные. Типы данных. Математические выражения
ПЕРЕМЕННЫЕ
Важнейшей составляющей любого языка программирования являются переменные. Их основная задача – постоянное или временное сохранение данных, используемых в программе.
Переменная – это именованный фрагмент памяти, выделяемый или резервируемый для сохранения данных. Главная характеристика переменной – ее тип, который определяет содержание переменной и объем выделяемой под нее памяти.
Раздел описания переменной.
Для использования переменной в программе ее необходимо объявить. Объявление переменной выполняется с помощью служебного слова var в блоке описания переменных.
Синтаксис: var имя переменной: тип переменной;
Пример: var a, b: integer;
Зачем нужно описание переменных: После того как программа написана, ее запускают на выполнение. Компьютер сначала совершает компиляцию (перевод на машинный язык), во время которой производит подготовительные действия, одно из которых отведение в памяти места под переменные, упомянутые в программе. Итак, описание переменных необходимо. Чтобы перечислить компьютеру переменные, под которые он должен отвести ячейки памяти. Объявление переменной обязательно. При появлении незнакомой переменной, компиляция проекта будет прервана и появится сообщение об ошибке.
Имя переменной
Имя (идентификатор) переменной – обозначение переменной. Мы привыкли переменные обозначать буквами, в Delphi их можно обозначать целыми словами. Компьютеру все равно, как вы обозначите переменную. Исключение составляют зарезервированные слова, которые нельзя использовать в качестве имени.
Правило: именем переменной может служить любая последовательность цифр, латинских букв и знака присваивания, не начинающаяся с цифры.
Примеры:
Правильно |
Неправильно |
A, X, |
Ж – русская буква |
Задание №1: определите, правильно или неправильно записано имя переменной.
- A
- Ж
- polnaja summa
- zzz
- s25
- domby&son
- x_y
- k1
- _rk
- Velichina
- 2as
В описании переменной используется тип переменной. В языке программирования Pascal существует большое количество типов. Рассмотрим самые простые из них.
ТИПЫ ДАННЫХ:
- целый тип
- действительный тип
- логический (булевый) тип
- строковый тип
Целые типы данных. Целые типы данных используются для представления целых чисел.
Тип |
Диапазон значений |
Размер в байтах |
Знаковый ? |
Byte |
0 .. 255 |
1 |
нет |
Word |
0 .. 65535 |
2 |
нет |
ShortInt |
-128 .. 127 |
1 |
да |
SmallInt |
-32768 .. +32767 |
2 |
да |
Cardinal |
0 .. 4 294 967 295 |
4 |
нет |
Integer |
-2 147 483 648 .. + 2 147 483 647 |
4 |
да |
LongInt |
-2 147 483 648 .. +2 147 483 647 |
4 |
да |
Int64 |
–2^63..2^63–1 |
8 |
да |
В настоящий момент тип Integer эквивалентен типу LongInt, но в последующих версиях это может быть изменено. Приведенные в таблице затраты памяти могут изменяться от версии к версии и от системы к системе. Поэтому, если требуется достоверно знать затраты памяти для того или иного типа, следует пользоваться функцией SizeOf.
Действительные типы данных
Действительные типы данных предназначены для хранения чисел, имеющих дробную часть.
Тип |
Диапазон значений |
Число значащих разрядов |
Размер |
Real48 |
-2.9 x 10^–39 .. 1.7 x 10^38 |
11–12 |
6 |
Single |
-1.5 x 10^–45 .. 3.4 x 10^38 |
7–8 |
4 |
Real |
-5.0 x 10^–324 .. 1.7 x 10^308 |
15–16 |
8 |
Double |
-5.0 x 10^–324 .. 1.7 x 10^308 |
15–16 |
8 |
Extended |
-3.6 x 10^–4951 .. 1.1 x 10^4932 |
19–20 |
10 |
Comp |
–2^63+1 .. 2^63 –1 |
19–20 |
8 |
Currency |
–922337203685477.5808.. 922337203685477.5807 |
19–20 |
8 |
Тип Extended обладает максимальной точностью, но могут возникать проблемы с его переносимостью на другие платформы. Тип Currency используется для представления денежных величин. В памяти он хранится как масштабированное в 10000 раз 8-байтовое целое. Благодаря этому при операциях с величинами типа Currency минимизируются ошибки округления, что очень важно для денежных расчетов. В выражениях, в которых смешаны величины типа Currency с величинами других действительных типов, значения Currency автоматически умножаются или делятся на 10000.
Приведенные в таблице затраты памяти могут изменяться от версии к версии и от системы к системе. Поэтому, если требуется достоверно знать затраты памяти для того или иного типа, следует пользоваться функцией SizeOf.
Тип данных Boolean –логический (булевый)
Использование этих операций расширяет возможности по формированию сложных условий в ряде операторов.
Переменная булевого типа может принимать только два значения: true (истина) и false (ложь).
Переменные логического типа получают значение в результате выполнения операций сравнения (отношения).
Операции сравнения: <, >, <=, >=, =, <>
Результат операции отношения равен True, если отношение удовлетворяется для значений, входящих в него операндов, и False – в противном случае.
Символьный тип – String. К символам относятся все буквы алфавита, знаки и числа 0-9. Они могут использоваться по отдельности (а, Z,!, 3) или соединяться друг с другом в строки (например, 'Это только проверка').
КОНСТАНТЫ
Помимо переменных, которые могут менять свое значение в процессе работы программы, в языке программирования Pascal предусмотрены константы. Константа, в отличии от переменной не может менять своего значения. Константы описываются в разделе описания констант, который начинается со служебного слова Const.
Например:
Const
A = 207;
Count = 355;
МАТЕМАТИЧЕСКИЕ ВЫРАЖЕНИЯ
Операции с целыми числами
Над целыми числами можно выполнять следующие арифметические операции: сложение, вычитание, умножение, целочисленное деление, получение остатка от деления. Знаки этих операций: +, - , *, div, mod.
Примеры: 17 div 2 = 8, 3 div 5 = 0. 17 mod 2 = 1, 3 mod 5 = 3.
Стандартные функции для аргументов целого типа
На Pascal |
Математическое выражение |
Тип результата |
Abs(X) |
|Х| |
целый |
Sqr(X) |
Х2 |
целый |
Sin(X) |
Синус Х |
действительный |
Cos(X) |
Косинус Х |
действительный |
ArcTan(X) |
Арктангенс Х |
действительный |
Ln(X) |
LnX |
действительный |
Exp(X) |
eХ |
действительный |
Sqrt(X) |
действительный |
|
Odd(X) |
Проверка числа Х на четность |
логический, (x=5 - odd(x)=true, при x=4 - odd(x)=false). |
inc(X) |
Увеличивает Х на 1 |
X:=X+1 |
inc(X,N) |
Увеличивает Х на N |
X:=X+N |
dec(X) |
Уменьшает Х на 1 |
X:=X-1 |
dec(X,N) |
Уменьшает Х на N |
X:=X-N |
Операции и стандартные функции для действительных типов
Frac(X) |
дробная часть X |
Int(X) |
Целая часть Х |
Pi |
Число Пи |
Trunc(X) |
Целая часть путем отсечения дробной части |
Round(X) |
округляет аргумент до ближайшего целого |
Задание №2: Вычислите:
- Sqr(2+1)
- 10+sqr(2+1)
- 1+abs(5-8)
- Sqr(2)+sqrt(35+1)
- Sqrt(8+int(41.5))
- 21 div (Round(pi+1))
Задание №3: запишите на математический язык.
- (sin(2)+sqr(35.8))/(2.6+sqr(1.3))
- (a+3*b-5*a)/(2*a +tan(25*pi/180))
Составитель: Салий Н.А.