优质解答
试试这个
clear all
b=[671 676 682 684 684 689
659 628 645 656 678 678
663 670 678 673 675 677
660 661 664 667 667 670
656 667 668 672 665 658
631 636 640 639 647 653
642 644 643 645 646 648
641 641 642 643 645 646
645 630 641 642 642 642
641 631 643 648 641 641
629 639 639 639 639 640];
[r,c]=size(b);
d=zeros(r,1);
for i=1:r-1
syms x y z
f1=x*b(i,1)+y*b(i,2)+z*b(i,3)-b(i,4);
f2=x*b(i,2)+y*b(i,3)+z*b(i,4)-b(i,5);
f3=x*b(i,3)+y*b(i,4)+z*b(i,5)-b(i,6);
S=solve(f1,f2,f3);
result=[S.x,S.y,S.z];
d(i,1)=result(1)*b(i,4)+result(2)*b(i,5)+result(3)*b(i,6);
end
注意b的最后一行无解,所以loop是从1到r-1.
试试这个
clear all
b=[671 676 682 684 684 689
659 628 645 656 678 678
663 670 678 673 675 677
660 661 664 667 667 670
656 667 668 672 665 658
631 636 640 639 647 653
642 644 643 645 646 648
641 641 642 643 645 646
645 630 641 642 642 642
641 631 643 648 641 641
629 639 639 639 639 640];
[r,c]=size(b);
d=zeros(r,1);
for i=1:r-1
syms x y z
f1=x*b(i,1)+y*b(i,2)+z*b(i,3)-b(i,4);
f2=x*b(i,2)+y*b(i,3)+z*b(i,4)-b(i,5);
f3=x*b(i,3)+y*b(i,4)+z*b(i,5)-b(i,6);
S=solve(f1,f2,f3);
result=[S.x,S.y,S.z];
d(i,1)=result(1)*b(i,4)+result(2)*b(i,5)+result(3)*b(i,6);
end
注意b的最后一行无解,所以loop是从1到r-1.