第4章 MATLAB程序流程控制_习题答案

合集下载

MATLAB课后习题集附标准答案

MATLAB课后习题集附标准答案

第2章MATLAB概论1、与其他计算机语言相比较,MA TLAB语言突出的特点是什么?答:起点高、人机界面适合科技人员、强大而简易的作图功能、智能化程度高、功能丰富,可扩展性强.2、MA TLAB系统由那些部分组成?答:开发环境、MATLAB数学函数库、MATLAB语言、图形功能、应用程序接口3、安装MATLAB时,在选择组件窗口中哪些部分必须勾选,没有勾选的部分以后如何补安装?答:在安装MATLAB时,安装内容由选择组件窗口中各复选框是否被勾选来决定,可以根据自己的需要选择安装内容,但基本平台(即MATLAB选项)必须安装.第一次安装没有选择的内容在补安装时只需按照安装的过程进行,只是在选择组件时只勾选要补装的组件或工具箱即可.4、MATLAB操作桌面有几个窗口?如何使某个窗口脱离桌面成为独立窗口?又如何将脱离出去的窗口重新放置到桌面上?答:在MATLAB操作桌面上有五个窗口,在每个窗口的右下角有两个小按钮,一个是关闭窗口的Close 按钮,一个是可以使窗口称为独立的Undock按钮,点击Undock按钮就可以使该窗口脱离桌面称为独立窗口,在独立窗口的view菜单中选择Dock,菜单项就可以将独立的窗口重新防止的桌面上.5、如何启动M文件编辑/调试器?答:在操作桌面上选择“建立新文件”或“打开文件”操作时,M文件编辑/调试器将被启动.在命令窗口中键入edit命令时也可以启动M文件编辑/调试器.6、存储在工作空间中的数组能编辑吗?如何操作?答:存储在工作空间的数组可以通过数组编辑器进行编辑:在工作空间浏览器中双击要编辑的数组名打开数组编辑器,再选中要修改的数据单元,输入修改内容即可.7、命令历史窗口除了可以观察前面键入的命令外,还有什么用途?答:命令历史窗口除了用于查询以前键入的命令外,还可以直接执行命令历史窗口中选定的内容、将选定的内容拷贝到剪贴板中、将选定内容直接拷贝到M文件中.8、如何设置当前目录和搜索路径,在当前目录上的文件和在搜索路径上的文件有什么区别?答:当前目录可以在当前目录浏览器窗口左上方的输入栏中设置,搜索路径可以通过选择操作桌面的file菜单中的Set Path菜单项来完成.在没有特别说明的情况下,只有当前目录和搜索路径上的函数和文件能够被MATLAB运行和调用,如果在当前目录上有与搜索路径上相同文件名的文件时则优先执行当前目录上的文件,如果没有特别说明,数据文件将存储在当前目录上.9、在MA TLAB中有几种获得帮助的途径?答:(1)帮助浏览器:选择view菜单中的Help菜单项或选择Help菜单中的MATLAB Help菜单项可以打开帮助浏览器.(2)help命令:在命令窗口键入“help”命令可以列出帮助主题,键入“help 函数名”可以得到指定函数的在线帮助信息.(3)lookfor命令:在命令窗口键入“lookfor 关键词”可以搜索出一系列与给定关键词相关的命令和函数.(4)模糊查询:输入命令的前几个字母,然后按Tab键,就可以列出所有以这几个字母开始的命令和函数.注意:lookfor和模糊查询查到的不是详细信息,通常还需要在确定了具体函数名称后用help命令显示详细信息.第3章 MATLAB 数值运算3.1在MA TLAB 中如何建立矩阵⎥⎦⎤⎢⎣⎡194375,并将其赋予变量a ? 答:在Command Window 窗口输入操作:>> a=[5 7 3;4 9 1]3.2有几种建立矩阵的方法?各有什么优点? 答:(1)直接输入法,如a=[1 2 3 4],优点是输入方法方便简捷;(2)通过M 文件建立矩阵,该方法适用于建立尺寸较大的矩阵,并且易于修改; (3)由函数建立,如y=sin(x),可以由MATLAB 的内部函数建立一些特殊矩阵; (4)通过数据文件建立,该方法可以调用由其他软件产生数据.3.3在进行算术运算时,数组运算和矩阵运算各有什么要求?答:进行数组运算的两个数组必须有相同的尺寸.进行矩阵运算的两个矩阵必须满足矩阵运算规则,如矩阵a 与b 相乘(a*b )时必须满足a 的列数等于b 的行数.渗釤呛俨匀谔鱉调硯錦。

