当前位置:编程学习 > Matlab >>

matlab程序运行出现the statement is incomplete的错误,下面是程序,请问怎样解决

clear all; syms a b; X=[2 3 5 6]; Y=[3 4 6 8]; for m=1:2 x1=X(m); y1=Y(m); x2=X(m+1); y2=Y(m+1); x3=X(m+2); y3=Y(m+2); p1=-b-((x3-x1)/(y3-y1))*(a-x2)+y2; %方程组 p2=sqrt((a-x2)^2+(b-y2)^2)-15; %方程组 f=solve(p1,p2); %对方程组进行求解 %vpa(f.a,5); vpa(f.b,5); a1=vpa(f.a(1),5); b1=vpa(f.b(1),5); a2=vpa(f.a(2),5); b2=vpa(f.b(2),5); if m==1 A1(m)=a1; B1(m)=b1; A2(m)=a2; B2(m)=b2; elseif (A1(m-1)-a1)^2+(B1(m-1)-b1)^2<(A2(m-1)-a2)^2+(B2(m-1)-b2)^2 A1(m)=a1; B1(m)=b1; A2(m)=a2; B2(m)=b2; else A1(m)=a2; B1(m)=b2; A2(m)=a1; B2(m)=b1; end end A1, B1, A2, B2
追问:
        	
				
谢谢了  可是刚才我运行的时候还是出现了错误:Function 'lt' is not defined for values of class 'sym'.
请问这个怎样解决?
你的matlab没有安装符合处理的工具包。问题解决就给确认一下,其他的就是另外的问题了呀:)
好吧  应该是我的软件的问题,在我电脑上不能求出结果的,在其他人那里就行。谢谢啦
答案:elseif (A1(m-1)-a1)^2+(B1(m-1)-b1)^2<(A2(m-1)-a2)^2+(B2(m-1)-b2)^2
改为
elseif ((A1(m-1)-a1)^2+(B1(m-1)-b1)^2)<((A2(m-1)-a2)^2+(B2(m-1)-b2)^2)
 
另外,在matlab中句末是不用符号的,只要换行就行

上一个:下面程序为何在matlab中运行不了啊??
下一个:matlab的程序题~

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,