matlab练习题
大学matlab考试题及答案

大学matlab考试题及答案大学MATLAB考试题及答案一、选择题1. MATLAB的全称是什么?A. Matrix LaboratoryB. Microprocessor Application Tool SetC. Microsoft Advanced Tool SetD. Microprocessor Application Test System答案:A2. 在MATLAB中,以下哪个命令用于绘制三维图形?A. plotB. scatterC. surfD. bar答案:C3. MATLAB中用于求解线性方程组的函数是?A. solveB. linsolveC. linprogD. fsolve答案:A二、简答题1. 简述MATLAB的基本数据类型有哪些,并给出至少两个每种类型的示例。
答案:MATLAB的基本数据类型包括数值数组、字符数组和单元数组。
数值数组可以是向量、矩阵或多维数组。
例如,向量 `v = [1 2 3]`,矩阵 `M = [1 2; 3 4]`。
字符数组是由单引号或双引号括起来的字符序列,如 `C = 'Hello'`。
单元数组可以包含不同类型的数据,如`{1, 'text', [1; 2; 3]}`。
2. 描述如何在MATLAB中实现矩阵的转置和翻转。
答案:矩阵的转置可以通过 `'T'` 来实现,例如 `A'` 表示矩阵A 的转置。
矩阵的翻转可以通过 `flip` 函数实现,例如 `flip(A)` 可以翻转矩阵A的所有行和列,`flipud(A)` 仅翻转矩阵A的行,而`fliplr(A)` 仅翻转矩阵A的列。
三、编程题1. 编写一个MATLAB函数,该函数接受一个向量作为输入,并返回向量中所有元素的和以及平均值。
```matlabfunction [sumVal, avgVal] = calculateSumAndAverage(V)sumVal = sum(V);avgVal = mean(V);end```2. 设计一个MATLAB脚本来解决以下问题:给定一个3x3的矩阵,找出其中最大的元素,并显示其位置。
matlab练习题

10.写出执行以下代码后,MATLAB命令窗口上显示的x矩阵的值 x=[0,1,0,2,0,3,0,4]; for k=1:8 if x(k)==0 x(k)=k;
else x(k)=2*k+1; end end disp(x); 1 5 3 9 5 13 7 17
11.写出执行以下代码后C,D,E的值 A=[1,2,3;4:6;7:9]; C=[A;[10,11,12]] D=C(1:3,[2 3]) E=C(2,[1 2]) C = 1 4 7 10 2 5 8 11 3 6 9 12
D = 2 5 8 3 6 9
E = 4 >> 12、输入 x,y 的值,并将它们的值互换后输出。 x=input('Input x please:'); y=input('Input y please:'); z=x; x=y; y=z; disp(x); disp(y); 5
13.当 n=100 时,求 y = ∑
15.一个三位整数各位数字的立方和等于该数本身则称该数为水仙花数。输出全 部水仙花数。
function function3()
x=[]; for i=100:999 n1=fix(i/100); n2=fix((i-n1*100)/10); n3=i-n1*100-n2*10; if (n1^3+n2^3+n3^3)==i x=[x i]; end end
i =1
n
1 的值。 2i − 1
y=0; n=100; for i=1:n y=y+1/(2*i-1); end y 14.某商场对顾客所购买的商品实行打折销售,标准如下(商品价格用 price 来 表示) : price<200 没有折扣 200≤price<500 3%折扣 500≤price<1000 5%折扣 1000≤price<2500 8%折扣 2500≤price<5000 10%折扣 5000≤price 14%折扣 输入所售商品的价格,求其实际销售价格。 function function2()
数学实验matlab练习题

