Лабораторная работа № 1-11
Программирование математических выражений в C
1. Цель работы
Целью работы является разработка, отладка и выполнение программы на C с использованием математических функций стандартной библиотеки C.
2. Состав рабочего места
2.1. Оборудование: IBM-совместимый персональный компьютер (ПК).
2.2. Программное обеспечение: операционная система Windows, интегрированная оболочка BorlandC++.
3. Краткие теоретические сведения
Математические функции библиотеки C выполняют некоторые арифметические действия, результат которых присваивается имени функции.
Математические функции имеют следующий формат вызова:
имя-функции (выражение)
где выражение – любое арифметическое выражение. Тип возвращаемого функцией значения – double.
Математические функции, также как и переменные, могут использоваться в арифметическом выражении, причем вычисление функции имеет более высокий приоритет, чем выполнение арифметических операций.
Математические функции языка C описываются в головном файле math. h. Основные математические функции языка C приведены в следующей таблице:
Имя функции и аргументы | Возвращаемое значение | Особенности |
sin(x) | sin(x) – синус x | x задается в радианах |
cos(x) | cos(x) – косинус x | x задается в радианах |
tan(x) | tg(x) – тангенс x | x задается в радианах |
asin(x) | arcsin(x) – арксинус x | xÎ [-1,1], arcsin(x)Î[-p/2,p/2] |
acos(x) | arccos(x) – арккосинус x | xÎ [-1,1], arccos(x)Î[ 0,p] |
atan(x) | arctg(x) – арктангенс x | arctg(x)Î [-p/2,p/2] |
sinh(x) | sinh(x) – гиперболический синус x | |
cosh(x) | cosh(x) – гиперболический косинус x | |
tanh(x) | tgh(x) – гиперболический тангенс x | |
exp(x) | ex – экспоненциальная функция от x | |
log(x) | ln(x) – натуральный логарифм x | x>0 |
log10(x) | lg(x) – десятичный логарифм x | x>0 |
pow(x, y) | xy – x в степени y | Ошибка области, если x=0 и y£0 или x<0 и y – не целое. |
sqrt(x) |
| x³0 |
ceil(x) | наименьшее целое, большее или равное x | |
floor(x) | наибольшее целое, меньшее или равное x | |
fabs(x) | |x| – абсолютное значение x |
Аргумент x во всех функциях и y в функции pow() имеют тип double.
Вывести на дисплей результат вычислений по формуле:
![]()
при x=-0.951 и y=8.149.
#include <stdio.h> /* Вызов раздела ввода-вывода */
#include <math.h> /* Вызов раздела математических функций */
int main (void) /* Описание функции main */
{ /* Начало блока */
/* Описания и инициализация переменных */
float F, x=0.951, y=8.149;
const double pi=3.1415926;
/* Вычисление функции */
F = (pow(x, 3) + 1.0)/log(fabs(x)) –
pow(sin(pi/4.0 + 0.5 * y), 2);
/* Вывод исходных данных и результата */
printf("x=%f y=%f Функция F=%f\n",x, y,F);
getchar(); /* Ввод символа */
return 0; /* Возврат из программы */
} /* Конец блока */
На экран будут выведены следующие результаты:
x=0.951000 y=8.149000 Функция F=-38.001472
4. Порядок выполнения работы
Порядок выполнения работы:
1. Составить программу для вычисления значения функции F при указанных значениях аргументов и вывода значений аргументов и функций на экран дисплея по одному из вариантов, приведенных в следующей таблице:
№ варианта | Выражение для функции | Значения аргументов |
1. |
| x=0.95, y=3 |
2. |
| x=-3.876, y=4.15 |
3. |
| x=2.78, y=1.532 |
4. |
| x = -3.85, y = 1.478 |
5. |
| x=-1.7, y = 4.81 |
6. |
| x = -0.543, y = 1.487 |
7. |
| x = 3.191, y = 5.84 |
8. |
| x = 3.595, y = 1.547 |
9. |
| x = -2.5, y = 4.8 |
10. |
| x = -0.342, y = 3.47 |
11. |
| x = -3.53, y = 0.91 |
12. |
| x = 1.123, y = 0.487 |
13. |
| x = -1.853, y = 0.47 |
14. |
| x = -1.111, y = 1.487 |
15. |
| x = 1.84, y = -0.343 |
16. |
| x = -1.41, y = 2.58 |
17. |
| x = 5.05, y = -1.34 |
18. |
| x = 3.12, y = 3.01 |
19. |
| x = 1.26, y = -3.18 |
20. |
| x = 3.88, y = -1.44 |
21. |
| x = 1.03, y = 4.76 |
22. |
| x = 1.478, y = -3.146 |
23. |
| x = -5.048, y = 4.92 |
24. |
| x = 3.48, y = -5.13 |
25. |
| x = 0.75, y = 5.57 |
26. |
| x = 2.51, y = -1.127 |
27. |
| x = 3.171, y = 7.82 |
28. |
| x = 1.121, y = -1.08 |
29. |
| x = 1.8, y = 0.71 |
30. |
| x = 1.47, y = -2.56 |
31. |
| x = 4.12, y = -2.6 |
32. |
| x = -1.12, y = 1.594 |
33. |
| x = -12.6, y = 3.5 |
34. |
| x = 3.67, y = -5.01 |
35. |
| x = 1.18, y = -1.75 |
2. Введите программу с клавиатуры в среде BorlandC++.
3. Выполните отладку программы и запустите ее на выполнение.
4. Покажите преподавателю программу и результаты ее работы и скопируйте текст программы и результат работы программы в окно текстового редактора Блокнот с заголовками "Текст программы имя-программы" и "Результат работы программы имя-программы".
5. Скопируйте полученный в окне текстового редактора Блокнот документ на свою дискету или флэш-карту.
5. Содержание отчета
В отчете должно быть представлено содержимое созданного вами документа.
6. Вопросы для самоконтроля
1. Какие группы математических функций определены в стандартной библиотеке?
2. Как вычисляется степень какого-либо числа?





























