مشکل ارور متلب Illegal use of reserved keyword "else".

Collapse
X
 
  • زمان
  • نمایش
Clear All
new posts
  • foxfox
    • 2016/07/31
    • 41

    #1

    مشکل ارور متلب Illegal use of reserved keyword "else".

    [LEFT]
    سلام دوستان این کد رو نوشتم و این ارور رو میده لطفا راهنمایی کنید
    clc
    clear all
    A=linspace(0,0.5,100);
    r= ( (A.^2)./(1-A) ).* ( pi - (1/2)* cos(A/(2-3*A)) + (sqrt((1-A).*(1-2*A)))./A );
    p1=1-A;
    p2=3.*A-2;
    p3=2.* sqrt((1-A).*(1-2.*A));
    PG1= A./(1-A);
    PG2=A./(2-3.*A);
    PG3=A./(2.* sqrt((1-A).*(1-2*A)));
    v1=sqrt((((1-A)./A).^2)-((1./r).^2))+((2./(A.^2)).*(1-A).*(1-(2.*A)))+((3.*(1-A))./A)-((1./r).*((2*pi)-(3.*asin((A./r)./(1-A)))- acos(A./(2-3.*A))-(2.*asin((A./r)./(2-3.*A)))+((2./A).*sqrt((1-A).*(1-(2.*A))))))+(1./(2.*(r.^2)));
    v2=sqrt((((1-A)./A).^2)-(1./r).^2)+(3.*(1-A)./A)-(1./r).*(2*pi-(3.*asin((A./r)./(1-A)))-(3.*asin((A./r)./(2-3.*A))));
    rG= ((A.^2)).*( (pi+ sqrt(1-A)./A)- (0.5).* acos(A./(2-A)) );
    m1=(2.*sqrt(1-A)./A)-(1./rG);
    m2=sqrt((((2-A)./A).^2)-(1./(rG.^2)));
    v3=2.*m2-(2./rG).*(acos((A./rG)./(2-A)));
    v4=1+(1./2).*(m1.^2)+m2-(1./rG).*(acos((A./rG)./(2-A))+asin(A./(2-A)));
    for i=1:100
    if p1(i)<p3(i)
    semilogy(A,v1,'r','linewidth',2);
    grid on
    hold on
    else
    if (r(i)>=p3(i))
    semilogy(A,v1,'r','linewidth',2);
    grid on
    hold on
    else
    if r(i)>p1(i)&&r(i)<p3(i)
    semilogy(A,v2,'r','linewidth',2);
    grid on
    hold on
    end
    end
    end
    if m1<=0
    semilogy(A,v2,'r','linewidth',2);
    grid on
    hold on
    else
    semilogy(A,v3,'b','linewidth',2);
    grid on
    hold on
    else
    semilogy(A,v4,'b','linewidth',2);
    grid on
    hold on
    end
    end
    legend('Half Buck','Buck-G');
    xlabel('A');
    ylabel('\DeltaV_o/V_o* c/c_r');
    [/LEFT
    ]
  • hossein.m98
    • 2017/06/13
    • 1400

    #2
    پاسخ : مشکل ارور متلب Illegal use of reserved keyword &quot;else&quot;.

    نوشته اصلی توسط foxfox
    [LEFT]
    سلام دوستان این کد رو نوشتم و این ارور رو میده لطفا راهنمایی کنید
    clc
    clear all
    A=linspace(0,0.5,100);
    r= ( (A.^2)./(1-A) ).* ( pi - (1/2)* cos(A/(2-3*A)) + (sqrt((1-A).*(1-2*A)))./A );
    p1=1-A;
    p2=3.*A-2;
    p3=2.* sqrt((1-A).*(1-2.*A));
    PG1= A./(1-A);
    PG2=A./(2-3.*A);
    PG3=A./(2.* sqrt((1-A).*(1-2*A)));
    v1=sqrt((((1-A)./A).^2)-((1./r).^2))+((2./(A.^2)).*(1-A).*(1-(2.*A)))+((3.*(1-A))./A)-((1./r).*((2*pi)-(3.*asin((A./r)./(1-A)))- acos(A./(2-3.*A))-(2.*asin((A./r)./(2-3.*A)))+((2./A).*sqrt((1-A).*(1-(2.*A))))))+(1./(2.*(r.^2)));
    v2=sqrt((((1-A)./A).^2)-(1./r).^2)+(3.*(1-A)./A)-(1./r).*(2*pi-(3.*asin((A./r)./(1-A)))-(3.*asin((A./r)./(2-3.*A))));
    rG= ((A.^2)).*( (pi+ sqrt(1-A)./A)- (0.5).* acos(A./(2-A)) );
    m1=(2.*sqrt(1-A)./A)-(1./rG);
    m2=sqrt((((2-A)./A).^2)-(1./(rG.^2)));
    v3=2.*m2-(2./rG).*(acos((A./rG)./(2-A)));
    v4=1+(1./2).*(m1.^2)+m2-(1./rG).*(acos((A./rG)./(2-A))+asin(A./(2-A)));
    for i=1:100
    if p1(i)<p3(i)
    semilogy(A,v1,'r','linewidth',2);
    grid on
    hold on
    else
    if (r(i)>=p3(i))
    semilogy(A,v1,'r','linewidth',2);
    grid on
    hold on
    else
    if r(i)>p1(i)&&r(i)<p3(i)
    semilogy(A,v2,'r','linewidth',2);
    grid on
    hold on
    end
    end
    end
    if m1<=0
    semilogy(A,v2,'r','linewidth',2);
    grid on
    hold on
    else
    semilogy(A,v3,'b','linewidth',2);
    grid on
    hold on
    else
    semilogy(A,v4,'b','linewidth',2);
    grid on
    hold on
    end
    end
    legend('Half Buck','Buck-G');
    xlabel('A');
    ylabel('\DeltaV_o/V_o* c/c_r');
    [/LEFT
    ]
    سلام
    خوب مشخصا ارور داره میگه از ساختار شرطی درست استفاده نکردید. این لینک رو چک کنید. احتمالا یا دارید از کلمه کلیدی اشتباه استفاده میکنید یا به تعداد کافی end نمیذارید.

    دیدگاه

    لطفا صبر کنید...