回覆列表
  • 1 # 使用者6354188383803

    給你一個正確的程式,你自己參考一下吧!

    function [x,k]=Jacobimethod(A,b,x0,N,emg)

    % A:線性方程組左端矩陣

    % b:線性方程組右端向量

    % x0:迭代初值

    % N:迭代次數上界,若迭代次數大於n,則迭代失敗

    % emg:精度指標

    % k:迭代次數

    % x:用迭代法求得的線性方程組的近似解

    n=length(A);

    x1=zeros(n,1);x2=zeros(n,1);

    x1=x0; k=0;

    r=max(abs(b-A*x1));

    while r>emg

    for i=1:n

    sum=0;

    for j=1:n

    if i~=j

    sum=sum+A(i,j)*x1(j);

    end

    end

    x2(i)=(b(i)-sum)/A(i,i);

    end

    r=max(abs(x2-x1));

    x1=x2;

    k=k+1;

    if k>N

    disp("迭代失敗,返回");

    return;

    end

    end

    祝朋友好運!

  • 中秋節和大豐收的關聯?
  • 你和女朋友吵架你會主動道歉嗎?你怎麼看?