В общем случае, под подданными можно понимать: любые константы, любые переменные, значения функций и выражений и каждый из них должен определятся своим типом.
4.1.6.Переменные и массивы
На языке PASCAL переменные существуют двух
видов:
1.Переменные.
2.Массивы.
Так же как и данные, переменные имеют свой тип(целые вещественные и т.д.).
Переменные
Переменная – это величина, которая изменяет свое значение в процессе выполнения программы. Та переменная, которая не изменяет своей величины, называется именованной константой.
Применительно к ЭВМ понятие переменой более глубокое, чем в математике. Упрощенно, под именем переменной можно понимать номер ячейки памяти ЭВМ, куда отправляются исходные данные. Если величина переменной в процессе выполнения программы изменяет свою величину, то ячейки памяти с тем же номером обновляются. Вот почему каждая переменная должна иметь свое имя, состоящее из идентификатора. Т.е. стоит указать в программе какоелибо имя переменной, как из ячейки памяти извлекается соответствующее число.
Примеры простых переменных:
Математическая запись |
Запись н |
a |
|
α |
alf |
b |
|
β |
bett |
g |
|
γ |
ga |
x |
|
Массивы
Массив – это упорядоченная совокупность данных одинакового типа. Такой упорядоченной совокупностью могут служить элементы матриц равны размерностей, экспериментальные числовые данные, полученные через равные промежутки времени. Часто такие массивы приходится упорядочивать самому программисту из множества исходных данных, которые необходимо обработать на ЭВМ. При этом каждый элемент массива (одно число) хранится в определенной ячейке памяти. Следовательно, массив должен иметь имя и размер. Отсюда и возникает понятие переменной из массива. Таким образом, для обозначения массива используются имя (идентификатор), и его конкретные элементы – индексы заключаются в квадратные скобки. Для конкретного элемента многомерного массива буквенно-цифровые индексы в квадратных скобках разделяются запятыми.
Индексами массива могут быть только:
1.Целые числа.
2.Буквы (идентификаторы переменных).
3.Выражения любой степени сложности (только целого типа).
Примеры массивов:
massiv 1 [1] – одномерный массив ( m1 ),
massiv 2 [i] – одномерный массив ( mi ),
massiv 3 [2,i] – двумерный массив ( m2i ),
gamma [3,7,9] – конкретный элемент трехмерного
массива ( g3,7,9 ),
alfa [і+ј, ј+к, 4, 5] – четырехмерный массив (αі+ј,
ј+к, 4, 5) и т.д.
4.1.7. Набор стандартных функций на Pascal
Каждая стандартная функция состоит из имени функции (идентификатора) и аргумента данной функции, обязательно заключенного в круглые скобки.
Аргументом стандартной функции может быть: какое-либо число, какая-либо переменная, какое-либо выражение (любой степени сложности) и какая-либо другая стандартная функция.
В последнем случае образуется так называемая вложенная функция. Степень такого вложения не ограниченна.
Набор основных стандартных функций:
Табл.4.1
Математическая запись |
Запись на P |
||||
sin x |
sin (x |
||||
|
|
|
|
|
|
cos x |
cos (x |
||||
arctg x |
arctan ( |
||||
ex |
exp (x |
||||
x2 |
sqr (x |
||||
|
|
|
|
|
sqrt (x |
|
|
x |
|||
|
|
|
|||
|
|
|
|
||
ln x |
ln (x) |
||||
|
x |
|
|
abs (x |
|
|
|
||||
|
|
||||
xa |
exp (a ln |
||||
Последняя стандартная функция предназначена для вычисления степеней с помощью двух вышеприведенных стандартных функций. Причем x и a могут быть как целыми, так и дробными.
Данная стандартная функция получена из
известного математического равенства:
xa=ea ln (x)
Следует отметить, что если исходная степенная функция будет представлена в виде ах, то соответствующая стандартная функция будет:
ax→exp (x ln (a))
Дополнительный набор стандартных функций следующий:
Int(x) - целая часть числа (ликвидация дробной части числа – грубое округление);
T runc (x) – целая часть числа (функция аналогичная предыдущей функции Int, но для длинного целого типа.).
Round – выделение целой части числа ( округление до
ближайшего целого – математически |
точное |
округление ); |
|
Inc(x[,i]) увеличивает значение x на i, а при отсутствии i
– на 1;
dec(x[,i]) уменьшает значение x на i, а при отсутствии i – на 1;
frac(x)→дробная часть числа ( ликвидация – обнуление целой части числа x);
Pi – вызов константы π;
Random – вызов случайного дробного числа, равномерно распределенного в диапазоне от
0 до 1.
Random (x)→вызов случайного целого числа, равномерно распределенного в диапазоне от
0 до (x-1).
Randomize-X – вызов ( инициализация) встроенного генератора случайных чисел. Следует отметить, что это не функция, а стандартная процедура.
При этом, случайное значение получается с учѐтом значений, выдаваемых системным таймером. Число, получаемое в результате работы генератора случайных чисел, хранится в предопределенной переменной с именем RandSeed.
Odd (x ) – проверяет, является ли целочисленный аргумент x нечетным числом. Результат принимает значение T rue , если x представляет собой нечетное
число и False - в противном случае. |
|
|
|
Рассмотрим |
конкретный |
пример |
на |
использование вышеприведенных стандартных функций с учетом вышеприведенных правил. Пусть имеем фрагмент записи на языке PASCAL:
exp(a b c / d sqrt(sin(a b) c d)).