大丰做网站哪家最好,seo推广员招聘,信息公司网站建设方案+游戏,软文营销文章案例文章目录 一、实验目的二、实验内容三、仿真结果四、实践中遇到的问题及解决方法 一、实验目的 1. 熟悉运用MATLAB的控制指令。 2. 理解M脚本文件和函数文件的本质区别。 3. 能够运用所学知识#xff0c;编制程序解决一般的计算问题。
二、实验内容 1.for循环结构及注… 文章目录 一、实验目的二、实验内容三、仿真结果四、实践中遇到的问题及解决方法 一、实验目的 1. 熟悉运用MATLAB的控制指令。 2. 理解M脚本文件和函数文件的本质区别。 3. 能够运用所学知识编制程序解决一般的计算问题。
二、实验内容 1.for循环结构及注释 for xarray (commands) end A、x为循环变量(commands)为循环体 B、X依次取array中的元素每取一次执行一次commands直到x大于array中的最后一个元素 C、循环次数确定 2.使用for循环的注意事项 A、在for后面的表达式中的数组可以是任何合法的MATLAB数组 B、 应该尽量提高代码向量化程度,避免循环 C、避免使用ij作为循环变量 3.while循环结构 while expression (commands) end A、expression的值为逻辑真非0则执行循环体直到表达式值为假结束循环。 B、循环次数不确定 4.使用while循环的注意事项 A、一般情况下expression表达式都是标量 B、MATLAB允许它为数组此时只有数组元素都为真时循环体才被执行 C、如果表达式为空数组被认为是假 5.While循环与for循环的区别 while循环体被执行的次数是不确定的由expression的值决定而for结构中循环体的执行次数是确定的由for后的数组的列数决定 6.if-else-end分支结构 if expr1 %expr为条件表达式该表达式结果为“标量逻辑1或0” (commands1) %expr允许为空数组此时认为条件为假 elseif expr2 %expr只有当逻辑数组全为1时该分支才被执行 (commands2) ……… else (commandsk) end 7.switch-case结构 switch expr %expr为表达式 case value_1 %value_1为给定值数值字符串标量胞元数组 (commands1) %expr等于value_1时执行组命令1然后跳过该结构 …… case value_k (commandsk) %ex等于testk时执行组命令k然后跳过该结构 otherwise %以上情况“并”的“补”可无 (commands) %若所有case都补发生则执行该组命令 end 8.常见指令
指令说明break指令break指令或导致包含该指令的while、for 循环终止或在if - end, switch - case, try – catch中导致中断。continue指令跳过位于它之后的循环体中其他指令而执行循环的下一个迭代…pause和pause(n)A、第一种格式使程序暂停执行等待用户按任意键继续B、第二种格式使程序暂停n秒后再继续执行。return结束return指令所在函数的执行而把控制转至主调函数或者指令窗。否则只有待整个被调函数执行完后才会转出。 9.M文件的一般结构
结构说明函数声明行Function declaration line位于函数文件的首行以关键字function开始函数名及输入输出量都由次行定义。H1行The first help text line紧随函数声明行后的第一注释行。在线帮助文本区Help textH1行及其后的连续注释行。通常包括函数输入输出量的含义调用格式说明编写和修改记录与在线帮助文本区相隔一个空行的注释行。标志编写、修改该文件的作者、日期、版本记录。用于软件档案管理函数体Function body用MATLAB指令实现函数功能。只有函数声明和函数体是函数文件必不可少的部分
三、仿真结果
1.分别用for和while语句编写计算K1222…263的程序。另编写一种不用循环的计算程序。 答for语句
a(1)1;a(2)3;
for ii2:63a(ii1)2^(ii)a(ii);
end;a(ii1)
while语句 a(1)1;a(2)3;ii2;
while ii63a(ii1)2^(ii)a(ii);iiii1;
end;a(ii)不用循环的计算程序
x0:63;
y2.^(x);
sum(y)2.计算f(x)中x从0到15的累加求和f(x)0,x5;(x-3)/4,5xx10;2x,x10 答 x6:10;
y(x-3)/4;
c1sum(y);
a11:15;
b2*a;
c2sum(b);
cc1c2
c 136.25003.有一群鸡和兔子加在一起头的数量是36脚的数量是100编程序解答鸡和兔子数量各是多少 答设鸡有x只兔子有y只。由已知条件可得方程组xy36和2x4y100。令A[1,1;2,4],B[36;100],编程结果如下 A[1,1;2,4];
B[36;100];
XA\B
X 22144.产生20个两位随机整数输出其中小于平均值的奇数。 答 afix(rand(2,10)*100)
bmean(sum(a))
h1;
for i1:20if (a(i)b)( rem((a(i)1),2)0 )c(h)a(i);hh1;end
end,c
a 78 24 9 94 57 23 82 4 64 6438 40 13 95 5 35 1 16 73 45
b 86
c 9 13 57 5 23 35 1 73 45 11四、实践中遇到的问题及解决方法 1.问题开始我只会用MATLAB产生随机数不会产生20个两位随机整数 解决办法思路先产生20个随机数因为产生的随机数是与小数形式产生的乘于100后就是带有两个小数的两位数,在求整就达到要求了具体程序可以写成afix(rand(1,20)*100)其中fix表示取整数。 2. 问题不会求平均值。例如求一个4X5数组A中所以元素的平均值 解决办法可以使用mean函数但需要注意它的用法。用法一mean(A)默认是先求得每一列的的和然后对每一个列求平均值。用法二mean(sum(A))此时所输出的就是整个数组的平均值需要加以注意 3.问题matlab里不会用if语句判断奇数偶数 解决办法对x判断奇数偶数可以采用以下程序a mod(x,2);或a rem(x,2)。MATLAB结果显示如果a1,说明x为奇数如果a0说明x为偶数。 4. 问题建立函数文件命名时没有与函数指令的名称一致导致函数不能调用。 解决办法函数文件的名称必须与函数指令的名称一致否则函数不能调用