MATLAB中文上机作业

合集下载

MATLAB上机内容及作业

MATLAB上机内容及作业

MATLAB上机内容及作业无约束优化求解函数fminsearch和fminunc求解无约束非线性优化问题的函数有fminsearch 函数、fminunc 函数。

函数fminsearch和fminunc功能相同,但fminunc函数可以得到目标函数在最优解处的梯度和Hessian矩阵值。

无约束优化数学模型为:min f(X) X∈R n求解无约束非线性优化问题的步骤为:第一步:先编写目标函数的M文件;第二步:再在命令窗口中调用相应的优化函数。

1、fminsearch函数调用格式为[x, fval]=fminsearch(@myfun, x0)输出参数的含义:x:返回最优解的设计变量的值;fval:在最优设计变量值时,目标函数的最小值;exitflag:返回算法终止的标志,有以下几种情况,>0 表示算法收敛于最优解处;=0 表示算法已经达到迭代的最大次数;<0 表示算法不收敛。

output:返回优化算法信息的一个数据结构,有以下信息:output.iteration 表示迭代次数output.algorithm 表示所采用的算法output.funcCount 表示函数评价次数输入参数的含义:@myfun:目标函数的M文件,在其前要加“@”,或表示为'myfun' ,myfun自己可以任意命名;x0:在调用该优化函数时,需要先对设计变量赋一个初始值;2、fminunc函数的调用格式[x, fval]=fminunc (@myfun, x0)grad:返回目标函数在最优解处的梯度信息;hessian:返回目标函数在最优解处的hessian矩阵信息。

其余含义同上。

3、实例已知某一优化问题的数学模型为:min f(X)=3x12+2x1x2+x22X∈R n用MA TLAB程序编写的代码为:第一步:首先编写目标函数的.m文件,并保存为examplefsearch.m文件(先单击file菜单,后点击New 命令中的M—file,即可打开M文件编辑窗口进行代码的编辑,在英文状态下输入程序代码),代码为:function f=examplefsearch(x)f=3*x(1)^ 2+2*x(1)*x(2)+x(2)^2;第二步:在Command窗口中调用fminsearch函数,代码为:x0=[1;1]; %赋初值[x,fval]=fminsearch(@examplefsearch,x0) %回车即可调用fminsearch函数,得到结果输出最优解结果为:x=1.0e-0.08* -0.7914 0.2260 %分别为x1和x2的最优点的值(近似为0)fval=1.5722e-016 %对应最优点的最优目标函数值(近似为0)4、作业已知几个优化问题的数学模型分别为:(1)min f(X)=0.1935x1 x22 x32(4+6x4) X∈R4(2)min f(X)= (x13+cos x2+log x3)/ e x1 X∈R3(3)min f(X)=2x13+4x1x23 -10x1x2+x33X∈R3试用MATLAB编程分别求解上述优化问题的最优解。

Matlab上机作业

Matlab上机作业

一、 MATLAB 基础实验记录每项练习内容及结果1、最简单的计算器使用法,记录操作过程。

2、复数或复矩阵运算,记录操作过程。

3、利用帮助功能查找一个函数的帮助信息。

记录你都看到了什么。

4、察看一个Matlab 工具箱,记录你都看到了什么。

5、写一段100字,对Matlab 的心得体会。

二、 Matlab 编程实验1、有一组学生的考试成绩(见表),根据规定,成绩在100分时为满分,成绩在90~99之间时为优秀,成绩在80~89分之间时为良好,成绩在60~79分之间为及格,成绩在60分以下时为不及格,编制一个根据成绩划分等级的程序。

2、编程,可输入有10个实数的数组,调用函数f 求他们的平均值V ,然后输出其中与V 之差的绝对值为最小的那个数组元素。

3、 若一个数出现在自己平方数的右边,则称该数为同构数。

如,因有5*5=25,25*25=625,所以5和25都是同构数;请编制程序找出1~100之间的全部同构数。

4、 编程序实现功能:在一个元素值按升序存放的整型数组中插入一个数,使得插入后的数组元素仍然有序5、编程序实现功能:一个正整数与3的和是5的倍数,与3的差是6的倍数,求出符合此条件的最小正整数。

6、编程序实现功能:求出所有各位数字的立方和等于1099的3位整数。

7、编制写一个函数实现,一个给定二维(3x3)数组转置,(禁止直接用Matlab 命令) 8、编制写一个函数实现,用“起泡法” 排列输入的10个数字。

9、编制写一个函数实现,输入16进制,输出10进制,(禁止直接用Matlab 命令) 10、编制写一个函数实现,输入一个3x4矩阵,求其中最大元素和最小元素,(禁止直接用Matlab 命令)三、 Matlab 应用实验1、编程绘函数211xy -=的曲线图,展示其定义域内的特性。

2、编程绘函数2112++-=x xy 的曲线图,展示其定义域内的特性。

3、编程绘函数2312+-=x x y 的曲线图,展示其定义域内的特性。

MATLAB上机作业

MATLAB上机作业

MA TLAB上机作业学院名称:专业班级:学生姓名:学生学号:年月作业11.用MATLAB可以识别的格式输入下面两个矩阵12342357135732391894A ⎛⎫⎪⎪ ⎪= ⎪⎪ ⎪⎝⎭,144367723355422675342189543i iB i +⎛⎫⎪+⎪= ⎪+ ⎪ ⎪⎝⎭再求出它们的乘积矩阵C ,并将C 矩阵的右下角23⨯子矩阵赋给D 矩阵。

赋值完成后,调用相应的命令查看MATLAB 工作空间的占有情况。