2015-2016数学实验练习题一、选择题1.清除Matlab工作空间(wordspace)变量的命令是(B )A. clcB. clearC. clfD.delete2. 清除当前屏幕上显示的所有内容,但不清除工作空间中的数据的命令是( A )A. clcB. clearC. clfD.delete3. 用来清除图形的命令( C )A. clcB. clearC. clfD.delete4. 在MATLAB程序中,使命令行不显示运算结果的符号是( A )A. ;B. %C. #D. &5. 在MATLAB程序中,可以将某行表示为注释行的符号是( B )A. ;B. %C. #D. &6.在循环结构中跳出循环,执行循环后面代码的命令为 ( B )A. returnB. breakC. continueD. Keyboard7.在循环结构中跳出循环,但继续下次循环的命令为( C )A. returnB. breakC. continueD. Keyboard8. MATLAB中用于声明全局变量的关键字是( C )A. infB. symsC. globalD. function9. 用户可以通过下面哪项获得指令的使用说明( A )A. helpB. loadC. demoD. lookfor10.在MATLAB命令窗口中键入命令S=zoros(3);可生成一个三行三列的零矩阵,如果省略了变量名S,MATLAB表现计算结果将用下面的哪一变量名做缺省变量名( A )A. ans;B. pi;C. NaN;D. Eps.11. 9/0的结果是( B )A. NAN;B. Inf;C. eps;D. 012.在MATLAB中程序或语句的执行结果都可以用不同格式显示,将数据结果显示为分数形式,用下面哪一条命令语句( D )A. format long;B. format long e;C. format bank;D. fromat rat13. 下列MATLAB命令中是构造1行3列的(-1,1)均匀分布随机矩阵的命令的是(D)A. randn(1,3);B. rand(1,3);C. ones(3);D. 以上都不对14. 产生四维元素都为1矩阵的语句为( A )A. ones(4)B. eye(4)C. zeros(4)D. rand(4)15. 用round 函数对数组[2.48 6.39 3.93 8.52]取整,结果为 ( C )A. [2 6 3 8]B. [2 6 4 8]C. [2 6 4 9]D. [3 7 4 9]16. y=dsolve(‘Dy=1/(1+x^2)-2*y^2’,’y(0)=0’,’x ’); ezplot(y)的功能是( A )A. 求微分方程特解并绘图;B. 解代数方程;C. 求定积分;D.求微分方程通解.17. MATLAB 命令roots([1,0,0,-1])的功能是 ( D )A. 产生向量[1,0,0,1];B. 求方程310x +=的根;C. 求多项式31x -的值;D. 求方程310x -=的根。
MATLAB基础练习题

MATLAB基础练习题一选择题1、MATLAB中,下面哪些变量名是合法的?(B)(A)_num(B)num_(C)num- (D)-num2、下面属于MATLAB的内部变量的是?(A)(A)pi(B)none(C)zero(D)exp3. 在MATLAB中,A是一个字二维数组,要获取A的行数和列数,应该使用的MATLAB的命令是( C )。
(A)class(A)(B)sizeof(A)(C)size(A)(D)isa(A)4、MATLAB中,要绘制三维空间曲线,应该使用(D)函数。
(A)polar(B)plot(C)subplot(D)plot35、MATLAB中,绘制三维曲面图的函数是(A)(A)surf(B)plot(C)subplot(D)plot3二填空题1. 要清除MATLAB工作空间中保存的变量,应该使用clear指令.2. 二维线图采用plot函数绘制.3. 在MATLAB中,A = [0:1/2:2]*pi,那么sin(A) = 0 1 0 -1 0 .4. 在MATLAB中A = 1:5,现在执行如下指令L1 = A>3,则MATLAB的执行结果应该是L1 = 0 0 0 1 1 .5. 一元多项式p=5x4−2x2+7x,在MATLAB中可以表示为p= [5,0,-2,7,0] .6. 进行多项式拟合时用roots函数,一维插值时用polyfit函数,二维插值时用polyval函数。
三解答题1. 在MATLAB中,A=[1,2,3;1,2,3;1,2,3],B=[1,1,1;2,2,2;3,3,3],写出下面MATLAB 语句执行的结果:(1)A.*B (2)A*B解:(1)A.*B =1 2 32 4 63 6 9(2)A*B =14 14 1414 14 1414 14 142. 写出求解方程组:1234234123412342385522436x x x xx x xx x x xx x x x++-=⎧⎪-+=⎪⎨+++=⎪⎪-+-=⎩的程序代码.>> A=[2 1 3 -1;0 1 -1 5;1 1 2 2;1 -3 1 -1];b=[8;5;4;6];X=A\bX =8.1765-0.2941-2.50000.55883. 写出求12+22+32+…+1002的和的程序代码. >> sum=0;>> for i=[1:100].^2sum=sum+i;end>> sumsum =338350。
MATLAB实验练习题(计算机)-南邮-MATLAB-数学实验大作业答案

