深度学习笔记——matlab程序结构与可视化

顺序结构语句

hold on的使用

>> clear all;
>> a=[15 21 26 32 38];
>> b=[99.5 100 100.6 101.2 103.1];
>> figure;
>> plot(a,b);hold on;plot(a,b,'ro');

分支控制语句

  1. if与else或elseif连用,偏向于是非选择,当某个逻辑条件满足时执行if后的语句,否则执行else语句。
>>clear all;

>> nrows=4;
>> ncols=6;

>> A=ones(nrows,ncols);

>> for c=1:ncols
for r=1:nrows
if r==c
A(r,c)=2;
elseif abs(r-c)==1
A(r,c)=-1;
else
A(r,c)=0;
end
end
end
>> A
A =
     2    -1     0     0     0     0
    -1     2    -1     0     0     0
     0    -1     2    -1     0     0
     0     0    -1     2    -1     0

 2.switch和case、otherwise连用,偏向于情况的列举,当表达式结果为某个或某些值时,执行特定case指定的语句段,否则执行otherwise语句。

编写转换成绩等级的函数文件命名为cj.m,在matlab命令窗口中输入

>>cj(90) 

优秀

……

function result= cj(x)
n=fix(x/10);
switch n
    case {8,9,10}
        disp('优秀');
    case 7
        disp('良好');
    case 6
        disp('及格');
    otherwise
        disp('不及格');
end

环控制语句

1.for语法结构

for index = start : increment : end

      statements;

end

举例:面积法求定积分

clear all;
a=0;
b=3*pi;
n=1000;
h=(b-a)/n;
x=a;
s=0;
f0=exp(-0.5*x)*sin(x+pi/6);
for i=1:n
    x=x+h;
    f1=exp(-0.5*x)*sin(x+pi/6);
  s=s+(f0+f1)*h/2;
  f0=f1;
end 
s

2.while语法结构

while expression

       statements;

end

求解圆周率pi的近似值

clear all;
n=1;
pi=0;
k=1;
s=1;
while abs(k)>=1e-7
   pi=pi+k;
   n=n+2;
   s=-s;
   k=s/n;  
end

pi=4*pi;
fprintf('pi=%f\n',pi);

3.continue语句在循环中,表示当前循环不再继续向下执行,而是直接对循环变量进行递增,进入下一次循环。continue只结束本次循环,而非结束所有循环。
4.break语句可使包含break的最内层的for或while语句强制终止,立即跳出循环结构,执行end后面的语句。break命令一般与if结构结合使用。

错误控制语句

使用try-catch结构来捕获处理错误。其格式为:
try
     statements
catch exception
      statements
end

编程代码实现单个矩阵的转置、加和及两个矩阵的加、乘。

脚本编辑器
clear all;
A=input('请输入矩阵A:');
B=input('请输入矩阵B:');
try
    A',A+A,A+B,A*B
    
catch 
   disp('there is error:')
end
disp(lasterr)

命令行窗口
>> easytc
请输入矩阵A:[1 3 5;2 4 6]
请输入矩阵B:[7 8 9;1 2 3]


ans =


     1     2
     3     4
     5     6




ans =


     2     6    10
     4     8    12




ans =


     8    11    14
     3     6     9


there is error:
错误使用  * 
内部矩阵维度必须一致。

可视化






你可能感兴趣的:(深度学习笔记——matlab程序结构与可视化)