解:A=[1 2 3 4;2 3 5 7;1 3 5 7 ;3 2 3 9 ;1 8 9 4;]B=[1+4i 4 3 6 7 7;2 3 3 5 5 4+2i;2 6+7i 5 3 4 2;1 8 9 5 4 3;] B=[1+4i 4 3 6 7 7;2 3 3 5 5 4+2i;2 6+7i 5 3 4 2;1 8 9 5 4 3;] C=A*B D=C(4:5,4:6); whos; 2.设矩阵16231351110897612414152⎛⎫ ⎪⎪ ⎪ ⎪⎝⎭,求A ,1A -,3A ,12A A -+,1'3A A --,并求矩阵A 的特征值和特征向量。

解:A=[16 2 3 13;5 11 10 8;9 7 6 12;4 14 15 2;] det(A) inv(A) A.^3 2*A+inv(A) 3*A-A' [V,D]=eig(A)abs (A)3.解下列矩阵方程: 01010014310001201001010120X -⎛⎫⎛⎫⎛⎫⎪ ⎪ ⎪=-⎪ ⎪⎪⎪ ⎪ ⎪-⎝⎭⎝⎭⎝⎭ 解:A=[0 1 0;1 0 0;0 0 1;]; B=[1 0 0;0 0 1;0 1 0;]; C=[1 -4 3; 2 0 -1;1 -2 0;]; X=inv(A)*C*inv(B)4.一球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下。

matlab上机练习及答案

matlab上机练习及答案

第二、三次上机练习:目的:运行课本第四章及课堂上讲过的例子,掌握Matlab 的流程控制语句、函数及脚本文件的编程、调试方法。

作业:1、 完成下列操作:1) 求[100,999]之间能被21整除的个数。

2) 建立一个字符串向量(要求字符串向量中必须包含自己的姓名首字母,大小写均可),删除其中的大写字母2. 编写脚本文件,实现用magic(6)产生一矩阵,用for 循环指令求解其所有元素的和。

3. 定义一个函数文件,求∑=ni m i 1,要求在函数文件中包含能够通过help 查询到的说明;然后调用该函数文件求∑∑∑===++101501210011k k k k k k 的值。

4. 已知)7.1cos(12ln )7.1sin(++++=x xx y π,当x 取-3.0,-2.9,-2.8,…,2.8,2.9,3.0时, 1) 求各点的函数值;2) 求这些数据的平均值;5、求分段函数的值。

222603565231x x x x y x x x x x x x ⎧+-<≠-⎪=-+≤<≠≠⎨⎪--⎩, 且, 0且及, 其它用if 语句实现,分别输出x=-5.0,-3.0,1.0,2.0,2.5时的值。

6、输入一个百分制成绩,要求输出成绩等级A 、B 、C 、D 、E 。

其中90分~100分为A ,80分~89分为B ,70分~79分为C ,60分~69分为D ,60分以下为E 。

要求:分别用if 语句和switch 语句实现。

7、根据222221111...,6123n ππ=++++求的近似值。

当n 分别取100、1000、10000时,结果是多少?(要求:分别用循环结构和向量运算来实现)8、已知n=1时,f 1=1;n=2时,f 2=0;n=3时,f 3=1;n>3时,f n =f n-1 -2f n-2+ f n —3; 求f 1~ f 100中,最大值、最小值以及各数之和。

Matlab基础及应用第一章上机作业

Matlab基础及应用第一章上机作业

1、新建一个文件夹(自己的名字命名)
答:
2、启动MATLAB,将该文件夹添加到MATLAB路径管理器中。

保存,关闭对话框。

使用path命令查看MATLAB搜索路径。

3、学习使用help命令,例如在命令窗口输入help eye,然后根据帮助说明,学习使用指令eye。

4、使用clc、clear,观察command window、command history和workspace等窗口的变化结果。

5、编写一段简短的脚本文件,保存并显示运行结果。

6、创建两个double型变量a=32、b=5,并计算a+b、a-b、a*b、a/b、a\b;
创建两个int8型变量a、b,取同样数值,并计算a+b、a-b、a*b、a/b、a\b,对于计算结果与前次计算结果不同的情形请给出解释。

7、查看int16数据类型的取值范围(intmin,intmax);查看单精度数据类型的取值范围和精度(realmin,realmax,eps)。

8、求下列表达式的值,然后显示MATLAB工作空间的使用情况并保存全部变量:
(1)sin(60o) (2) e3 (3) cos(3/4π)
9、用两种定义复数的方法计算(直接定义,complex(a,b))
(1)(3-5i)(4+2i) (2) sin(2-8i)。

