Анализ объемной сложности программы
Для оценки объемной сложности математического модуля программы рассмотрим Таблицу № 6.
Таблица №6
Схема вызовов |
Новая память данных |
Всего используется |
|
p(2 ед.) |
2 ед. |
|
a(2 ед.), b(2 ед.),c(4 ед.), exp(2 ед.),x0(4 ед.) |
16 ед. |
|
left_p(3 ед.), right_p(3 ед.), s1(2 ед.), s2(2 ед.) |
26 ед. |
|
A(2 ед.), B(2 ед.), C(2 ед.), D(2 ед.) |
10 ед. |
|
left_p1(3 ед.), right_p1(3 ед.), left_p2(3 ед.), right_p2(3 ед.), k1(2 ед.), k2(2 ед.), k3(2 ед.) ,k4(2 ед.), x1(2 ед.), x2(2 ед.) |
34 ед. |
Из таблицы видно, что данные занимают максимальный объем в процессе выполнения Suff_cond_x12.
Заключение
Таким образом, разработанный программный комплекс решает поставленную задачу нахождения экстремумов функции . Процент стиля программирования находится в пределах нормы.
Библиография
Скрябин А.В., Конспект лекций по дисциплине программирование. – Мурманск, МГТУ, 2012.
Приложение
void m_bisec(){ /*метод бисекций*/
double a, b, c, eps;
eps=0.001; /*точность вычисления корня*/
a=0.001;
b=10;
do{
c=(a+b)/2;
if (der(a)*der(c) < 0){ /*вычисление значения первой производной в точке a и b*/
b=c;
}
else if (der(b)*der(c)<0){ /*вычисление значения первой производной в точке b и c*/
a=c;
}
else{
x0=c;
}
}
while (fabs(a-b)>eps);
x0=c ; /*искомый корень, т.е. точка подозрительная на экстремум*/
suff_cond_x0(); /*проверка достаточного условия экстремумов при p>0*/
}
