Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторные работы по Информатике 2011.doc
Скачиваний:
6
Добавлен:
04.11.2018
Размер:
557.06 Кб
Скачать
    1. Процедуры и функции. Стандартные и пользовательские процедуры и функции.

3.2.1. Общие положения.

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

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

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

Функция аналогична процедуре, но имеются два отличия: функция передает в точку вызова скалярное значение (результат своей ра­боты); имя функции может входить в выражение как операнд. Функция, если она встречается в выражении, называется указа­телем функции или обращением к функции. Все процедуры и функции языка Delphi подразделяются на две группы: встроенные и определенные пользователем.

Встроенные (стандартные) процедуры и функции являются частью языка и могут вызываться по имени без предварительного определе­ния в разделе описаний блока.

Процедуры и функции пользователя организовываются самим про­граммистом в соответствии с синтаксисом языка и представляют со­бой локальный блок. Предварительное (перед использованием) опи­сание процедур и функций пользователя обязательно.

3.2.2. Стандартные арифметические функции и процедуры.

  • Abs(X) - вычисление абсолютной величины X. Тип результата совпадает с типом параметра.

  • ArсТаn(Х) - вычисление угла, тангенс которого равен х; значе­ние угла представлено в радианах и может находиться в диапазоне от -Pi/2 до Pi/2. Для преобразования значения угла из радианной меры в градусную необходимо значение угла умножить на число 180/Pi. результат имеет вещественный тип. Пример: y:=ArсТаn(1)*180/3.14; Результат = 4.500000000E+01.

  • Cos(X) - вычисление косинуса X; параметр задает значение угла в радианах. Для преобразования значений угла из градусной меры в радианную значение выражения IBR умножается на pi/180. Результат имеет вещественный тип. Пример: y:=Cos(45*Pi/180); Результат = 5.000000000Е-01.

  • Ехр(Х) - вычисление экспоненты X, т. е. значение е в степени X. е является основанием натурального логарифма и равно 2.718282. Результат имеет вещественный тип.

  • Frac(X) - вычисление дробной части X. Результат имеет вещест­венный тип.

  • Int(X) - вычисление целой части Х- Если X >= 0, функция возвращает ближайшее целое, большее или равное X. Если X < О, возвращает ближайшее целое, меньшее или равное X, результат имеет тип real.

  • Ln(X) - вычисление натурального логарифма X, т. е. логарифма по основанию е (е = 2.718282). Результат имеет вещественный тип.

  • Pi - возвращает значение числа ПИ (3.141592653897932385).

  • Sin(X) - вычисление синуса X. Параметр задает значение угла в радианам. для перевода значения угла из градусной меры в радиан­ную Х умножается на Pi/180. Результат имеет вещественный тип.

  • Sqr(X) - возведение в квадрат значения X. тип результата сов­падает с типом параметра.

  • Sqrt(X) - вычисление квадратного корня из X. Тип результата вещественный.

  • Random - генерирует значение случайного числа из диапазона < 0..0.99. тип результата вещественный.

  • Random(I) - генерирует значение случайного числа из диапазона O..I. Тип результата целочисленный.

Использование функций

Функции обычно используются в качестве операндов выражений. При этом параметром функции может быть переменная, константа или выражение. Например, ниже приведены выражения для вычисления дискриминанта (d) и корней (xl, х2) квадратного уравнения:

d:=Sqr(b)-4*a*c;

xl:=(-b+Sqrt(b*b-4*a*c))/(2*а) ;

х2:=(-b-Sqrt(Sqr(b)-4*a*c))/(2*а);

В первом выражении аргументом функции Sqr (напомним, что sqr(b)=b*b) является переменная b, а во втором выражении в качестве аргумента функ­ции sqrt используется выражение. Важно, чтобы тип выражения, используемого в качестве параметра функ­ции, соответствовал или мог быть преобразован к типу, указанному в опи­сании функции.