|
|||||
Второй метод дихотомииДата добавления: 2014-11-24 | Просмотров: 1528
Постановка задачи: минимизировать функцию на отрезке Листинг программы: a=-2; b=0; e=0.001; d=0.25*e; while (b-a)/2>e x1=a+(b-a)/4; x2=a+(b-a)/2; x3=a+3*(b-a)/4; y1=((x1-1)^2)*sin(x1); y2=((x2-1)^2)*sin(x2); y3=((x3-1)^2)*sin(x3); if (y1<=y2) b=x2; elseif (y2<=y3) b=x3 a=x1; else a=x2 end end X=(a+b)/2
x=-2:e:0; y=((x-1).^2).*sin(x); plot(x,y)
Метод “золотого сечения” Постановка задачи: минимизировать функцию на отрезке с точностью Е=0.001. Листинг программы: E = 0.001; a = -2; b = 0; while (b-a)/2 >= E x1 = a +(3-sqrt(5))*(b-a)/2; x2 = a +(sqrt(5)-1)*(b-a)/2; y1 = ((x1-1)^2)*sin(x1); y2 = ((x2-1)^2)*sin(x2); if (y1 <= y2) b = x2; else a = x1; end; end X = (a + b)/2 Y=((X-1).^2 ).*sin(X) x=-2:0.01:0; y=((x-1).^2 ).*sin(x); plot (x,y);
Результат работы программы: |
При использовании материала ссылка на сайт Конспекта.Нет обязательна! (0.048 сек.) |