matlab上机作业报告(计算初...

matlab上机作业报告(计算初...

matlab上机作业报告(计算初...一、给定向量x ≠0,计算初等反射阵H k 。

1.程序功能:给定向量x ≠0,计算初等反射阵H k 。

2.基本原理:若()xx x R x ∈=,,, 的分量不全为零,则由12112212122()x (,,,)1()22n T T sign x e x x x x σσσρσσρ-?=? =+=+==+?=-=-u x u uu H I I uuu 确定的镜面反射阵H 使得y eHx =-=σ;当(1)k n ≤<时,由21/2k ()T 1()()()k 1()()()(())(0,,0,,,,)1()()=()2()nk i i kk nk k k n k T k k Tk k k kk k T k k sign x x x x x x σσρσσσρ=+-?=?=+∈?==+??=-?∑u R u u u H I u u 有T 121(,,,,,0,,0)n k k k x x x σ-=-∈H x R算法:(1)输入x ,若x 为零向量,则报错 (2)将x 规范化,{}x x x M ,,,m ax =如果M =0,则报错同时转出停机否则n i M x x i i ,,2,1, =←(3)计算2x =σ,如果0<1x ,则σσ-= (4))(1x +=σσρ (5)计算1,(1)x σ==+u x u (6)1Tρ-=-H I uu (7)(M ,0,,0)σ=-y(8)按要求输出,结束3.变量说明:x -输入的n维向量;n -n维向量x的维数;M -M是向量x的无穷范数,即x中绝对值最大的一项的绝对值;p -Householder初等变换阵的系数ρ;u -Householder初等变换阵的向量Us -向量x的二范数;x -输入的n维向量;n -n维向量x的维数;p -Householder初等变换阵的系数ρ;u -Householder初等变换阵的向量Uk -数k,H*x=y,使得y的第k+1项到最后项全为零;4.程序代码:(1)function [p,u]=holder2(x)%HOLDER2 给定向量x≠0,计算Householder初等变换阵的p,u %程序功能:函数holder2给定向量x≠0,计算Householder初等变换阵的p,u;%输入:n维向量x;%输出:[p,u]。

matlab上机作业

matlab上机作业

第一章 matlab 入门1熟悉MATLAB 的基本使用方法,各菜单及各窗口的功能。

2 会使用matlab 的帮助系统:1 联机帮助系统;2 命令窗口查询帮助系统;3 联机演示系统(demos ),重点练习demos 。

3.最简单的计算器用法:计算4.复数运算:已知 ,试计算z ,并给出z 的模和相角,其中相角用度数表示。

5.字符串操作:统计一段文本:MATLAB is a good thing for everybody.中字符i 出现的次数。

6. 7符号运算:求函数sin(x)(1+x 2)关于x 的一阶导数。

8.绘制函数y=sinc(x)在区间[-4,6]上的图形。

9.数据图示:设有一批数据点(t,y ),其中t 在区间[0,2π]上以π/30等间隔分布,y 在每个t 上由函数y=sin(t 2)计算得到,试绘出这些数据点的图形。

10.几何应用:已知空间三点A(1,1,-1)、B(3,3,0)、C(5,4,4),求⊿ABC 的面积。

11.输出声音:用计算机声卡放出标准音阶的7个单频正弦音符。

12.练习常用标点及常用命令的使用,熟悉matlab 的特殊变量。

exit/quit :退出;ctrl+c/break :终止正在运行的程序;clc :命令窗清屏;clear :清除内存变量;clf :清除当前图形窗中的图形对象;↑↓:命令行快速编辑命令;format :定义数据显示格式;save/load :保存和加载工作区变量;date , clock :显示日期和时间;tic / toc :启动和终止秒表;hold 图形保持size :返回变量每一维的大小;length :length(A)=max(size(A))第二章 矩阵及数组运算1创建变量:a =10b = 2.5*1023c = 2 + 3id =e j 2π /3aVec = [3.14 15 9 26]1.3(12cos(/5))π+⨯12812344312, 34, 56, 7, i z z z i z i z i z e z z z π=+=+=+==+1223 A , B , A B 3445⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦==⨯矩阵运算:已知求。

MATLAB上机练习及作业

MATLAB上机练习及作业

MATLAB上机练习及作业第一章1. 熟悉MATLAB环境,练习第一章的命令;2. 练习显示格式(P13)1利用Help命令,搞清楚MATLAB的所有主题,利用help signal和help control 搞清楚这两个工具箱2练习whos,who,disp,clear,which,ver等命令第二章3练习矩阵操作,书上P34~404练习逻辑和关系运算,书上P40~435练习随机数产生,书上P506练习时间和日期函数,P56~577矩阵操作diag,reshape,rot90,fliplr,flipud,tril,triu等8练习MATLAB基本函数P669上交:第二章习题中的No.3, No.6第3章1. 练习产生图3.1~3.5, 3.9~3.12, 3.14, 3.18,3.21,3.22, 3.24~3.312. 第3章习题: (P122) 2, 5--93. 交程序:5;74. 并练习图形旋转、标注、复制等功能5. 交结果:与习题7类似,只是画出你自己上个月的消费饼图第4章1. 上机前好好复习这章内容,练习P137页的两段程序,并将终值扩大到500,体会两者的速度差异。

2. 熟悉MATLAB的调试技术。

3. 第4章习题: (P158)4. 1,3,5,8,95. 交结果:3;5,8(分别求出当I=54,I=105时的结果);9第5章习题(p.222)1, 2, 3, 7, 8, 9, 13, 15, 16, 20交结果: 1, 2, 8, 9, 13, 16第6章P.251 看懂综合设计示例, 设计程序计算每个班的平均成绩, 计算教师的实际学时数。

(交结果)P.269 2, 3第7章1. 在[-1,1]区间上绘制出y=-2x^2+4的曲线, 并在图中标注出最大值点的坐标.2. 任意给定一句英文句子, 请提取其每个单词, 并设计一结构, 其域有Name、No、Length、Value,分别用于存储每个单词的名称、句中序号、单词长度、单词各个字符的ASCII 码。

Matlab上机操作作业(4)参考答案

Matlab上机操作作业(4)参考答案

上机操作(4)内容: M 文件编程一、结合教材第6章内容以及实验指导书内容掌握一般M 脚本和函数文件的编写。

二、 完成以下习题,并按照要求将作业提交。

(1) 将调试通过的程序序列复制到作业题目下方,并将文件保存为word 文档,文件名为:姓名+班级学号末两位数 (如:王丹妮9301)(2) 作业提交方式:A 现场网上提交(鼠标右点击电脑右下方的人头或燕子标记,按照菜单操作即可。

B 若不能提交,发送至我的邮箱363586609@ .发送时邮件标题为:文件名作业4(如:王丹妮9301作业4)1. 编写M 脚本文件,画出下列分段函数所表示的曲面。

(30分)⎪⎪⎩⎪⎪⎨⎧-≤+≤+<->+=+-------15457.0117575.015457.0),(215.175.375.0216215.175.375.02112122212212122x x e x x e x x e x x p x x x x x x x x %参考答案a=2;b=2;x=-a:0.1:a;y=-b:0.1:b;for i=1:length(y)for j=1:length(x)if x(j)+y(i)>1z(i,j)=0.5457*exp(-0.75*y(i)^2-3.75*x(j)^2-1.5*x(j));elseif x(j)+y(i)<=-1z(i,j)=0.5457*exp(-0.75*y(i)^2-3.75*x(j)^2+1.5*x(j));else z(i,j)=0.7575*exp(-y(i)^2-6.*x(j)^2);endendendaxis([-a,a,-b,b,min(min(z)),max(max(z))]);surf(x,y,z);xlabel('x1');ylabel('x2');zlabel('p(x1,x2)');2.编写一个M 函数文件,该文件应有函数声明行、帮助说明和程序编写人姓名。

东北大学matlab上机作业

东北大学matlab上机作业

第一部分1.安装MA TLAB 软件,应用demo 命令了解主要功能,熟悉基本功能,会用help 命令2.用MATLAB 语句输入矩阵A 和B⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=1423143212344321A , ⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡++++++++++++++++=4j 11j43j22j34j 11j 42j 33j 24j13j 22j 31j 41j 42j 33j 24j 1B前面给出的是44⨯矩阵,如果给出5)6,5(=A 命令将得出什么结果?解: (1)>> A=[1,2,3,4;4,3,2,1;2,3,4,1;3,2,4,1] A =1 2 3 4 4 3 2 1 2 3 4 1 3 2 4 1 (2)>> B=[1+4j,2+3j,3+2j,4+1j;4+1j,3+2j,2+3j,1+4j;2+3j,3+2j,4+1j,1+4j;3+2j,2+3j,4+1j,1+4j] B =1.0000 + 4.0000i2.0000 +3.0000i 3.0000 + 2.0000i4.0000 + 1.0000i 4.0000 + 1.0000i 3.0000 + 2.0000i 2.0000 + 3.0000i 1.0000 + 4.0000i 2.0000 + 3.0000i 3.0000 + 2.0000i 4.0000 + 1.0000i 1.0000 + 4.0000i 3.0000 + 2.0000i 2.0000 + 3.0000i 4.0000 + 1.0000i 1.0000 + 4.0000i >> A(5,6)=5 A =1 2 3 4 0 0 4 3 2 1 0 0 2 3 4 1 0 0 3 2 4 1 0 0 053.假设已知矩阵A ,试给出相应的MATLAB 命令,将其全部偶数行提取出来,赋给B 矩阵,用magic(8)A =命令生成A 矩阵,用上述命令检验一下结果是不是正确。

Matlab上机练习题及答案

Matlab上机练习题及答案

Matlab 上机练习题及答案---------------------------------------------------------------------1、 矩阵Y= ⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡3472123100451150425,给出元素1的全下标和单下标,并用函数练习全下标和单下标的转换,求出元素100的存储位置。

取出子矩阵⎥⎦⎤⎢⎣⎡21301,并求该矩阵的维数。

解:命令为:Y=[5,2,4;0,15,1;45,100,23;21,47,3] Y(2,3) Y(10)sub2ind([4 3],2,3)[i,j]=ind2sub([4 3],10)find(Y==100) sub2ind([4 3],3,2)B=Y(2:2:4,3:-2:1) 或 B=Y([2 4],[3 1]) [m n]=size(Y)---------------------------------------------------------------------2、已知矩阵A=[1 0 -1 ;2 4 1; -2 0 5],B=[0 -1 0;2 1 3;1 1 2] 求2A+B 、A 2-3B 、A*B 、B*A 、A .*B ,A/B 、A\B解:命令为:A=[1 0 -1 ;2 4 1; -2 0 5] B=[0 -1 0;2 1 3;1 1 2] E=2*A+B F=A^2-3*B G=A*B H=B*A I=A.*B J=A/B K=A\B---------------------------------------------------------------------3、利用函数产生3*4阶单位矩阵和全部元素都为8的4*4阶矩阵,并计算两者的乘积。

解:命令为: A=eye(3,4) B=8*ones(4)C=A*B---------------------------------------------------------------------4、创建矩阵a=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡------7023021.5003.120498601,取出其前两列构成的矩阵b ,取出前两行构成矩阵c ,转置矩阵b 构成矩阵d ,计算a*b 、c<d ,c&d, c|d ,~c|~d解:命令为:a=[-1,0,-6,8;-9,4,0,;0,0,,-2;0,-23,0,-7] b=a(:,[1 2]) c=a([1 2],:) d=b ’ e=a*b f=c<d g=c&d h=c|d i=~c|~d---------------------------------------------------------------------5、求!201∑=n n解:命令文件为 sum=0; s=1;for n=1:20 s=n*s; sum=sum+s; end sum---------------------------------------------------------------------6、求a aa aaa aa a S n ++++=得值,其中a 是一个数字,由键盘输入,表达式中位数最多项a 的个数,也由键盘输入。

matlab上机考试题及答案

matlab上机考试题及答案

matlab上机考试题及答案1. 题目:编写一个MATLAB函数,计算并返回一个向量中所有元素的平方和。

答案:函数定义如下:```matlabfunction sumOfSquares = calculateSumOfSquares(vector)sumOfSquares = sum(vector.^2);end```2. 题目:使用MATLAB的内置函数,找出一个矩阵中的最大元素及其位置。

答案:可以使用`max`函数来找出矩阵中的最大元素,同时使用`find`函数来获取其位置。

示例代码如下:```matlabA = [1, 2, 3; 4, 5, 6; 7, 8, 9];[maxValue, linearIndex] = max(A(:));[row, col] = ind2sub(size(A), linearIndex);```3. 题目:给定一个向量,使用MATLAB编写代码,实现向量元素的逆序排列。

答案:可以使用`flip`函数来实现向量的逆序排列。

示例代码如下:```matlabvector = [1, 2, 3, 4, 5];reversedVector = flip(vector);```4. 题目:编写一个MATLAB脚本,计算并绘制一个正弦波的图像。

答案:可以使用`sin`函数生成正弦波数据,并使用`plot`函数绘制图像。

示例代码如下:```matlabx = linspace(0, 2*pi, 100);y = sin(x);plot(x, y);xlabel('x');ylabel('sin(x)');title('Sine Wave');```5. 题目:给定一个3x3的矩阵,使用MATLAB编写代码,计算其行列式。

答案:可以使用`det`函数来计算矩阵的行列式。

示例代码如下:```matlabmatrix = [1, 2, 3; 4, 5, 6; 7, 8, 9];determinant = det(matrix);```结束语:以上是MATLAB上机考试的题目及答案,希望能够帮助大家更好地掌握MATLAB的编程技巧和函数使用。

Matlab上机作业部分参考答案

Matlab上机作业部分参考答案

3. 有一组学生的考试成绩如下表,根据规定,成绩在100分时 为满分,成绩在90~99之间时为优秀,成绩在80~89分之间时 为良好,成绩在60~79分之间为及格,成绩在60分以下时为不 及格,编制一个根据成绩划分等级的程序。
学生 姓名 王 张 刘 李 陈 杨 于 黄 郭 赵成 绩Βιβλιοθήκη 728356
94
100
z1 x2 2y 2 , 2. 列出求下列空间曲面
(提示find 命令)
z2 2 x 3 y 交线的程序
clc clear x=[-5:0.5:5]; [X,Y]=meshgrid(x); z1=X.^2-2*Y.^2; z2=X.*2-Y.*3; xlabel('x') ylabel('y') zlabel('z')
surf(X,Y,z1) hold on surf(X,Y,z2) k=find(abs(z1-z2)<0.5); x1=X(k) y1=Y(k) z3=x1.^2-2*y1.^2 hold on
88
96
68
54
65
4. 编制写一个函数实现,输入一个3x4矩阵,求其中最大元素 和最小元素(禁止直接用Matlab命令) 5. 编程,可输入有10个实数的数组,调用函数f求他们的平均值 V,然后输出其中与V之差的绝对值为最小的那个数组元素。 6. 编制写一个函数实现,一个给定二维(3x3)数组转置。 (禁止直接用Matlab命令)
7.
编制写一个函数实现,输入16进制,输出10进制。(禁止直 接用Matlab命令)
8. 编程序实现功能:在一个元素值按升序存放的整型数组中插 入一个数,使得插入后的数组元素仍然有序。 9. 编制写一个函数实现,用“冒泡法” 排列输入的10个数字。

(完整版)matlab上机练习题答案

(完整版)matlab上机练习题答案

6 9 3 2 4 11.计算a 与b 的数组乘积2 7 5 4 6 8>> a=[6 9 3;2 7 5];>> b=[2 4 1;4 6 8];>> a.*bans =12 36 38 42 404 9 2 372.对于AX B,如果A 7 6 4 ,B 26,求解X o3 5 7 287 16 185计算多项式除法(3乂3+13*+6乂+8)/0+4)>> d=deconv([3 13 6 8],[1 4])6求欠定方程组298的最小范数解5>> a=[2 4 7 4;9 3 5 6];>> b=[8 5]';>> x=pinv(a)*b-0.2151>> A=[4 9 2;7 6 4;3 5 7]; >> B=[37 26 28]';>> X=A\BX =-0.51184.04271.33180.44590.79490.27077用符号函数法求解方程at2+b*t+c=0 >> r=solve('a*t A2+b*t+c=0','t')1 2 5 8 7 43.a ,b ,观察a与b之间的3 64 3 6 2六种关系运算的结果[1/2/a*(-b+(bA2-4*a*c)A(1/2))] [1/2/a*(-b-(bA2-4*a*c)A(1/2))]>> a=[1 2 3;4 5 6]; >> b=[8 - 4;3 6 2]; >> a>bans =0 11 0 >> a>=bans =0 11 0 >> a<bans =1 00 1 >> a<=bans =1 00 1 >> a==bans =0 00 0 >> a~=bans =1 11 1 4计算多项式乘法111111(X2+2X+2)(X2+5X+4)8求矩阵A a11 a12的行列式值、逆和特征根a 21 a22>> syms a11 a12 a21 a22;>> A=[a11,a12;a21,a22]>> AD=det(A) % 行列式>> AI=inv(A) % 逆>> AE=eig(A) % 特征值A =[a11, a12][a21, a22]AD =a11*a22-a12*a21AI =[-a22/(-a11*a22+a12*a21), a12/(-a11*a22+a12*a21)][a21/(-a11*a22+a12*a21), -a11/(-a11*a22+a12*a21)]AE =>> c=conv([1 2 2],[1 5 4]) [1/2*a11+1/2*a22+1/2*(a11A2-2*a11*a22+a22A2+4*a12*a21)A(1/2)][1/2*a11+1/2*a22-1/2*(a11A2-2*a11*a22+a22A2+4*a12*a21)A(1/2)] 9 因式分解:X45X35X25X 6>> syms X;>> f=xA4-5*xA3+5*xA2+5*x-6;>> factor(f)ans =(X-1)*(X-2)*(X-3)*(X+1)x ,用符号微分求df/dx。

Matlab上机题库及详细答案

Matlab上机题库及详细答案
rate=8/100;
case num2cell(25:49) %价格大于等于2500但小于5000
Байду номын сангаасrate=10/100;
otherwise %价格大于等于5000
rate=14/100;
end
price=price*(1-rate) %输出商品实际销售价格
例19已知,当n=100时,求的值。
解:程序如下:
y=0;n=100;for i=1:n;y=y+1/(2*i-1);End
例20:一个三位整数各位数字的立方和等于该数本身则称该数为水仙花数。输出全部水仙花数
解:for m=100:999
m1=fix(m/100);m2=rem(fix(m/10),10);m3=rem(m,10);
if m==m1*m1*m1+m2*m2*m2+m3*m3*m3;disp(m);end
D=diag(1:5);D*A %用D左乘A,对A的每行乘以一个指定常数
例15:输入x,y的值,并将它们的值互换后输出。
程序如下:
x=input('Input x please.');y=input('Input y please.');z=x;x=y;y=z;
disp(x);disp(y);
例16::求一元二次方程ax2 +bx+c=0的根。
switch fix(price/100)
case {0,1} %价格小于200
rate=0;
case {2,3,4} %价格大于等于200但小于500
rate=3/100;
case num2cell(5:9) %价格大于等于500但小于1000

完整word版MATLAB上机作业

完整word版MATLAB上机作业

MATLAB 上机作业1对以下问题编写M文件:(1)用起泡法对10个数由小到大排序。

即将相邻两个数比较,将小的调到前头。

fun cti on f=qip aofa(x)for j=9:-1:1for i=1:jif(x(i)>x(i+1))t=x(i);x(i)=x(i+1);x(i+1)=t;end end end f=xx=rou nd(10*ra nd(1,10))qip aofa(x);(2)有一个4X 5矩阵,编程求出其最大值及其所处的位置。

fun cti on f=zuidazhi(x)a=1;b=1;c=x(1,1);for i=1:4for j=1:5 if x(i,j)>c a=i;b=j;c=x(i,j);endend end f=[c,a,b] x=ra nd(4,5) zuidazhi(x)20(3)编程求送n! ond:fun cti on f=qiuhe(x) b=0;for i=1:xa=p rod(1:i); b=b+a;end f=bqiuhe(20)(4)一球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下。

求它在第10次落地时,共经过多少米?第10次反弹有多高?fun cti on f=gao(x)b=x;for i=2:10x=x/2;a=x*2; b=b+a;end f=[b x/2]gao(100)⑸有一函数f(x,y)=x2 +sin xy+2y,写一程序,输入自变量的值,输出函数值。

Function f=fun(x)f=x(1)A2+si n(x(1)*x(2))+2*x (2)MATLAB 上机作业21. 求和 Y =1 +4+42+440。

syms k s=4^k;S=symsum(s,k,0,40) 2. 求函数f (X )=2x ' -6x 2-18x + 7的极值,并作图。

y='2*x^3-6*x^2-18*x+7'; y_='-2*xA3+6*xA2+18*x-7';[x_mi n, y_mi n]=fmi nbn d(y,-7,7) [x_max,y_max]=fmi nbn d(y_,-7,7) ezpl ot(y) 3. 设 y =e x sinx-7cosx+5x 2,求 业=?,3^ = dx dxy=ex p(x)*si n(x)-7*cos(x)+5*xA2; dy=diff(y)d2y=diff(y,2) 兀/2 ■ ------------4.求积分 h =J 0 J1-2si n2xdx 。

MATLAB中文上机作业

MATLAB中文上机作业

1、给定c 如下,计算运算结果。

1.12.23.34.44321c 0.10.50.30.212233045⎡⎤⎢⎥−−−−⎢⎥=⎢⎥−−⎢⎥⎣⎦(a) c (2:end, 2:3:end) (b) b= c ([2 2], [3 3]) (c) e=c(2:3,3:end)(d) d (: , : , 1)=e d (:, : , 2) = e*e2、给定a 如下,计算运算结果。

(a) a =eye(3)-2; (b) b = [ a(2) 6 4; a ]; (c)a ([1 2], :) = a ([2 2], :);3、给定以下a, b, c 和d ,计算下列等式的值,若认为运行结果出错,请给出理由。

2112a −⎡⎤=⎢⎥⎣⎦⎥⎦⎤⎢⎣⎡−=1310b[1,2]c =(a) result = a .* c’; (b) result = a * [c c]; (c) result = a .* [c’ c’]; (d) result = a + b * c’;(e) result = a + b .* c4、一小球从空中下落的位移公式为20021at t v x x ++=,用MATLAB 计算小球在t =5s 时的位置,已知x 0 =10m ,v 0 =15m/s , a=-9.84m/s 2。

5、用MATLAB 语句画出函数xex y 2.02)(−=在[0,10]的值。

6、(温度转换)设计一个MATLAB 程序,读取一个华氏温度的输入,输出开尔文温度。

华氏温度和开尔文温度的转换关系式可在物理学课本中找到。

其关系式为:()5()()32.0273.159T T =−+开尔文华氏温度 要求能提示用户输入华氏温度,读取用户键盘输入数据,并最终显示出温度。

7、一个内阻R s =50Ω,电动势V =120V 的电源驱动一个负载R L 。

当R L 为多少时,R L 的功率最大?在这种情况下,功率为多少?画出以R L 为自变量的R L 功率图。

Matlab上机练习二答案

Matlab上机练习二答案

Matlab上机练习⼆答案Matlab 上机练习⼆班级学号姓名按要求完成题⽬,并写下指令和运⾏结果。

(不需要画图)1、求??+-+-+-+-++=i 44i 93i 49i 67i 23i 57i 41i 72i 53i 84x 的共轭转置。

>> x=[4+8i 3+5i 2-7i 1+4i 7-5i;3+2i 7-6i 9+4i 3-9i 4+4i]; >> x’ans =4.0000 - 8.0000i 3.0000 - 2.0000i3.0000 - 5.0000i 7.0000 + 6.0000i2.0000 + 7.0000i 9.0000 - 4.0000i1.0000 - 4.0000i 3.0000 + 9.0000i7.0000 + 5.0000i 4.0000 - 4.0000i2、计算=572396a 与??=864142b 的数组乘积。

>> a=[6 9 3;2 7 5];>> b=[2 4 1;4 6 8];>> a.*bans =12 36 38 42 403、对于B AX =,如果=753467294A ,=282637B ,求解X 。

>> A=[4 9 2;7 6 4;3 5 7];>> B=[37 26 28]’;>> X=A\BX =-0.51184.04271.33184、 -=463521a ,-=263478b ,观察a 与b 之间的六种关系运算的结果。

>> a=[1 2 3;4 5 6];>> b=[8 –7 4;3 6 2];>> a>bans =0 1 01 0 1>> a>=bans =0 1 01 0 1>> aans =1 0 10 1 0>> a<=bans =1 0 10 1 0>> a==bans =0 0 00 0 0>> a~=bans =1 1 11 1 15、[]7.0802.05--=a ,在进⾏逻辑运算时,a 相当于什么样的逻辑量。

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

1、给定c 如下,计算运算结果。

1.12.23.34.44321c 0.10.50.30.212233045⎡⎤⎢⎥−−−−⎢⎥=⎢⎥−−⎢⎥⎣⎦(a) c (2:end, 2:3:end) (b) b= c ([2 2], [3 3]) (c) e=c(2:3,3:end)(d) d (: , : , 1)=e d (:, : , 2) = e*e2、给定a 如下,计算运算结果。

(a) a =eye(3)-2; (b) b = [ a(2) 6 4; a ]; (c)a ([1 2], :) = a ([2 2], :);3、给定以下a, b, c 和d ,计算下列等式的值,若认为运行结果出错,请给出理由。

2112a −⎡⎤=⎢⎥⎣⎦⎥⎦⎤⎢⎣⎡−=1310b[1,2]c =(a) result = a .* c’; (b) result = a * [c c]; (c) result = a .* [c’ c’]; (d) result = a + b * c’;(e) result = a + b .* c4、一小球从空中下落的位移公式为20021at t v x x ++=,用MATLAB 计算小球在t =5s 时的位置,已知x 0 =10m ,v 0 =15m/s , a=-9.84m/s 2。

5、用MATLAB 语句画出函数xex y 2.02)(−=在[0,10]的值。

6、(温度转换)设计一个MATLAB 程序,读取一个华氏温度的输入,输出开尔文温度。

华氏温度和开尔文温度的转换关系式可在物理学课本中找到。

其关系式为:()5()()32.0273.159T T =−+开尔文华氏温度 要求能提示用户输入华氏温度,读取用户键盘输入数据,并最终显示出温度。

7、一个内阻R s =50Ω,电动势V =120V 的电源驱动一个负载R L 。

当R L 为多少时,R L 的功率最大?在这种情况下,功率为多少?画出以R L 为自变量的R L 功率图。

8、电器工程低通滤波电路图3.8 简单的低通滤波电路上图是向大家展示了一个简单的低通滤波电路。

这个电路是由一个电阻和一个电容组成。

输出电压V 0与输入电压V i 的电压比为V o V i = 11 + j 2πfRC其中V i 是在频率f 下的正弦输入电压。

R 代表电阻,单位为欧姆。

C 代表电容,单位为法拉。

j 为-1假设R =16 k Ω,电容C =1 μF ,请在同一个图形窗口下分别画出这个滤波器的幅频特性、相频特性曲线,要求幅频特性曲线坐标轴均采用对数坐标,相频特性曲线频率坐标用对数坐标。

9、工程师们经常用分贝或dB 来描述两功率之比。

dB 的定义如下1210log 10P P dB =P 2是已测量的功率,P 1代表参考功率。

a. 假设参考功率P 1为1mw,编写一个程序,接受一个输入功率P 2并把它转化成为以1mw 为参考功率的dB.(它在工程上有一个特殊单位dBm)。

在编写程序时,注意培养好的编程习惯。

b. 写一个程序,创建一个以W 为单位的功率(横坐标),其对应的相对功率(单位为dBm)(纵坐标)的图象。

要求画2个图,第1个图象的XY 轴都要用线性轴,而第2图象要用对数-线性 xy 轴。

10、收音接收机.电阻上的电压可通过频率计算出来,公式如下o R V CL R R V 22)1(ωω−+=Rω=2πf ,以Hz 为单位的频率.假设L =0.1mH ,C =0.25nF ,R =50Ω,V 0=10mV 。

a. 画出以频率为自变量的电阻电压函数。

在什么频率下,电阻上的电压最大?这时的电压为多少?这个频率叫做电路的固有频率。

b. 如果这个频率比固有频率大百分之十,此时电阻上的电压为多少? c. 在什么频率下这个电阻上的电压会降到固有频率电压的一半?11、接上题假设两个信号同时被天线接收。

其中一个信号的大小为1V ,频率为1000kHz,而另一个信号的大小为1V ,950kHz 。

第一个信号给负载R 的功率是多少?第二个信号给负载R 的功率是多少?计算第二个信号相对第一个信号的增益或衰减。

与第一个信号相比,第二个信号增益或衰减了多少?12、在邮局发一个包裹,不超过两英磅的则收款为10美元。

超过两英磅每英磅按3.75美元来计费,如果包裹的重量超过了70英磅,超过了70英磅的部分,每英磅的价格为1.0美元。

如果超过了100英磅则拒绝邮递。

编写一个程序,输入包裹的重量,输出它的邮费。

13、编写了一个程序用以计算f (x ,y )的值。

这个函数的定义如下f (x ,y ) = ⎩⎨⎧x + y x ≥ 0 and y ≥ 0x + y 2x ≥ 0 and y < 0x 2+ y x < 0 and y ≥ 0x 2 + y 2x < 0 and y < 0在这里我们要求用if-elseif 结构来编写这个程序。

14、编写一个程序允许使用者输入一个字符串,这个字符必须是一个星期中的一天(即"Sunday","Monday","Tuesday"等),应用switch 结构把这些字符串转化为相应的数字,以星期天为第一天,以星期六为最后一天。

如果输入不是这七个字符串中的一个,那么输出提示信息。

15、画轨道。

一颗卫星绕地球运行,卫星的轨道是椭圆形的,而地球就处于这个椭圆的某一个焦点上。

卫星的轨迹方程满足下式θεcos 1−=Prr 与θ分加代表卫星距地球的距离和两者形成的交角,P 是体现轨道大小的参数,ε是来决定轨道形状的参数,ε为0则轨道是圆形的,0≤ε≤1则说明轨道是椭圆形的。

如果ε>1,则卫星要做离心运动。

已知卫星的p =1000km ,画出卫星的轨迹,已知 (a) ε=0;(b) ε=0.25;(c) ε=0.5每一颗卫星到地球最近距离是多少?最远距离是多少?16、计算这一年已经逝去的天数(包括当天)。

在平年中,它的取值范围为1到365,在闰年中,它的取值范围1到366。

编写一个MATLAB 程序,输入年,月,日,输出为对应的该天是当年的第几天。

闰年是这样规定的1).能被400整除的年为闰年2)能被100整除但不能被400整除的年不为闰年 3).能被4整除但不能被100整除年为闰年 4).其余的年份不为闰年17、画出小球的轨迹如果我们假设处于真空中,且忽略地球的曲率。

