Можно ли остановить Matlab M- script с помощью инструкции в script?
Очень простой и, возможно, очевидный вопрос: как я могу прервать выполнение Matlab M- script с помощью инструкции в script?
Это аналогично вызову return в середине функции, чтобы немедленно ее закрыть.
Ответ 1
Если return вам не нужен, я думаю, вы хотите использовать break
break завершает выполнение кода Matlab. Например, инструкции в цикле, которые появляются после инструкции break, не выполняются.
В вложенных циклах прерывание завершается только из цикла, в котором оно происходит. Управление переходит к утверждению, которое следует за концом этого цикла.
Ответ 2
По сравнению с Matlab R2015b break больше нельзя использовать для предварительного завершения script. A break теперь можно использовать только для цикла. Код не будет запущен и будет выведена ошибка. Это было технически всегда верно, но теперь оно применяется.
Правильный способ - использовать return
Ответ 3
Да, вы можете с помощью
возврат;
Возврат работает в Matlab-скриптах, как в функциях.
например.
function [ point ] = PointDoubling( x,y,p,a )
%UNTITLED2 Summary of this function goes here
% Detailed explanation goes here
if y==0
point='Not calculated';
return;
end
a2=(3*(x^2))+a;
b2=(2*y);
i=1;
while 1
if mod(b2*i,p)==1
break;
end
i=i+1;
end
s=mod(a2*i,p);
x1=mod(((s^2)-(2*x)),p);
y1=mod(((-y)+(s*(x-x1))),p);
point=[x1,y1];
end