Matlab

Control Flow

장곰부대 2013. 12. 23. 22:59

if

 if expression

   statements
elseif expression
   statements
else
   statements
end

switch(break; 생략)

 switch switch_expression

   case case_expression
      statements
   case case_expression
      statements
    ...
   otherwise
      statements
end

for

 for index = values

   program statements
          :
end

while

 while expression

   statements
end

try/catch(Execute statements ancatch resultinerrors)

 try

   statements
catch exception
   statements
end


continue, beak, return 가능



 >> tic

>> a = rand(10000,1);

>> for i = 1: 10000

  if a(i)>0.5

result(i)=1;

else

result(i)=0;

end

end

>> toc

Elapsed time is 62.193297 seconds.



>> tic

>> result=zeros(10000,1); %result 메모리 미리 할당

>> for i = 1: 10000

  if a(i)>0.5

result(i)=1;

else

result(i)=0;

end

end

>> toc

Elapsed time is 33.873720 seconds.


>> tic

>> result=rand(10000,1)>0.5;

>> toc

Elapsed time is 16.253996 seconds.