Лекции. Основные понятия и определения
![]()
|
4.5. Обращение к функцииСинтаксис обращения в языках C и Basic совпадает: <имя_функции>([<аргумент>[,<аргумент]...]) <аргумент>:=<выражение> Пример. sin(2*x+5) abs(x-y) Функции могут быть встроенными (библиотечными, см.ниже) и написанными программистом (функции пользователя, о них последующих разделах). 4.6. Встроенные функцииКаждая среда разработки IDE включает библиотеки, содержащие объектные коды функций, сгруппированных по тематическому признаку. Их очень много. Здесь рассмотрим некоторые наиболее употребительные математические функции. Остальные будут рассмотрены в других разделах или предлагаются для самостоятельного изучения.
Замечания. 1. В языке Basic аргументы могут иметь любой числовой тип. Результат в большинстве функций имеет тип Double. Функция sign возвращает целое значение. Функции Abs, Fix, Int возвращают результат, тип которого совпадает с типом аргумента. Изучаемые версии языка рассматривают функции как методы определенного класса (типа пользователя). Соответственно обращение к ним принимает вид: <имя класса>.<имя функции>. Приведенные функции являются методами класса Math. Пример обращения: y=Math.Abs(x^3-2) Использование классов (объектно-ориентированный подход) будет рассматриваться позже на примере языка C++. Можно избежать применения имени класса Math в тексте программы. Для этого в 1-й строке файла программы надо записать инструкцию вида: Imports System.Math. 2. В языке C большинство функций имеют аргументы и результаты типа double. Исключение – абсолютное значение. Функции abs, fabs, labs имеют в качестве аргумента и результата типы int, double, long соответственно. Отметим, что в качестве аргументов всех функций можно использовать данные любых числовых типов, если включить в состав программы файл прототипов данных функций. Такие файлы имеют расширение .h и о них речь пойдет позже. Прототипы всех приведенных функций заданы в файле math.h и вызывают преобразование аргументов и возвращаемого функцией значения к типам, указанным в прототипе. Пример. Прототип функции ex. double exp(double); |