在地球任意一点向空中抛出一小球将会产生类似于图(a )所示的曲线。

球在时刻t 的高度将会遵守公式。

(a )如果物体上抛,将会产生一个抛特线轨迹。

(b )速度可以分解为水平速度和竖直速度,水平速度和合速度之间的夹角为θ。

2021)(gt t v y t y yo ++=其中y 0是初始高度,v y0代表初速度,g 代表重力加速度。

水平位移的计算公式为x(t)=x 0+v x0tx 0代表初始位移,v x0代表这个物体的水平初速度,竖直初速度与合初速度之间的关系为v x0=v 0cos θv y0=v 0sin θ假设一个小球的初始位置为(x 0,y 0)为(0,0),初速度为20m/s ,水平速度和合速度之间的夹角为θ度,编写一个程序,1)画出这个小球的轨迹,并计算小球再次落地与初始位置之间的距离。

这程序应当能画出多个抛物线,θ的取值从5到85度,每隔10度取一次,计算水平位移,打印不同的抛物线时要用不同的颜色。

..2)θ的取值从0到90度,每隔1度取一次。

最终应当确定那一个θ值使得水平位移最大。

这个无需画图地球的重力加速度为-9.81m/s 2。

18、正态分布(如图所示)。

如果一个正态分布的平均数为0,标准差为1.0,那么这个正态分布被称为标准正态分布。

