eps=1e-6;
a=1;
f=@(x) log(4-sin(x));
y=fix_p(a,eps,f);
disp('不动点法结果');
disp(y);
function a = fix_p(a,eps,f)
while abs(f(a) - a) >= eps
a = f(a);
end
end
clear;
clc;
A=[1 -1 3;-1 0 -2;2 2 4];
B=[-3;1;0];
x1=GUSS(A,B);
disp('方程组的解为')
disp(x1);
function [y] = GUSS(A,B)
N=size(A,1);
x=zeros(N:1);
AB=[A B];
C=zeros(1:N+1);
Y=zeros(N,1);
U=zeros(N:N);
for p=1:N-1
[max1 number]=max(abs(AB(p:N,p))); %选列主元
C=AB(p,:);
AB(p,:)=AB(p+number-1,:);
AB(p+number-1,:)=C;
for k=p+1:N %化为上三角
m=AB(k,p)/AB(p,p);
AB(k,p:N+1)=AB(k,p:N+1)-m*AB(p,p:N+1);
end
end
U=AB(1:N,1:N);
Y=AB(1:N,N+1);
x(N,1)=Y(N)/U(N,N);
for n=N-1:-1:1
x(n,1)=(Y(n)-U(n,n+1:N)*x(n+1:N,1))/U(n,n);
end
y=x;
end
A=[3 -1 2 2 2 1/2;-1 3 -1 0 1/2 0;0 -1 3 -1 0 0;0 0 -1 3 -1 0;0 1/2 0 -1 3 -1;1/2 0 0 0 -1 3];
B=[2.5;1.5;1;1;1.5;2.5];
x0=[1 1 1 1 1 1];
M=100;
x=G_S(A,B,x0,1e-4,M);
disp('运算结果');
disp(x);
function[x] = G_S(A,b,x0,e,M)
n = size(A,1);
x = zeros(n,1);
for m = 1 : M
for p=1 : n
s = 0;
t = 0;
for q=1 : p-1
s = s + A(p,q) * x(q);
end
for q = p + 1 : n
t = t + A(p,q) * x0(q);
end
x(p) = -(s + t - b(p))/A(p,p);
end
if norm(x - x0, Inf) < e
break;
else
x0 = x;
end
end
if m == M
disp('达到最大循环次数');
end
end
n = 4;
f = zeros(n,n);
xi = [1800,1850,1900,2000];
x = 1950;
yi = [280,283,291,370];
for k = 1:n
f(k) = yi(k);
end
for i=2:n
for k=i:n
f(k,i)=(f(k,i-1)-f(k-1,i-1))/(xi(k)-xi(k+1-i));
end
end
disp("差商表");
disp(f);
p=0;
for k=2:n
t=1;
for j=1:k-1
t=t*(x-xi(j));
end
p=f(k,k)*t+p;
end
p=f(1,1)+p;
fprintf('%.3fppm',p);