2013-02-17 4 views
16

Sto pianificando di utilizzare un ciclo do-while in MATLAB.
C'è un modo per farlo?C'è un modo per eseguire un do-while?

+1

penso che si dovrebbe accettare la mia risposta se ti ha aiutato –

+0

'fare-while' in' matlab' vuoi avere un cattivo tempo. –

risposta

28
while(true) 

%code 

    if condition==false 
     break; 
    end 
end 
+0

Suppongo che questo dia una funzionalità simile. Tuttavia non è esattamente un ciclo while. Eppure, non è un grosso problema, credo. – patrik

+3

Quindi è il caso che Matlab non ha un costrutto formale durante la costruzione? – jxramos

0

Almeno, Octave ha do-until. Questo esempio crea una variabile fib che contiene i primi dieci elementi della sequenza di Fibonacci.

fib = ones (1, 10); 
i = 2; 
do 
    i++; 
    fib (i) = fib (i-1) + fib (i-2); 
until (i == 10) 

Naturalmente, è necessario invertire la sua condizione di aborto rispetto al do-while.

1

Ecco un'altra opzione in MATLAB (più vicino a una sintassi do-while):

do = true; 
while(do || condition) 
    % things to do... 
    do = false; 
end