基础结构化程式
%%
% ifelse
a=3
if mod(a,2)==0
disp('even')
elseif mod(a,2)==3
disp('impossible')
else
disp('odd')
end
%%
%switch
input=-1
switch input
case -1
disp("negateive 1")
case 0
disp("zero")
case 1
disp("one")
otherwise
disp("other number")
end
%%
%while
n=1
while prod(1:n)<1e100
n=n+1
end
%%
%for
for n=1:10
a(n)=2^n
end
disp(a)
for n=1:2:10
aa(n)=2^n
end
disp(aa)
%%
%预宣告变量特别是那种非常大的,能够有效的提升程序的效率
%eg:
%%
%section1
tic
for ii=1:2000
for jj=1:2000
A(ii,jj)=ii+jj;
end
end
toc
%%
%section2
tic
AA=zeros(2000,2000);
for ii=1:size(AA,1)
for jj=1:size(AA,2)
AA(ii,jj)=ii+jj;
end
end
toc
%%
%...这个三个点可以作为换行符号,在程式写的很长的时候可以用这个使我们的程式变得很短
%eg:
aabbasd=[1 2 3 4 5 6 7 ...
8 9 10]
%%
%function操作见freebody和acc函数
下面分别是freebody.m和acc.m相信大家看了以后都能够理解
%freebody.m
function x=freebody(x0,v0,t)
x=x0+v0.*t+1/2*9.8*t.*t
%acc.m
function [a,F]=acc(v2,v1,t2,t1,m)
a=(v2-v1)./(t2-t1);
F=m.*a;
%调用的时候可以[Acc Force]=acc(20,10,5,4,1)