2013-02-28 92 views
19

一個非常簡單,也許很明顯的問題:如何在腳本中使用語句中止執行Matlab M-script?可以通過腳本語句停止Matlab M腳本嗎?

這類似於在函數中間調用return來立即結束它。

+1

中止和恢復是兩回事,你想'return'還是要'退出(1)'? – Mikhail 2013-02-28 22:13:34

+3

@Mikhail'exit'退出Matlab,這可能不是他想要的...... – ahans 2013-02-28 22:14:33

+6

返回在腳本中的作用與在函數中一樣。 – grantnz 2013-02-28 22:15:44

回答

22

如果return並不是要你需要,我想你想使用break

休息結束的Matlab代碼的執行。例如,break語句之後出現的循環語句不會被執行。

在嵌套循環中,break僅從其出現的循環退出。控制傳遞給該循環結束後的語句。

+0

謝謝納坦。我不敢相信我沒有嘗試過。 – 2013-03-01 22:47:47

1

是的,你可以與

回報的幫助;

返回在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 
4

由於Matlab的R2015b break的不能再被用於預終止腳本。 A break現在只能用於for-loop。該代碼不會運行,並會引發錯誤。這在技術上總是如此,但它現在被強制執行。

正確的方法是使用return

+0

'while'循環也。 – 2016-08-01 15:36:14