“MATLAB”练习题要求:抄题、写出操作命令、运行结果,并根据要求,贴上运行图。
1、求230x e x -=的所有根.(先画图后求解)(要求贴图)>> solve('exp(x)—3*x^2',0)ans =—2*lambertw (—1/6*3^(1/2))-2*lambertw(—1,—1/6*3^(1/2))—2*lambertw (1/6*3^(1/2))3、求解下列各题:1)30sin lim x x x x ->->> sym x ;〉> limit((x-sin (x))/x^3)ans =1/62) (10)cos ,x y e x y =求>> sym x;>> diff (exp(x )*cos(x),10)ans =(-32)*exp(x)*sin (x)3)21/20(17x e dx ⎰精确到位有效数字)〉〉 sym x;〉〉 vpa((int(exp(x^2),x,0,1/2)),17)ans =0.544987104183622224)42254x dx x+⎰〉> sym x ;>〉 int (x^4/(25+x^2),x)ans =125*atan (x/5) - 25*x + x^3/35)求由参数方程arctan x y t⎧⎪=⎨=⎪⎩dy dx 与二阶导数22d y dx 。
〉> sym t;>> x=log(sqrt (1+t^2));y=atan(t);〉> diff (y ,t )/diff (x ,t)ans =1/t6)设函数y =f (x )由方程xy +e y = e 所确定,求y ′(x ).>> syms x y ;f=x *y+exp(y )—exp (1);〉> -diff(f,x )/diff (f,y)ans =-y/(x + exp (y))7)0sin 2x e xdx +∞-⎰>〉 syms x ;>〉 y=exp(-x)*sin(2*x );〉> int(y ,0,inf )ans =2/58) 08x =展开(最高次幂为)〉> syms xf=sqrt(1+x);taylor(f,0,9)ans =— (429*x^8)/32768 + (33*x^7)/2048 — (21*x^6)/1024 +(7*x^5)/256 - (5*x^4)/128 + x^3/16 - x^2/8 + x/2 + 19) 1sin (3)(2)x y e y =求〉> syms x y ;>〉 y=exp(sin (1/x));>〉 dy=subs (diff(y,3),x ,2)dy =—0.582610)求变上限函数2x x ⎰对变量x 的导数.>> syms a t ;>〉 diff (int(sqrt(a+t),t,x ,x^2))Warning: Explicit integral could not be found 。
matlab基础练习题及答案

matlab基础练习题及答案第1章MATLAB基础1.4MATLAB操作桌面有几个窗口?如何使某个窗口脱离桌面成为独立窗口?又如何将脱离出去的窗口重新放置到桌面上?答:在MATLAB操作桌面上有五个窗口。
在每个窗口的右上角有两个小按钮,一个是关闭窗口的Cloe按钮,一个是可以使窗口成为独立窗口的Undock按钮,点击Undock按钮就可以使该窗口脱离桌面成为独立窗口。
在独立窗口的Dektop菜单中选择Dock...项就可以将独立的窗口重新放置到桌面上。
1.5如何启动M文件编辑/调试器?答:在操作桌面上选择“建立新文件”或“打开文件”操作时,M文件编辑/调试器将被启动。
在命令窗口中键入edit命令时也可以启动M文件编辑/调试器。
1.6存储在工作空间中的数组能编辑吗?如何操作?答:存储在工作空间的数组可以通过数组编辑器进行编辑:在工作空间浏览器中双击要编辑的数组名打开数组编辑器,再选中要修改的数据单元,输入修改内容即可。
1.7命令历史窗口除了可以观察前面键入的命令外,还有什么用途?答:命令历史窗口除了用于查询以前键入的命令外,还可以直接执行命令历史窗口中选定的内容、将选定的内容拷贝到剪贴板中、将选定内容直接拷贝到M文件中。
1.8如何设置当前目录和搜索路径,在当前目录上的文件和在搜索路径上的文件有什么区别?答:当前目录可以在当前目录浏览器窗口左上方的输入栏中设置,搜索路径可以通过选择操作桌面的file菜单中的SetPath菜单项来完成。
在没有特别说明的情况下,只有当前目录和搜索路径上的函数和文件能够被MATLAB运行和调用,如果在当前目录上有与搜索路径上相同文件名的文件时则优先执行当前目录上的文件,如果没有特别说明,数据文件将存储在当前目录上。
1.9在MATLAB中有几种获得帮助的途径?答:(1)帮助浏览器:选择view菜单中的Help菜单项或选择Help 菜单中的MATLABHelp菜单项可以打开帮助浏览器。
matlab练习

