3.3. Математические библиотечные функции
Математические библиотечные функции позволяют программисту выполнять определенные типовые математические вычисления. Мы будем использовать далее разнообразные математические библиотечные функции для иллюстрации самой концепции функций. Позже в этой книге мы обсудим многие другие функции из стандартной библиотеки С. Полный перечень функций стандартной библиотеки С приведен в приложении А.
Обычно функция вызывается путем записи имени функции, после которого записывается левая круглая скобка, затем аргумент функции (или список аргументов, разделенных запятыми), а завершает запись правая круглая скобка. Например, программист, желающий вычислить и напечатать квадратный корень из 900.0, мог бы написать
cout « sqrt(900.0);
При выполнении этого оператора вызывается математическая библиотечная функция sqrt, которая вычисляет квадратный корень из числа, заключенного в круглые скобки (900.0). Число 900.0 является аргументом функции sqrt. Приведенный выше оператор должен был бы напечатать 30. Функция sqrt получает аргумент типа double и возвращает результат типа double. Вообще все функции в математической библиотеке возвращают данные типа double.
Хороший стиль программирования 3.2
При использовании функций математической библиотеки включайте соответствующий заголовочный файл с помощью директивы препроцессора #include <math.h>.
Функции 181
Типичная ошибка программирования 3.1
При использовании функций математической библиотеки забывают включать ее заголовочный файл, что приводит к ошибке компиляции. Стандартный заголовочный файл должен быть включен для любой стандартной библиотечной функции, исполь -зуемой в программе.
Аргументами функции могут быть константы, переменные или выражения. Если cl = 13.0, d = 3.0 и f = 4.0, то оператор
cout « sqrt(cl + d*f)
вычислит и напечатает квадратный корень из 13.0 + 3.0 * 4.0 = 25.0, а именно, напечатает 5, так как С++ обыкновенно не печатает в конце нуль или десятичную точку в числах с плавающей точкой, не имеющих дробной части). Некоторые математические библиотечные функции приведены на рис. 3.2, где переменные x и у имеют тип double.
- 116 Глава 2
- 2.13. Основы повторения, управляемого счетчиком
- 2.14. Структура повторения for (цикл)
- 120 Глава 2
- 122 Глава 2
- 2.15. Пример использования структуры for
- 124 Глава 2
- 126 Глава 2
- 2.16. Структура множественного выбора switch
- Глава 2
- 130 Глава 2
- 132 Глава 2
- 2.17. Структура повторения do/while
- 134 Глава 2
- 2.18. Операторы break и continue
- Глава 2
- 2.19. Логические операции
- 138 Глава 2
- Глава 2
- 2.21. Заключение по структурному программированию
- IfcrpyKTypa (единственный выбор)
- Глава 2
- Глава 2
- 148 Глава 2
- Глава 2
- Глава 2
- Глава 2
- 156 Глава 2
- 158 Глава 2
- 160 Глава 2
- 2.1. А) следование, выбор и повторение, b) if/else. С) управляемым счет чиком или определенным заранее, d) Метку, сигнал, флаг или лож ный сигнал.
- 162 Глава 2
- 164 Глава 2
- 166 Глава 2
- 168 Глава 2
- 170 Глава 2
- 172 Глава 2
- 174 Глава 2
- 176 Глава 2
- 178 Глава 3
- Глава 3
- 3.3. Математические библиотечные функции
- 3.4. Функции
- Глава 3
- 3.5 Определения функций
- 184 Глава 3
- 186 ГлаваЗ
- 3.6. Прототипы функций
- 188 Глава 3
- 3.7. Заголовочные файлы
- 3.8. Генерация случайных чисел
- Глава 3
- 192 Глава 3
- 194 Глава 3
- 3.9. Пример: азартная игра
- Глава 3
- 198 Глава 3
- 3.10. Классы памяти
- 200 Глава 3
- 3.11. Правила, определяющие область действия
- 202 Глава 3
- 204 Глава 3
- 3.12 Рекурсия
- Глава 3
- 6) Значения, возвращаемые после каждого рекурсивного вызова
- 3.13. Пример использования рекурсии: последовательность чисел Фибоначчи
- Глава 3
- 3.14. Рекурсии или итерации
- 212 Глава 3
- Глава 3
- Глава 4
- Глава 5
- Глава 6
- 3.15. Функции с пустыми списками параметров
- 214 Глава 3
- 3.16. Встраиваемые функции