标准正态分布的公式为2/221)(x e x p −=π在(-1,1)中遵守平均分布的随机变量能够产生遵守正态分布的随机变量。

1.在(-1,1)中任取遵守平均分布的随机变量x 1和x 2,看x 21 +x 22<1是否成立。

如果成立用它们,如果不成立,则重试。

2.由下面公式得到的y 1和y 2将是正态分布随机变量。

11ln 2x r ry −=2ln 22x rry −=2221x x r +=编写程序得到10000个随机变量,计算它们的标准差和均值(std 和mean 命令)。

画出柱状图(用hist 命令)来检测你的函数。

提示rand()函数可以产生[0,1]之间的均匀分布数据。

19、瑞利分布瑞利分布是另一种在许多现实问题中出现的随机变量分布类型。

符合瑞利分布的随机变量可以由两个符合正态分布的随机变量通过计算得到。

计算方法如下所示,n 1和n 2是符合正态分布的随机变量。

2221n n r +=A.创建一函数rayleigh(n,m),它将返回一个n×m 的数组,数组元素符合瑞利分布。

如果只有一个输入参数n ,它将会产生一个n 阶方阵。

确保你设计的函数能够检测输入参数,并为MATLAB 帮助系统提供适当文本。

B.通过产生20000个符合瑞利分布的随机变量。

并画出它们的分布的柱状图。

C.计算出这20000个随机变量的平均数和标准差 提示:正态分布可以用randn 函数生成。

20、编一个函数to_polar ,可以接受一个复数,并返回两个输出参数——复数C 的模mag 和角度theta 。

输出角度的单位要求为度,同时当函数调用时仅返回一个输出参数时,只返回模值。

21、创建函数z=e x+y 在-1≤x ≤1和-2π≤y ≤2π内的三维网图,表面图和等高线图。

相关文档
最新文档