《数学实验》在线习题1一、单项选择题(将选择答案写在答题纸上,每小题2分共20分)1.在MA TLAB 命令窗口中键入命令,Vname=prod(7:9)/prod(1:3),可计算组合数!6!3!939⨯=C ,如果省略了变量名Vname ,MA TLAB 表现计算结果将用下面的哪一变量名做缺省变量名AA )ans ;B )pi ;C )NaN ;D )eps2.宝石切割问题中,石料左右长度、前后长度、上下高度分别为a 1、a 2、a 3,即a 1×a 2×a 3(cm 3),而精品尺寸为b 1×b 2×b 3(cm 3)。
操作时,同向切割连续两次再旋转刀具。
某一切割方案的切割面积依次为:2a 1a 2→ 2a 1b 3 → 2b 2b 3,则这一切割方案为BA )左右→前后→上下;B )上下→前后→左右;C )前后→上下→左右;D )前后→ 左右→上下 3.机场指挥塔位置:北纬30度35.343分,东经104度2.441分,在MA TLAB 中用变量B=[30 35.343]表达纬度,L=[104 2.441]表达经度。
将数据转化为以度为单位的实数,下面正确的语句是A ) =B(1)+B(2)/60,Q=L(1)+L(2); B) P = 60*B(1) + B(2),Q=60*L(1)+L(2) C ) P = B(1) + B(2)/60,Q=L(1)+L(2)/60; D) P=B(1)+B(2),Q=L(1)+ L(2);。
4.用MA TLAB 随机产生60个1到365之间的正整数,应该使用下面的哪一条命令AA ) fix(365*rand(1,60));B )1+fix(366*rand(1,60));C )1+fix(364*rand(1,60));D )1+fix(365*rand(1,60))5.用A 、B 、C 表示三角形的三条边,用MA TLAB 表示条件“任意两条边之和大于第三条边”的逻辑表达式应该用下面哪一行语句AA ) A+B>C | A+C>B | B+C>A ; B ) A+B>=C | A+C>=B | B+C>=A ; C ) A+B>=C&A+C>=B&B+C>=A ;D ) A+B>C & A+C>B & B+C>A ; 6.在MA TLAB 命令窗口中,键入命令syms x ; y=int(6*x^4)。
Matlab练习