第4章 MATLAB程序流程控制

第4章  MATLAB程序流程控制

第4章 MATLAB程序流程控制
2.switch语句 switch语句根据表达式的取值不同,分别执行不 同的语句,其语句格式为:
第4章 MATLAB程序流程控制
(3) 多分支if语句: if 条件1 语句组1 elseif 条件2 语句组2 …… elseif 条件m 语句组m else 语句组n end
第4章 MATLAB程序流程控制
第4章 MATLAB程序流程控制
例4-4 输入一个字符,若为大写字母,则输出其对应 的小写字母;若为小写字母,则输出其对应的大写 字母;若为数字字符则输出其对应的数值,若为其 他字符则原样输出。
age is 17>> >> fprintf('age is %d\n',17); age is 17
第4章 MATLAB程序流程控制
例4-2 求一元二次方程ax2 +bx+c=0的根。 程序如下: a=input('a=?'); b=input('b=?'); c=input('c=?'); delta=b*b-4*a*c; x=[(-b+sqrt(delta))/(2*a),(-b-sqrt(delta))/(2*a)]; disp(['x1=',num2str(x(1)),',x2=',num2str(x(2))]);
M文件的扩展名为.mFra bibliotek第4章 MATLAB程序流程控制
1.建立新的M文件 为建立新的M文件,启动MATLAB编辑器有3种方法。 ① 在MATLAB主窗口选择“主页”选项卡,在“文件” 命令组中单击“新建脚本”命令按钮。 ② 在MATLAB命令行窗口输入命令: edit 文件名 启动MATLAB编辑器后,输入M文件的内容并存盘。 ③ 在命令历史窗口选中一些命令(按住Ctrl可同时选 择多条命令),然后从右键快捷菜单中选择“创建 脚本”命令,将会启动MATLAB编辑器,并在编辑 区中加入所选中的命令。

matlab教程习题答案

matlab教程习题答案

matlab教程习题答案
MATLAB教程习题答案
MATLAB是一种用于数学计算、数据分析和可视化的强大工具。

它被广泛应用于工程、科学和金融领域,因此掌握它的使用对于提高工作效率和解决问题至关重要。

在学习MATLAB的过程中,许多人会遇到各种习题,下面我们将给出一些常见习题的答案,希望能帮助大家更好地理解和掌握MATLAB的使用。

1. 编写一个MATLAB程序,计算并输出1到100之间所有奇数的和。

答案:
```matlab
sum = 0;
for i = 1:100
if mod(i, 2) == 1
sum = sum + i;
end
end
disp(sum);
```
2. 编写一个MATLAB程序,生成一个5x5的随机矩阵,并计算矩阵每一行的平均值。

答案:
```matlab
A = rand(5, 5);
row_means = mean(A, 2);
disp(row_means);
```
3. 编写一个MATLAB程序,求解以下线性方程组的解:
```
2x + 3y = 8
4x - 2y = 2
```
答案:
```matlab
A = [2, 3; 4, -2];
B = [8; 2];
X = A \ B;
disp(X);
```
通过以上习题的答案,我们可以看到MATLAB的强大功能和灵活性。

掌握这些基本的使用技巧,可以帮助我们更好地应用MATLAB解决实际问题,提高工作效率。

希望大家在学习和使用MATLAB的过程中能够不断积累经验,不断提升自己的技能水平。

matlab教程习题答案

matlab教程习题答案

matlab教程习题答案MATLAB教程习题答案MATLAB是一种广泛应用于科学计算和工程领域的高级编程语言和环境。

它的强大功能和灵活性使得许多人对其感兴趣,但对于初学者来说,掌握MATLAB 可能会有一些困难。

为了帮助大家更好地理解和掌握MATLAB,下面将给出一些常见的MATLAB教程习题的答案,希望能对大家有所帮助。

1. 编写一个MATLAB程序,计算1到100之间所有偶数的和。

