
clc;
clear all;
disp('VARIANT 1');
disp('y1=cos(x) y2=sqrt(x)');
eps=input('Enter fault: ');
disp('Left border: 0');
a=0;
b=input('Right border: ');
M=0;
m=0;
Y1=cos(a)-sqrt(a);
Y2=cos(b)-sqrt(b);
if(Y1*Y2)<0
m=(a+b)/2;%если да то находится центр
l=a; r=b;% присваиваются значения другим переменными которые используются в этом цикле
while abs(r-l)>eps% приближения пока точность корня не соответсвует погрешности
g1=cos(l)-sqrt(l);
g2=cos(m)-sqrt(m);
if g1*g2<=0
r=m;
m=(l+r)/2;
M=M+1;%счетчик приближений
else
l=m;
m=(l+r)/2;
M=M+1;
end
end
disp(['Number of approximations: ' num2str(M)]);% вывод количества приближений
disp('Coordinate of the first intersection point: ');
disp(m);
else
disp('No intersection point');
end
X=0:0.01:b;%интервал построения
y1=cos(X);%создаются массивы значений функций
y2=sqrt(X);
plot(X,y1,X,y2);%строится график
clear all;
disp('VARIANT 1');
disp('y1=cos(x) y2=sqrt(x)');
eps=input('Enter fault: ');
disp('Left border: 0');
a=0;
b=input('Right border: ');
M=0;
m=0;
Y1=cos(a)-sqrt(a);
Y2=cos(b)-sqrt(b);
if(Y1*Y2)<0
m=(a+b)/2;%если да то находится центр
l=a; r=b;% присваиваются значения другим переменными которые используются в этом цикле
while abs(r-l)>eps% приближения пока точность корня не соответсвует погрешности
g1=cos(l)-sqrt(l);
g2=cos(m)-sqrt(m);
if g1*g2<=0
r=m;
m=(l+r)/2;
M=M+1;%счетчик приближений
else
l=m;
m=(l+r)/2;
M=M+1;
end
end
disp(['Number of approximations: ' num2str(M)]);% вывод количества приближений
disp('Coordinate of the first intersection point: ');
disp(m);
else
disp('No intersection point');
end
X=0:0.01:b;%интервал построения
y1=cos(X);%создаются массивы значений функций
y2=sqrt(X);
plot(X,y1,X,y2);%строится график
Соседние файлы в папке Курсач MATLAB (1 курс)