Matlab 练习习题1. 设a=1.2,b=-4.6,c=8.0,e=-4.0,计算⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡+=d bc e a t ππ22arctan2. 设a=5.67,b=7.811,计算)lg(b a e ba ++3. 已知园半径为15,求其直径、周长和面积。
4. 已知三角形三边a=8.5,b=14.6,c=18.5,求三角形面积2/)(,))()(((c b a s c s b s a s s area ++=---=5. 下列命令执行后,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); 习题1. 设矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=321212113A⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡---=111012111B求:(1)2A+B ;(2)4A 2-3B 2;(3)AB ;(4)BA ;(5)AB-BA2.设三阶矩阵A 、B ,满足A -1BA=6A+BA⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡=71000410031A 求矩阵B2. 设(2E-C -1B )A T =C -1,其中E 是4阶单位矩阵,A T 是4阶矩阵A 的转置,⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡---=1021000032231021B ⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=1021000002101021C求矩阵A3. 有一4阶魔方矩阵a ,找出矩阵中大于7的元素,并将它们重新排列成列向量b 。
4. 给定矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=054000031A ,删去整行和整列的0。
5. 设2阶矩阵A 、B 、X ,满足X-2A=B-X,⎥⎦⎤⎢⎣⎡--=2112A⎥⎦⎤⎢⎣⎡--=0220B 求矩阵X6. 求矩阵的主对角元素、逆矩阵、行列式的值、秩、特征值和特征向量⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡----=163053064A ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡--=1124111221B7. 分别用矩阵求逆、矩阵除法求方程组的解⎪⎩⎪⎨⎧=+--=+-=+-1074453932z y x z y x z y x 8. 已知多项式P 1(x)=3x+2,P 2(x)=5x 2-x +2,P 3(x)=x 2-0.5,求:(1) P(x)=P 1(x)+P 2(x)+P 3(x) (2) P(x)=P 1(x)*P 2(x)*P 3(x) (3) P(x)=0的全部根计算x i =0.2*i,i=0,1,2各点上的P(x i )。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.在命令窗口输入语句:a=[1,2,3;4,5,6;7,8,9],(1)按回车键,命令就被执行,在MA TLAB命令窗中显示的结果。
(2)如果在上述输入语句末尾加上分号,则在命令窗口显示的结果解:a =1 2 34 5 67 8 9不显示结果2.在命令窗口输入语句:x=[-1.3 1+2+3 sqrt(5)],按回车键,命令就被执行,在MA TLAB命令窗中显示的结果。
解:x =-1.3000 6.0000 2.23613.在命令窗口输入下述语句,建立复数数组:b=[1+2*i,2+3*i;2-i,3-2*i],在MATLAB命令窗中显示的结果。
解:b =1.0000 +2.0000i 2.0000 +3.0000i2.0000 - 1.0000i3.0000 - 2.0000i4. 产生2阶和3阶魔方阵。
解:m1=magic(2) %产生2阶魔方阵5. 求多项式的x3-7x+6的伴随矩阵,可使用语句:解:p=[1,0,-7,6];c=compan(p)6. 求(x+y)4的展开式。
解:p1=pascal(4)p1 =1 1 1 11 2 3 41 3 6 101 4 10 20由执行结果可知,矩阵次对角线上的元素1,4,6,4,1即为展开式的系数。
7. 建立3×4的矩阵并取子数组的方法解:a=[1 2 3 4;5 6 7 8;9 10 11 12];a(1,:)a(:,end)a24=a(2,4) % 取a的第二行、第四列的元素a(1:2:4,:)a(:,1:2:end)a1=a([1,2],[2,3,4])a2=a([1,2],[2,3,1])a3=a([3,1],:)a([1,3],[2,4])=zeros(2) %对a([1,3],[2,4])赋值8. 3×3的数组,删除第三列元素,删除第二行元素,删除一个元素,删除所有元素为空矩阵。
解:a=[1 2 0;3 4 0;5 6 9];a(:,3)=[] %删除第三列元素a(2,:)=[] %删除第二行元素a(1)=[] %删除一个元素,则矩阵变为行向量a=[] %删除所有元素为空矩阵9. 设⎥⎦⎤⎢⎣⎡-=502134A 和⎥⎦⎤⎢⎣⎡-=301021B 求 A -2B 。
解:方法1:A=[4 -3 1;2 0 5];B=[1 2 0;-1 0 3];A-2*B方法2:A=[4 -3 1;2 0 5];B=[1 2 0;-1 0 3];b=uminus(2*B) %,返回2*B 的相反数A+b10. 求30。
、60。
和90。
的正弦、余弦、正切和余切函数值。
解:x=30:30:90;sind(x),cosd(x),tand(x),cotd(x)11. 求0.1,0.2,0.3,0.4,0.5,0.6的反正弦、反余弦和反正切值。
解:x=0.1:0.1:0.6;asin(x),acos(x),atan(x) %返回值为弧度asind(x),acosd(x),atand(x) %返回值为角度12. 求1到10的自然对数和常用对数。
解:x=1:10;log(x) %返回值为自然对数log10(x) %返回值为常用对数13. 建立任意的两个字符串,并查看字符串占用的字节信息。
解:s1='Northeast Forest Uiversity' %赋值方式建立字符串s1s2='Haerbin Heilongjiang‘ %赋值方式建立字符串s2whos %查看字符串占用的字节信息14. 使用赋值语句依次为各个域赋值的方法建立构架数组,存储两名学生的名字、学号、性别、班级信息。
解:='Wang Ming';s.number='19990101';s.sex='man';s.class='199901';s(2).name='Zhang Le';s(2).number='19990201';s(2).sex='man';s(2).class='199902';15. 已知A=[4,-65,-54,0,6;56,0,67, - 45,0],分析下列语句的功能。
(1)find(A>4);(2)[i j]=find(A,1);(3)[i j]=find(A,1,'first') ;(4)[i j]=find(A,1,'last')解:(1)找出大于4的元素的序号。
(2)找出一个不为零的元素的行号、列号。
(3)找出第一个不为零的元素的行号、列号。
(4)找出最后一个不为零的元素的行号、列号16. 建立任意的3×3的矩阵,并求出能被3整除的元素。
解:A=[1 0 3 ;2 9 -1;-3 -9 0]; %生成3×3的矩阵AP=rem(A,3)==0 %判断A 的元素是否可以被3整除A(P) %求出被3整除的元素17. 已知 22221312111n y ++++= (1) n 为任意给定的整数,求y 的值。
(2) y ≥1.5时,求n 的值y=0;i=1;n=input('n=?');while i<=nf=1/i/i;y=y+f;i=i+1;endy%(2)y=0;i=1;while 1f=1/i/i;y=y+f;if y>=1.5break;endi=i+1;endi,y18. 设)6sin()6cos()(ππ+-=x x x f ,求:⎰=π20)(dx x f s解:a=0;b=2*pi;n=1000;h=(b-a)/n;x=a:h:b;y=0;f=cos(x-pi/6).*sin(x+pi/6);for i=1:ns(i)=(f(i)+f(i+1))*h/2;y=y+s(i);endy19. 求[100,200]之间第一个能被13整除的整数。
解:for n=100:200if rem(n,13)~=0continueendbreakendn20. 使用for 循环语句逐一显示构架数组的域值。
解:for ii=1:length(s)disp(s(ii).name)disp(s(ii).number)disp(s(ii).class)disp(s(ii).sex)end21. 输出全部三位的水仙花数。
解:for m=100:999m1=fix(m/100); %求m 的百位数字m2=rem(fix(m/10),10); %求m 的十位数字if m==m1*m1*m1+m2*m2*m2+m3*m3*m3disp(m)endend22. 编程求出Fibonacci数列中第一个大于10000的元素及序号。
解:%1a(1)=1;a(2)=1;i=2;while a(i)<=10000a(i+1)=a(i-1)+a(i); i=i+1;endi,a(i)%2n=100;a=ones(1,n);for i=3:na(i)=a(i-1)+a(i-2);if a(i)>=10000a(i),break;end;endi23. 求某正整数范围内的全部素数。
解:1m=input('m=');p=1:m;p(1)=0;for i=2:sqrt(m)for j=2*i:i:mp(j)=0;endendn=find(p~=0);p(n)%2m=input('m=');p=2:m;for i=2:sqrt(m)n=find(rem(p,i)==0&p~=i);p(n)=[];endp24. 求1-100的平方、平方根和立方根解:%方法1:square=zeros(1,100);square_root=zeros(1,100);cube_root=zeros(1,100);for ii=1:100square(ii)=ii^2;square_root(ii)=ii^(1/2);cube_root(ii)=ii^(1/3);%方法2:ii=1:100;square(ii)=ii.^2;square_root(ii)=ii.^(1/2);cube_root(ii)=ii.^(1/3);25. 编程求3阶魔方矩阵大于5的元素的平方根。
解:%方法1:a=magic(3);for ii=1:size(a,1)for jj=1:size(a,2)if a(ii,jj)>5a(ii,jj)=sqrt(a(ii,jj));endendenda%方法2:a=magic(3);b=a>5; %b是逻辑数组a(b)=sqrt(a(b))%如果要求同时对小于等于5的元素求平方呢?修改的程序如下:%方法1:a=magic(3);for ii=1:size(a,1)for jj=1:size(a,2)if a(ii,jj)>5a(ii,jj)=sqrt(a(ii,jj));elsea(ii,jj)=a(ii,jj)^2;endendenda%方法2:a=magic(3);b=a>5;a(b)=sqrt(a(b));a(~b)=a(~b).^2;a26. 求n!,n=1,2, (10)解:%定义函数文件factor:function f=factor(n)if n<=1f=1;elsef=factor(n-1)*n;endreturn; %返回%编写下述的命令文件中调用函数文件factor.m:%for i=1:10% fac(i)=factor(i);%end27. 求函数f(x)=sin(x)+3在区间[2 5]的极小值。
解:%方法1:f=inline('sin(x)+3');x=fminbnd(f,2,5) ;%方法2:x = fminbnd('sin(x)+3',2,5) ;sin(x)+3 %f(x)在区间[2 5]的极小值28. 建立一数据文件,用于存放若干名学生的姓名和成绩。
解:n=input('Please input the number of student?');fid=fopen('ss.txt','w');for i=1:nn=input('name=?','s');s=input('score=?');fprintf(fid,'%8s%6.1f\n',n,s);endfclose(fid);29. 已知x=[-43,72,9,16,23,47],求向量x的最大值和最小值。