答案:```matlabsum = 0;for i = 2:2:100sum = sum + i;enddisp(sum);```2. 编写一个MATLAB程序,生成一个10行10列的随机矩阵,并计算该矩阵的行和列的和。

答案:```matlabmatrix = rand(10, 10);row_sum = sum(matrix, 2);col_sum = sum(matrix);disp(col_sum);```3. 编写一个MATLAB程序,计算斐波那契数列的前20个数。

答案:```matlabfibonacci = zeros(1, 20);fibonacci(1) = 1;fibonacci(2) = 1;for i = 3:20fibonacci(i) = fibonacci(i-1) + fibonacci(i-2);enddisp(fibonacci);```4. 编写一个MATLAB程序,计算一个正整数的阶乘。

答案:```matlabnum = input('请输入一个正整数:');factorial = 1;for i = 1:numfactorial = factorial * i;end```5. 编写一个MATLAB程序,求解一个二次方程的根。

假设二次方程的形式为ax^2 + bx + c = 0,其中a、b、c为用户输入的系数。

答案:```matlaba = input('请输入二次方程的系数a:');b = input('请输入二次方程的系数b:');c = input('请输入二次方程的系数c:');delta = b^2 - 4*a*c;if delta < 0disp('该二次方程无实根。

matlab课后习题答案1到6章

matlab课后习题答案1到6章

习题二1.如何理解“矩阵是MATLAB最基本的数据对象”?答:因为向量可以看成是仅有一行或一列的矩阵,单个数据(标量)可以看成是仅含一个元素的矩阵,故向量和单个数据都可以作为矩阵的特例来处理。

因此,矩阵是MATLAB最基本、最重要的数据对象。

2.设A和B是两个同维同大小的矩阵,问:(1)A*B和A.*B的值是否相等?答:(2)(3)答:(4)答:即逆左乘3.(1)答:5])(2)答:(3)答:(4)答:(5)答:(6)将含有12个元素的向量x转换成34⨯矩阵。

答:reshape(x,3,4);(7)求一个字符串的ASCII码。

答:abs(‘123’); 或double(‘123’);(8)求一个ASCII码所对应的字符。

答:char(49);4.下列命令执行后,L1、L2、L3、L4的值分别是多少?A=1:9;B=10-A;...L1=A==B;L2=A<=5;L3=A>3&A<7;L4=find(A>3&A<7);答:L1的值为[0, 0, 0, 0, 1, 0, 0, 0, 0]L2的值为[1, 1, 1, 1, 1, 0, 0, 0,0]L3的值为[0, 0, 0, 1, 1, 1, 0, 0,0]L4的值为[4, 5, 6]6.当A=[34, NaN, Inf, -Inf, -pi, eps, 0]时,分析下列函数的执行结果:all(A),any(A),isnan(A),isinf(A),isfinite(A)。

答:all(A)的值为0any(A) 的值为1isnan(A) 的值为[ 0, 1, 0, 0, 0, 0, 0]isinf(A) 的值为[ 0, 0, 1, 1, 0, 0, 0]isfinite(A) 的值为[1, 0, 0, 0, 1, 1, 1]7.用结构体矩阵来存储5名学生的基本情况数据,每名学生的数据包括学号、姓名、专业和6门课程的成绩。

第4章 MATLAB程序流程控制_习题答案

第4章  MATLAB程序流程控制_习题答案

第4章 MATLAB程序流程控制习题4一、选择题1.下列关于脚本文件和函数文件的描述中不正确的是()。

AA.函数文件可以在命令行窗口直接运行B.去掉函数文件第一行的定义行可转变成脚本文件C.脚本文件可以调用函数文件D.函数文件中的第一行必须以function开始2.下列程序的输出结果是()。

Dy=10;if y==10y=20;elseif y>0y=30enddisp(y)A.1 B.30 C.10 D.203.有以下语句:a=eye(5);for n=a(2:end,:)for循环的循环次数是()。

CA.3 B.4 C.5 D.104.设有程序段k=10;while kk=k-1end则下面描述中正确的是()。

AA.while循环执行10次B.循环是无限循环C.循环体语句一次也不执行D.循环体语句执行一次5.有以下程序段:x=reshape(1:12,3,4);m=0;n=0;for k=1:4if x(:,k)<=6m=m+1;elsen=n+1;endend则m和n的值分别是()。

CA.6 6 B.2 1 C.2 2 D.1 26.调用函数时,如果函数文件名与函数名不一致,则使用()。

A A.函数文件名B.函数名C.函数文件名或函数名均可D.@函数名7.如果有函数声明行为“function [x,y,z]=f1(a,b,c)”,则下述函数调用格式中错误的是()。

BA.x=f1(a,b,c) B.[x,y,z,w]=f1(a,b,c)C.[x,b,z]=f1(a,y,c) D.[a,b]=f1(x,y,z)8.执行语句“fn=@(x) 10*x;”,则fn是()。

AA.匿名函数B.函数句柄C.字符串D.普通函数9.执行下列语句后,变量A的值是()。

D>> f=@(x,y) log(exp(x+y));>> A=f(22,3);A.22,3B.22 C.3 D.2510.程序调试时用于设置断点的函数是()。

matlab第四章课后答案

matlab第四章课后答案

%Exer‎c ise ‎1(1)‎r oots‎([1 1‎1])‎%Exe‎r cise‎1(2)‎root‎s([3 ‎0 -4 ‎0 2 -‎1])‎%Exer‎c ise ‎1(3)‎p=zer‎o s(1,‎24);‎p([1 ‎17 18‎22])‎=[5 -‎6 8 -‎5];r‎o ots(‎p)%‎E xerc‎i se 1‎(4)p‎1=[2 ‎3];p‎2=con‎v(p1,‎p1);‎p3=c‎o nv(p‎1, p2‎);p3‎(end)‎=p3(e‎n d)-4‎; %原p‎3最后一个‎分量-4‎r oots‎(p3)‎%Exe‎r cise‎2fu‎n=inl‎i ne('‎x*log‎(sqrt‎(x^2-‎1)+x)‎-sqrt‎(x^2-‎1)-0.‎5*x')‎;fze‎r o(fu‎n,2)‎%Exe‎r cise‎3fu‎n=inl‎i ne('‎x^4-2‎^x');‎fplo‎t(fun‎,[-2 ‎2]);g‎r id o‎n;fz‎e ro(f‎u n,-1‎),fze‎r o(fu‎n,1),‎f minb‎n d(fu‎n,0.5‎,1.5)‎%Ex‎e rcis‎e 4f‎u n=in‎l ine(‎'x*si‎n(1/x‎)','x‎');f‎p lot(‎f un, ‎[-0.1‎0.1]‎);x=‎z eros‎(1,10‎);for‎i=1:‎10, x‎(i)=f‎z ero(‎f un,(‎i-0.5‎)*0.0‎1);en‎d;x=‎[x,-x‎]%E‎x erci‎s e 5‎f un=i‎n line‎('[9*‎x(1)^‎2+36*‎x(2)^‎2+4*x‎(3)^2‎-36;x‎(1)^2‎-2*x(‎2)^2-‎20*x(‎3);16‎*x(1)‎-x(1)‎^3-2*‎x(2)^‎2-16*‎x(3)^‎2]','‎x');‎[a,b,‎c]=fs‎o lve(‎f un,[‎0 0 0‎])%‎E xerc‎i se 6‎fun=‎@(x)[‎x(1)-‎0.7*s‎i n(x(‎1))-0‎.2*co‎s(x(2‎)),x(‎2)-0.‎7*cos‎(x(1)‎)+0.2‎*sin(‎x(2))‎]; [a‎,b,c]‎=fsol‎v e(fu‎n,[0.‎5 0.5‎])%‎E xerc‎i se 7‎clea‎r; cl‎o se; ‎t=0:‎p i/10‎0:2*p‎i;x1‎=2+sq‎r t(5)‎*cos(‎t); y‎1=3-2‎*x1+s‎q rt(5‎)*sin‎(t);‎x2=3+‎s qrt(‎2)*co‎s(t);‎y2=6‎*sin(‎t);p‎l ot(x‎1,y1,‎x2,y2‎); gr‎i d on‎; %作图‎发现4个解‎的大致位置‎,然后分别‎求解y1‎=fsol‎v e('[‎(x(1)‎-2)^2‎+(x(2‎)-3+2‎*x(1)‎)^2-5‎,2*(x‎(1)-3‎)^2+(‎x(2)/‎3)^2-‎4]',[‎1.5,2‎])y2‎=fsol‎v e('[‎(x(1)‎-2)^2‎+(x(2‎)-3+2‎*x(1)‎)^2-5‎,2*(x‎(1)-3‎)^2+(‎x(2)/‎3)^2-‎4]',[‎1.8,-‎2])y‎3=fso‎l ve('‎[(x(1‎)-2)^‎2+(x(‎2)-3+‎2*x(1‎))^2-‎5,2*(‎x(1)-‎3)^2+‎(x(2)‎/3)^2‎-4]',‎[3.5,‎-5])‎y4=fs‎o lve(‎'[(x(‎1)-2)‎^2+(x‎(2)-3‎+2*x(‎1))^2‎-5,2*‎(x(1)‎-3)^2‎+(x(2‎)/3)^‎2-4]'‎,[4,-‎4])‎%Exer‎c ise ‎8(1)‎c lear‎;fun‎=inli‎n e('x‎.^2.*‎(x.^2‎-x-2)‎');f‎p lot(‎f un,[‎-2 2]‎);gri‎d on;‎%作图观‎察x(1‎)=-2;‎x(2)‎=fmin‎b nd(f‎u n,-1‎,-0.5‎);x(‎4)=fm‎i nbnd‎(fun,‎1,2);‎fun2‎=inli‎n e('-‎x.^2.‎*(x.^‎2-x-2‎)');‎x(3)=‎f minb‎n d(fu‎n2,-0‎.5,0.‎5);x‎(5)=2‎feva‎l(fun‎,x)%‎答案: 以‎上x(2)‎(4)是局‎部极小,x‎(1)(3‎)(5)是‎局部极大,‎从最后一句‎知道x(1‎)全局最大‎, x(4‎)最小。

matlab习题4答案

matlab习题4答案

matlab习题4答案Matlab习题4答案Matlab作为一种强大的数学计算工具,广泛应用于科学研究、工程设计和数据分析等领域。

在学习和使用Matlab过程中,习题是提高技能和理解能力的重要途径。

本文将为大家提供Matlab习题4的答案,帮助读者更好地掌握Matlab 的应用。

习题1:编写一个Matlab程序,计算并输出1到100之间所有正整数的和。

解答:```matlabsum = 0;for i = 1:100sum = sum + i;enddisp(sum);```该程序使用了for循环结构,从1到100遍历所有正整数,并将它们累加到变量sum中。

最后使用disp函数输出sum的值。

习题2:编写一个Matlab程序,计算并输出1到100之间所有奇数的和。

解答:```matlabsum = 0;for i = 1:2:100sum = sum + i;enddisp(sum);```该程序同样使用了for循环结构,但是在每次迭代中,i的增量为2,即只遍历奇数。

其余部分与习题1的解答相同。

习题3:编写一个Matlab程序,生成一个3×3的随机矩阵,并输出该矩阵的转置。

解答:```matlabA = rand(3);disp(A);disp(A');```该程序使用了rand函数生成一个3×3的随机矩阵A,并使用disp函数分别输出A和其转置A'。

习题4:编写一个Matlab程序,计算并输出斐波那契数列的前20个数。

解答:```matlabfib = zeros(1, 20);fib(1) = 1;fib(2) = 1;for i = 3:20fib(i) = fib(i-1) + fib(i-2);enddisp(fib);```该程序使用了一个长度为20的数组fib来存储斐波那契数列的前20个数。

通过循环计算每个数的值,并将其存储在数组中。

最后使用disp函数输出数组fib。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

精品文档第4章 MATLAB程序流程控制习题4一、选择题1.下列关于脚本文件和函数文件的描述中不正确的是()。

AA.函数文件可以在命令行窗口直接运行B.去掉函数文件第一行的定义行可转变成脚本文件C.脚本文件可以调用函数文件D.函数文件中的第一行必须以function开始2.下列程序的输出结果是()。

Dy=10;if y==10y=20;elseif y>0AHA12GAGGAGAGGAFFFFAFAF精品文档y=30enddisp(y)A.1 B.30 C.10 D.203.有以下语句:a=eye(5);for n=a(2:end,:)for循环的循环次数是()。

CA.3 B.4 C.5 D.104.设有程序段k=10;while kAHA12GAGGAGAGGAFFFFAFAF精品文档k=k-1end则下面描述中正确的是()。

AA.while循环执行10次B.循环是无限循环C.循环体语句一次也不执行D.循环体语句执行一次5.有以下程序段:x=reshape(1:12,3,4);m=0;AHA12GAGGAGAGGAFFFFAFAF精品文档n=0;for k=1:4if x(:,k)<=6m=m+1;elsen=n+1;endend则m和n的值分别是()。

CA.6 6 B.2 1 C.2 2 D.1 26.调用函数时,如果函数文件名与函数名不一致,则使用()。

AA.函数文件名 B.函数名AHA12GAGGAGAGGAFFFFAFAF精品文档C.函数文件名或函数名均可 D.@函数名7.如果有函数声明行为“function[x,y,z]=f1(a,b,c)”,则下述函数调用格式中错误的是()。

BA.x=f1(a,b,c) B.[x,y,z,w]=f1(a,b,c)C.[x,b,z]=f1(a,y,c) D.[a,b]=f1(x,y,z)8.执行语句“fn=@(x) 10*x;”,则 fn是()。

AA.匿名函数 B.函数句柄 C.字符串 D.普通函数9.执行下列语句后,变量A的值是()。

D>> f=@(x,y) log(exp(x+y));AHA12GAGGAGAGGAFFFFAFAF精品文档>> A=f(22,3);A.22,3 B.22 C.3 D.2510.程序调试时用于设置断点的函数是()。

AA.dbstop B.dbclear C.dbcont D.dbstack二、填空题1.将有关MATLAB命令编成程序存储在一个扩展名为.m的文件中,该文件称为。

M文件2.有语句“for k=[12;34]”引导的循环结构,其循环体执行的次数为。

13.MATLAB中用于控制不确定重复次数的循环语句为,若在循环执行过程中需要终止该循环时采用的语句为。

while…end,breakAHA12GAGGAGAGGAFFFFAFAF精品文档4.函数文件由语句引导。

在函数定义时,函数的输入输出参数称为参数,简称。

在调用函数时,输入输出参数称为参数,简称。

function,形式,形参,实际,实参5.在MATLAB中,函数文件中的变量是变量。

定义变量是函数间传递信息的一种手段,可以用命令定义。

局部,全局,globalAHA12GAGGAGAGGAFFFFAFAF精品文档6.应用程序的错误有两类,一类是错误,另一类是运行时的错误,即错误。

MATLAB程序调试方法有两种,一是利用进行程序调试,二是利用进行程序调试。

语法,逻辑,调试函数,调试工具三、应用题1.写出下列程序的输出结果。

s=0;a=[12,13,14;15,16,17;18,19,20;21,22,23];for k=afor j=1:4if rem(k(j),2)~=0s=s+k(j);endAHA12GAGGAGAGGAFFFFAFAF精品文档AHA12GAGGAGAGGAFFFFAFAFendends2.分别用if 语句和switch 语句实现以下计算,其中a 、b 、c 的值从键盘输入。

⎪⎪⎩⎪⎪⎨⎧<≤+<≤+<≤++=5.55.3,ln 5.35.1,sin 5.15.0,2x x cb x x b a xc bx ax y cif 语句:a=input('a=');b=input('b=');c=input('c=');x=input('x=');if 0.5<=x&x<1.5y=a*x^2+b*x+c;精品文档elseif 1.5<=x&x<3.5y=a*(sin(b))^c+x;elseif 3.5<=x&x<5.5y=log(abs(b+c/x));endyswitch语句:a=input('a=');AHA12GAGGAGAGGAFFFFAFAF精品文档b=input('b=');c=input('c=');x=input('x=');switch fix(x*10)case num2cell(5:14)y=a*x^2+b*x+c;case num2cell(15:34)y=a*(sin(b))^c+x;case num2cell(35:54)y=log(abs(b+c/x));otherwisedisp('nsrdxcw')endyAHA12GAGGAGAGGAFFFFAFAF精品文档3.产生20个两位随机整数,输出其中小于平均值的偶数。

x=fix(10+rand(20)*89);a=sum(x)/20;for i=1:20if x(i)<aif rem(x(i),2)==0disp(x(i))endendend4.输入20个数,求其中最大数和最小数。

要求分别用循环结构和调用MATLAB的max函数、min函数来实现。

循环结构:AHA12GAGGAGAGGAFFFFAFAF精品文档for a=1:20A(a)=input('请输入20个数:');endAmi=A(1);ma=A(1);for i=1:20if mi>A(i)mi=A(i);endif ma<A(i)AHA12GAGGAGAGGAFFFFAFAF精品文档ma=A(i);endenddisp(ma)disp(mi)max、min函数:for a=1:20A(a)=input('请输入20个数:');endAmi=min(A),ma=max(A)5.已知s=1+2+22+23+…+263分别用循环结构和调用MATLAB的sum函数求s的值。

AHA12GAGGAGAGGAFFFFAFAF精品文档AHA12GAGGAGAGGAFFFFAFAF循环结构:s=0;for x=0:63s=2^x+s;enddisp(s)sum 函数:i=0:63;f=2.^i;sum(f)6.当n 分别取100、1000、10000时,求下列各式的值: (1) )2ln (1)1(41312111=+-++-+-+ nn (2) )4(7151311π=+-+- (3) )31(4164116141=+++++ n精品文档AHA12GAGGAGAGGAFFFFAFAF (4) )2()12)(12()2)(2(756653443122πn n n n =⎪⎪⎭⎫ ⎝⎛+-⎪⎭⎫ ⎝⎛⨯⨯⎪⎭⎫ ⎝⎛⨯⨯⎪⎭⎫ ⎝⎛⨯⨯ 要求分别用循环结构和向量运算(使用sum 或prod 函数)来实现。

(1):循环结构:精品文档n=input('请输入n的值:');s=0;for a=1:ns=s+(-1)^(a+1)/a;ends向量运算:n=input('请输入n的值:');a=1:n;f=(-1).^(a+1)./a;s=sum(f)(2):循环结构:n=input('请输入n的值:');AHA12GAGGAGAGGAFFFFAFAF精品文档s=0;for a=1:n;s=s+(-1)^(a+1)/(2*a-1);ends向量运算:n=input('请输入n的值:');a=1:n;f=(-1).^(a+1)./(2*a-1);s=sum(f)(3):循环结构:n=input('请输入n的值:');s=0;AHA12GAGGAGAGGAFFFFAFAF精品文档for a=1:ns=s+(1/4)^a;ends向量运算:n=input('请输入n的值:');a=1:n;f=(1/4).^a;s=sum(f)AHA12GAGGAGAGGAFFFFAFAF精品文档(4):循环结构:n=input('请输入n的值:');s=1;for a=1:nf=(2*a)^2/((2*a-1)*(2*a+1));s=s*f;ends向量运算:n=input('请输入n的值:');a=1:n;f=(2*a).^2./((2*a-1).*(2*a+1));s=prod(f)7.编写一个函数文件,求小于任意自然数n的斐波那AHA12GAGGAGAGGAFFFFAFAF精品文档AHA12GAGGAGAGGAFFFFAFAF契(Fibnacci )数列各项。

斐波那契数列定义如下:121211(2)n n n f f f f f n --=⎧⎪=⎨⎪=+>⎩ function f=Fibnacci(n)for i=1:nif i==1f=1;elseif i==2f=1;elsef=Fibnacci(i-1)+Fibnacci(i-2);endendn=input('n=');精品文档f=Fibnacci(n)8.编写一个函数文件,用于求两个矩阵的乘积和点乘,然后在脚本文件中调用该函数。

function [C,D]=CJ(A,B)C=A*B;AHA12GAGGAGAGGAFFFFAFAF精品文档AHA12GAGGAGAGGAFFFFAFAFD=A.*B;A=[1 2 3;4 5 6;7 8 9];B=[1 1 1;1 1 1;1 1 1];[C,D]=CJ(A,B)9.先用函数的递归调用定义一个函数文件求1nm i i =∑,然后调用该函数文件求∑∑∑===++10501210011k k k kk k 。

function f=xt4_10(m,n)if n<1f=0;elsef=n^m+xt4_10(m,n-1);endxt4_10(1,100)+xt4_10(2,50)+xt4_10(-1,10)精品文档10.写出下列程序的输出结果。

相关文档
最新文档