2015matlab第一轮上机练习
matlab第一次训练题目
% 根据实际情况求相应的拟合函数值 xx=0:0.01:1; % 给定新的拟合自变量的范围 %根据求得的拟合多项式系数和新的自变量范围求取相应的拟合函数值 yy=polyval(P,xx);
% 图示拟合结果,并标出原始数据点,以做比较 plot(xx,yy,’-b’,x0,y0,’.r’,’MarkerSize’,20), xlabel(‘x’)
0.4t
cos(3t ) ,0 ≤ t ≤ 3π ,并在图上标出图名和极大值点坐标。
可能用到的函数:num2str, char, text, hold on, 具体应用自己查找help 文档。 三.编程实现分别用for 或while 循环语句计算: 1、
K 2 i 1 2 2 2 2 63
% 首先给定数据对 x0=0:0.1:1; y0=[-.447,1.978,3.11,5.25,5.02,4.66,4.01,4.58,3.45,5.35,9.22]; % 采用三次多项式进行插值 xi=0:0.02:1; %待进行插值的数据点 % 根据原始数据对,采用三次多项式(表现为使用参数 % ’cubic’实现)进行一维插值 %图示插值结果,并标出原始数据点,以做比较 plot(xi,yi,’-b’,x0,y0,’.r’,’MarkerSize’,20), xlabel(‘x’) yi=interp1(x0,y0,xi,’cubic’)
实验名称: 《数学软件训练》-matlab 基础训练 专业: 姓名:
一、实验目的及要求 (一)实验目的
回顾《数学实验》课程内容,训练基本矩阵运算及程序设计,学习老师所给自学文档。
班级: 学号:
时间 指导老师:
2015.6.235-10
(二)实验要求 独立完成所给实验题目,查阅书本及网络资料,完成相关作业,课后提交实验报 告。 二、实验设备(环境)及要求
matlab上机习详解_试题答案
P 第一次实验答案1. 设要求以0.01秒为间隔,求出y 的151个点,并求出其导数的值和曲线。
clc clearx=0:0.01:1.5;y=sqrt(3)/2*exp(-4*x).*sin(4*sqrt(3)*x+pi/3)y1=diff(y) subplot(2,1,1) plot(x,y)subplot(2,1,2) plot(x(1:150),y1)2绘制极坐标系下曲线(a,b,n 自定数据)clc clear a=10; b=pi/2; n=5;theta=0:pi/100:2*pi; rho=a*cos(b+n*theta); polar(theta,rho)3. 列出求下列空间曲面交线的程序clc clearx=[-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 onsurf(X,Y,z2)k=find(abs(z1-z2)<0.5); x1=X(k) y1=Y(k)z3=x1.^2-2*y1.^2 hold onplot3(x1,y1,z3,'*')4、设 ⎥⎦⎤⎢⎣⎡++=)1(sin 35.0cos 2x x x y 把x=0~2π间分为101点,画出以x 为横坐标,y为纵坐标的曲线,要求有图形标注。
clc clearx=-2*pi:0.1: 2*pi;y=cos(x).*(0.5+sin(x)*3./(1+x.^2)); plot(x,y,'b*-'); title('绘图'); xlabel('x 坐标'); ylabel('y 坐标'); legend('原函数')gtext('y=cos(x)(0.5+3*sin(x)/(1+x^2))')5、求下列联立方程的解 81025695832475412743-=+-+-=-+-=++-=--+w z y x w z x w z y x w z y xclc cleara=[3,4,-7,-12;5,-7,4,2;1,0,8,-5;-6,5,-2,10];b=[4,-3,9,-8]; c=b/a; x=c(1,1) y=c(1,2) z=c(1,3) w=c(1,4)6. 假设一曲线数据点为x = 0:2:4*pi;y = sin(x).*exp(-x/5);试将x 的间距调成 0.1,采用不同插值方法进行插值,并通过子图的形式将不同插值结果和原始数据点绘制在同一图形窗口。
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([43],2,3)[i,j]=ind2sub([43],10)find(Y==100)sub2ind([43],3,2)B=Y(2:2:4,3:-2:1)或B=Y([24],[31])[m n]=size(Y)---------------------------------------------------------------------2、已知矩阵A=[10-1;241;-205],B=[0-10;213;112]求2A+B 、A 2-3B 、A*B 、B*A 、A.*B ,A/B 、A\B 解:命令为:A=[10-1;241;-205]B=[0-10;213;112]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,12.3;0,0,5.1,-2;0,-23,0,-7]b=a(:,[12])c=a([12],:)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:20s=n*s;sum=sum+s;end sum---------------------------------------------------------------------6、求a aa aaa aa a S n ++++=得值,其中a 是一个数字,由键盘输入,表达式中位数最多项a 的个数,也由键盘输入。
matlab第一次上机题目
Pathtool
图形化界面
重要
是你自学matlab必知的三大指令
Which
查询某个命令所在目录
Which abc查询abc.m所在目录,从而了解其工具箱的名称
Help
Help工具箱名
列出工具箱中的所有函数名及每个函数的简要解释,是诸如“某工具箱中有无某命令”等问题的的最专业的回答
Doc
最有力的帮助文档
Doc abc是查询abc.m这个matlab函数的详尽且带例子的官方的最权威的文档说明
离散化最重要的两大指令
a:b:c
以a为起始点bΒιβλιοθήκη 步长c为终点产生一个数列A:B:C若B为1可简写为A:C
linapace(a,b,n)
在[a,b]上分成n-1等份所产生的n个数
优点是很明了这个向量的元素个数为n
时间相关的几个命令
tic
秒表开始计时
toc
秒表停并显示秒数
pause
等待press any key to continue
pause(n)
等待n秒后继续执行下面的语句
用于演示
二、which函数很强大,那请了解其所在的工具箱及其他指令。至少自学5条指令或函数。
比如!dir !winmine
!calc !notepad !ipconfig
edit
Matlab编辑器,用来编写程序
例edit a则在当前目录下编辑一个a.m文件
添加第三方工具箱的必知命令
Path
不带参数运行则显示当前matlab的路径,即在此LIST中的那些目录中的程序,可以在matlab命令行直接执行,matlab据此能找到那些命令并执行
MATLAB上机练习题(一)
MATLAB 上机练习题(一)
1. 计算下式
7
2009/42008/41949222?+-⨯-⨯=
2. 试计算d
3461.1,30,5b d a b c
a b c +=-+===其中
要求只输出d 的值,其他变量的值不输出。
**************************************************************
3. 计算下式:
181(2)sin()cos()6,3
y
x x y π-+-==(,其中 0.1104
2log 805(3)2009
6(4)1,5;
2e
e x x x -⨯+-=其中
4. 完成以上题目后清除工作空间中的所有变量。
**************************************************************
5. 求下列方程的根:
(1)325x x -=
(2)32340x x x -+=
6. 根据课本任意找出4个矩阵在MA TLAB 中输入和输出。
附1:增加的一些常用函数pi:常数
round(x):四舍五入至最近整数
fix(x) :无论正负,舍去小数至最近整数min(x): 向量x的元素的最小值
max(x): 向量x的元素的最大值
diff(x): 向量x的相邻元素的差
length(x): 向量x的元素个数
sin(x):正弦函数
cos(x):余弦函数
tan(x):正切函数
asin(x):反正弦函数
acos(x):反余弦函数
atan(x):反正切函数。
Matlab第一次上机练习
第一次上机练习:目的:1.Matlab 的安装、卸载:(选作,自己有电脑的可以做) 2.建立自己的工作目录,再将自己的工作目录设置到matlab 的搜索路径下。
3.掌握MATLAB 各种表达式的书写规则 4.运行课堂上讲过的例子,熟悉矩阵、表达式的基本操作和运算。
作业:1. 求下列表达式的值,显示MATLAB 工作空间的使用情况并保存全部变量:(1))1034245.01(26-⨯+⨯=w(2),)tan(22ac b e abc c b a x ++-+++=ππ 其中a=3.5,b=5,c=9.8。
(3)])48333.0()41[(22απβππα---=y ,其中32.3=α,9.7-=β (4))1ln(2122t t e z t ++=,其中⎥⎦⎤⎢⎣⎡--=65.05312i t 2. 已知⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡--=7613870451A ,⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡--=023352138B ,求下列表达式的值: (1)B A 6+、I B A +-2(其中I 为单位阵);(2)A*B 、A.*B 、B*A 、B.*A ;(3)A/B 、B\A ;(4)[A, B]、[A([1 3],:);B^2]。
3. 已知⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡---=14.35454.9632053256545410778.01023A ,取出其前三行构成矩阵B ,其前两列构成矩阵C ,其右下角3×2子矩阵构成的矩阵D ,B 与C 的乘积构成矩阵E ,分别求E<D 、E&D 、E|D 、~E|~D 。
4. 产生均值为3,方差为1 的5阶正态分布的随机方阵。
5. 使用函数,实现方阵A 左旋 90、右旋 90的功能,⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=131074129631185210741A 。
Matlab第一次上机作业
输入: >>tic, n=9;[u,k]=xsj(n), toc,surf(u)
计算Байду номын сангаас果如下:
u=
0 0 0 0 0 0 0 0 0 0 0 0 0.0256 0.0413 0.0508 0.0560 0.0577 0.0560 0.0508 0.0413 0.0256 0 0 0.0413 0.0686 0.0859 0.0955 0.0986 0.0955 0.0859 0.0686 0.0413 0 0.0508 0.0859 0.1088 0.1216 0.1258 0.1216 0.1088 0.0859 0.0508 0 0 0.0560 0.0955 0.1216 0.1364 0.1412 0.1364 0.1216 0.0955 0.0560 0 0 0.0577 0.0986 0.1258 0.1412 0.1462 0.1412 0.1258 0.0986 0.0577 0 0 0.0560 0.0955 0.1216 0.1364 0.1412 0.1364 0.1216 0.0955 0.0560 0 0 0.0508 0.0859 0.1088 0.1216 0.1258 0.1216 0.1088 0.0859 0.0508 0 0 0.0413 0.0686 0.0859 0.0955 0.0986 0.0955 0.0859 0.0686 0.0413 0 0 0.0256 0.0413 0.0508 0.0560 0.0577 0.0560 0.0508 0.0413 0.0256 0 0 0 0 0 0 0 0 0 0 0 0 0
程序一: function [u,k]=xsbj(n) % xsbj:用块 Jacobi 迭代法求解线性方程组 A*u=f % u:方程组的解; k 迭代次数; n:非边界点数 % a:方程组系数矩阵 Aii 的下对角线元素;b:方程系数矩阵 Aii 的主对角线元素 % c:方程组系数矩阵 Aii 的上对角线元素;d:追赶法所求方程的右端向量 % e:允许误差界;er:迭代误差 f=2*1/(n+1)^(2)*ones(n+2,n+2); a=-1*ones(1,n);b=4*ones(1,n);c=-1*ones(1,n);u=zeros(n+2,n+2);e=0.000000001; for k=1:2000 er=0; ub=u; for j=2:n+1 d(1:n)=f(2:n+1,j)+ub(2:n+1,j-1)+ub(2:n+1,j+1); x=zg(a,b,c,d); u(2:n+1,j)=x'; er=er+norm(ub(:,j)-u(:,j),1); end if er/n^2<e,break; end end 程序二: function x=zg(a,b,c,d) % zg:用追赶法求解线性方程组 n=length(b); % LU 分解 u(1)=b(1); for k=2:n if u(k-1)==0,D=0,return; end l(k)=a(k)/u(k-1); u(k)=b(k)-l(k)*c(k-1); end % 追赶法求解之追过程,求解 Ly=d y(1)=d(1); for k=2:n y(k)=d(k)-l(k)*y(k-1); end % 追赶法求解之追过程,求解 Ux=y if u(n)==0,D=0,return;end x(n)=y(n)/u(n); for k=n-1:-1:1 x(k)=(y(k)-c(k)*x(k+1))/u(k); end 输入:
Matlab上机练习一答案
Matlab上机练习⼀答案Matlab 上机练习⼀班级学号姓名按要求完成题⽬,并写下指令和运⾏结果。
(不需要画图)1、求下列联⽴⽅程的解=+-+-=-+=++-=--+41025695842475412743w z y x w z x w z y x w z y x >> a=[3 4 -7 -12;5 -7 4 2;1 0 8 -5;-6 5 -2 10];>> b=[4;4;9;4];>> c=a\bc =5.22264.45701.47181.59942、设 ??++=)1(sin 35.0cos 2x x x y ,把x=0-2π间分为101点,画出以x 为横坐标,y 为纵坐标的曲线。
>> x=linspace(0,2*pi,101);>> y=cos(x)*(0.5+(1+x.^2)\3*sin(x));>> plot(x,y,'r')3、产⽣8×6阶的正态分布随机数矩阵R1, 求其各列的平均值、和、乘积。
并求该矩阵全体数的平均值。
(mean var )a=randn(8,6)mean(a)var(a)k=mean(a)k1=mean(k)i=ones(8,6)i1=i*k1i2=a-i1i3=i2.*i2g=mean(i3)g2=mean(g)或者u=reshape(a,1,48);p1=mean(u)p2=var(u)4、绘制)(222y x e x z +-=在定义域x=[-2,2],y=[-2,2]内的曲⾯。
(利⽤meshgrid )x=-2:2;y=x;[X,Y]= meshgrid(x,y);Z=X^2*exp(-(X^2+Y^2));mesh(X,Y,Z)5、求代数⽅程3x 5+4x 4+7x 3+2x 2+9x+12=0的所有根。
(利⽤roots 函数)p=[3 4 7 2 9 12];roots(p)6、把1开五次⽅,并求其全部五个根。
MATLAB上机练习一参考解答
上机练习一参考解答一、实验目的1、 熟悉Matlab 编程2、 体会数学上恒等,算法上不一定恒等二、实验内容1. Using the Taylor polynomial of degree nine and three-digit rounding arithmetic to find an approximationto 5-e by each of the following methods.(A) ∑=--≈905!)5(n n n e , (B) ∑=-≈=9055!5/11n nn e e An approximate value of 5-e correct to three digits is 31074.6-⨯. Which formula, (A) or (B), gives the most accuracy, and why?1) 算法基础利用x e 的Taylor 公式00!!n nk x n n x x e n n ∞===≈∑∑,x -∞<<+∞ (1)及001/1/1/!!n nk x x n n x x e e n n ∞-====≈∑∑,x -∞<<+∞, (2)其中k 是根据精度要求给定的一个参数。
在本题中将k 取为9, x 取为-5或5即可由公式(1)或(2)得到5-e 的近似计算方法(A )或(B )。
2) 程序下述程序用公式(A )及(B )分别在Matlab 许可精度下及限定在字长为3的算术运算情况下给出5-e的近似计算结果,其中results_1, results_2为用方法(A )在上述两种情况下的计算结果,err_1, err_2为相应的绝对误差;类似的,results_3, results_4为用方法(B )在上述两种情况下的计算结果,err_3, err_4为相应的绝对误差;具体程序如下:% Numerical Experiment 1.1 % by Xu Minghua, May 17, 2008 clc; %Initialize the data x=-5; k=9; m=3; %three-digit rounding arithmetic %------------------------------------ % Compute exp(x) by using Method (A) % with the computer precision results_1=1; power_x=1; for i=1:k factor_x=x/i; power_x=power_x*factor_x; results_1=results_1+power_x; end results_1 err_1=abs(exp(x)-results_1)%------------------------------------% Compute exp(x) by using Method (A) % with the 3-digits precisionresults_2=1;power_x=1;for i=1:kfactor_x=digit(x/i,m);power_x=digit(power_x*factor_x,m); results_2=digit(results_2+power_x,m); endresults_2err_2=abs(exp(x)-results_2)%------------------------------------% Compute exp(x) by using Method (B) % with the computer precisiont=-x;results_3=1;power_x=1;for i=1:kfactor_x=t/i;power_x=power_x*factor_x;results_3=results_3+power_x; endresults_3=1/results_3err_3=abs(exp(x)-results_3)%------------------------------------% Compute exp(x) by using Method (B) % with the 3-digits precisiont=-x; results_4=1;power_x=1;for i=1:kfactor_x=digit(t/i,m);power_x=digit(power_x*factor_x,m);results_4=digit(results_4+power_x,m); endresults_4=digit(1/results_4,m)err_4=abs(exp(x)-results_4)%------------------------------------上述主程序用到一个子程序digit.m, digit(x,m)的作用是将x四舍五入成m位数。
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学习教程 第一讲 上机练习
第1章安装及使用前的准备1 本章简介MATLAB是一种功能非常强大的科学计算软件。
在正式使用它之前应对它有一个整体的认识。
本章的基本内容主要包括:(1)MATLAB的简介。
(2)MATLAB的安装。
(3)MATLAB的桌面环境的介绍。
(4)MATLAB的帮助系统。
(5)MATLAB的搜索路径及其扩展的方法。
2 达到的目标(1)熟悉MATLAB的桌面环境极其简单的操作桌面平台包括6个窗口,分别是主窗口、命令窗口、历史窗口、当前目录窗口、发行说明书窗口和工作间管理窗口。
(2)熟悉MATLAB的帮助系统及其操作。
(3)掌握MATLAB的搜索路径及其扩展的方法。
3 具体内容3.1 打开和关闭MATLAB的桌面6个窗口。
3.2 帮助系统的使用(1)联机帮助系统用下面3种方法进入MATLAB联机帮助系统,(a)直接按下MATLAB主窗口中的“?”认按钮。
(b)选中主窗口[Help]下拉菜单的前4项中的任何一项。
(c)在命令窗回中执行helpwin或helpdesk或doc(2)命令窗口查询帮助(a)help系列help plot(b)lookforlookfor plot(c)分析(a)与(b)之间的区别(3)联机演示系统①用下面3种方法进入MATLAB联机演示系统的主演示页面,(a)单击MATLAB主窗口菜单的【Help】→【Demos】选项。
(b)在命令窗口输人demos。
(c)直接在帮助页面上选中Demos选项。
②演示(a)graphics→2D-plots。
(b)graphics→3D-plots。
3.3 MATLAB的搜索路径及其扩展的方法(1)查看搜索路径(a)用搜索路径对话框查看搜索路径(b)用path命令查看搜索路径(c)用genpath命令查看搜索路径(d)用editpath或pathtool命令查看搜索路径(2)扩展搜索路径首先在E:\路径下建立一个新的目录myfiles,然后将目录myfiles扩展为搜索路径。
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及应用》上机作业-2015.doc
《MA TLAB及应用》上机作业学院名称:(四号宋体)专业班级:(四号宋体)学生姓名:(四号宋体)学生学号:(四号宋体)年月《MATLAB及应用》上机作业要求及规范一、作业提交方式:word文档打印后提交。
二、作业要求:1.封面:按要求填写学院、班级、姓名、学号,不要改变封面原有字体及大小。
2.内容:只需解答过程(结果为图形输出的可加上图形输出结果),不需原题目;为便于批阅,题与题之间应空出一行;每题答案只需直接将调试正确后的M文件内容复制到word 中(不要更改字体及大小),如下所示:%作业1_1clcA=[1 2 3 4;2 3 5 7;1 3 5 7;3 2 3 9;1 8 9 4];B=[1+4*i 4 3 6 7 7;2 3 3 5 5 4+2*i;2 6+7*i 5 3 4 2;1 8 9 5 4 3];C=A*BD=C(4:5,4:6)三、大作业评分标准:1.提交的打印文档是否符合要求;2.作业题的解答过程是否完整和正确;3.答辩过程中阐述是否清楚,问题是否回答正确;4.作业应独立完成,严禁直接拷贝别人的电子文档,发现雷同者都以无成绩论处。
作业11、用MATLAB 可以识别的格式输入下面两个矩阵12342357135732391894A ⎛⎫⎪⎪ ⎪= ⎪⎪ ⎪⎝⎭,144367723355422675342189543i i B i +⎛⎫⎪+⎪= ⎪+ ⎪⎪⎝⎭再求出它们的乘积矩阵C ,并将C 矩阵的右下角23⨯子矩阵赋给D 矩阵。
赋值完成后,调用相应的命令查看MATLAB 工作空间的占有情况。
2、设矩阵16231351110897612414152⎛⎫⎪⎪ ⎪ ⎪⎝⎭,求A ,1A -,3A ,12A A -+,1'3A A --,并求矩阵A 的特征值和特征向量。
3、解下列矩阵方程:010100143100001201001010120X -⎛⎫⎛⎫⎛⎫⎪ ⎪ ⎪=- ⎪ ⎪ ⎪ ⎪ ⎪ ⎪-⎝⎭⎝⎭⎝⎭ 4、求多项式322()(53513)(453)(313)f x x x x x x x =++++++当3x =时的值,并求()f x 的导数。
(完整版)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上机题库及详细答案
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
第1次20150917-MATLAB-上机
实验一MATLAB编程基础之变量与矩阵一目的与要求1、会安装和激活MATLAB,并熟悉MATLAB操作界面及其运行环境,同时掌握各菜单的功能。
2、掌握MATLAB的运算符,会定义MATLAB变量,并进行复杂运算。
3、掌握MATLAB中矩阵的生成和操作,掌握矩阵运算,树立矩阵分析的编程观念。
二实验内容1、安装和激活MATLAB2、变量的定义和运算2.1设a=9,b=25,c=a+b,求c的值。
2.2设a=9,b=25,求plus(a,b)的值。
2.3设a=[1,3,5],b=[6,4,2],求a+b 的值。
2.4设a=3,b=4,求a*b的值。
2.5设a=[1 2 3],b=[4 5 6],求a*b 的值。
2.6设a=[1 2 3],b=[4 5 6]’,求a*b 的值。
2.7设a=[1 2 3],b=[4 5 6]’,求a.*b 的值。
2.8设a=9,b=3,求a\b的值。
2.9设a=[1 2 3],b=[3 6 9],求a/b 的值。
2.10设a=[1 2 3],b=[3 6 9],求a.\b 的值。
2.11设a=[1 0 1 0],b=[1 1 0 1],求a和b逻辑与的值。
2.12设a=[1 0 1 0],b=[1 1 0 1],求a和b逻辑或的值。
2.13设a=3+4i,b=5+6i,求c=a+b 等于多少。
2.14设a=3+4j,b=5+6j,求c=a*b 等于多少。
2.15求A=[3 4;5 6]+i*[1 2;7 8]等于多少。
2.16求A=[3 4;5 6]+[1 2;7 8]i等于多少。
2.17设A=[3 4;5 6]+i*[1 2;7 8],求A+10等于多少。
2.18设A=[3 4;5 6]+i*[1 2;7 8],求A+10i等于多少。
2.19设A=[2 3 4;1 5 6; 9 8 7], B=[3 2 1;6 5 4;7 8 3],分布求下列表达式的值:A+B, A-B, A*B, A.*B,A/B, A./B, A^2。
2015matlab第一次作业
第一次作业(2015.10.27)目的:熟悉MA TLAB 的基本应用要求:用editor 对程序进行编辑和调试,形成相应的脚本文件(*.m )。
1.1若已知某电路参数,输入电压,绘制其输出电压的波形如图1,已知:R1=3Ω,R3=6Ω,C=1uF ;us=18V ,is=3A 。
在零初始条件下,开关s 开路,当t=0时,开关S 闭合,求uc ,并画出波形;图1下列程序仅供参考(注:本例中的RC 电路非图1所示的电路):已知一阶RC 电路的端电压的表达式为 10s ~0 ,62==-t e u t ,试绘制电压波形u 。
t=0:0.1:10;u=6*exp(-2*t);plot(t,u);title('RC response');xlabel('t/s');ylabel('V/V')grid2. 已有两组测试数据不等的曲线,对其进行拟合和插值处理。
2.1给例程2.1加入注释,说明程序的用途和调试结果,尝试修改x ,y ,或polyfit 的不同设置。
熟悉fitting 工具例程2.1:clear;clc;close;x=0:0.1:2*pi;y = sin(x)+0.5*rand(size(x));p = polyfit(x,y,4)y1= polyval(p,x);plot(x,y, '+',x,y1, '-r')title('fitting')2.2 给例程2.2加入注释,说明程序的用途和调试结果,尝试修改xs,ys,或xi,或interp1的不同设置,熟悉插值的用法。
例程2.2:clear;clc;close;xs=0:0.2:2*pi;ys= sin(xs);xi=0: 0.1: 2*pi;y1=interp1(xs,ys,xi,'linear');plot(xs,ys,'+k')hold onplot(xi,y1,':r')legend('sampled point','linear','spline');title('INTERP')3. 试用solve求解常系数微分方程。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
练习1 基础练习一、矩阵及数组操作:1.利用基本矩阵产生3×3和15×8的单位矩阵、全1矩阵、全0矩阵、均匀分布随机矩阵([-1,1]之间)、正态分布矩阵(均值为1,方差为4)。
2.利用fix及rand函数生成[0,10]上的均匀分布的10×10的整数随机矩阵a,然后统计a中大于等于5的元素个数。
3.在给定的矩阵中删除含有整行内容全为0的行,删除整列内容全为0的列。
二、绘图:4.在同一图形窗口画出下列两条曲线图像:y1=2x+5;y2=x^2-3x+1,并且用legend标注。
5.画出下列函数的曲面及等高线:z=x^2+y^2+sin(xy).三、程序设计:6.编写程序计算(x在[-3,3],间隔0.01)7.有一列分数序列:求前15项的和。
8.用至少三种方法编写函数实现求任意整数n的阶乘。
9.将任意大于6的偶数m写成两个素数p1、p2的和(试着写出所有的m=p1+p2的可能形式)。
10.是否任意3的倍数m可以写成两个素数p1、p2、p3的和(试着写出所有的m=p1+p2+p3的可能形式)?四、数据处理与拟合初步:11.通过测量得到一组数据:分别采用y=c1+c2e^(-t)和y=d1+d2te^(-t)进行拟合,并画出拟合曲线进行对比。
12.计算下列定积分:13.微分方程组当t=0时,x1(0)=1,x2(0)=-0.5,求微分方程t在[0,25]上的解,并画出相空间轨道图像。
14.设通过测量得到时间t与变量y的数据:t=[0 0.3 0.8 1.1 1.6 2.3];y=[0.5 0.82 1.14 1.25 1.35 1.41];分别采用多项式:y=a0+a1t+a2t2和指数函数y=b0+b1e^t+b2te^t进行拟合,并计算均方误差、画出拟合效果图进行比较。
15.观察函数:y=e^x-1.5cos(2*pi*x)在区间[-1,1]上的函数图像,完成下列两题:(1)用函数fzero求解上述函数在[-1,1]的所有根,验证你的结果;(2)用函数fminbnd求解上述函数在[-1,1]上的极小、极大、最小和最大值,在函数图像上标出你求得的最小值点作出验证。
注:可以用help fzero命令查看fzero的调用格式,fzero典型的调用方法是:fzero(@myfun,x0) %返回函数myfun在x0附近的根;fminbnd典型的调用方法是:fminbnd(@myfun,x1,x2) %返回函数myfun在区间[x1,x2]上的最小值。
练习2 编程练习1. 题目:判断101-200之间有多少个素数,并输出所有素数。
编写以fun1为名的脚本文件。
程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。
==================================================== 2.题目:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。
例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。
编写以fun2为名的脚本文件。
程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。
==================================================== 3. 题目:将一个正整数分解质因数。
例如:输入90,打印出90=2*3*3*5。
编写以fun3为名的函数文件。
程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。
(2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k 的商,作为新的正整数你n,重复执行第一步。
(3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。
4. 题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
编写以fun4为名的函数文件。
========================================================== 5. 题目:一个数如果恰好等于它的因子之和,这个数就称为“完数”。
例如6=1+2+3.编程找出1000以内的所有完数。
编写以fun5为名的脚本文件。
=========================================================== 6. 题目:企业发放的奖金根据利润提成。
利润x低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润x,求应发放奖金总数?编写以fun6为名的函数文件。
7. 题目:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?编写以fun7为名的脚本文件。
程序分析:在10万以内判断,先将该数加上100后再开方,再将该数加上168后再开方,如果开方后的结果满足如下条件,即是结果。
=========================================================== 8. 题目:输入三个整数x,y,z,请把这三个数由小到大输出。
编写以fun15为名的函数文件。
程序分析:我们想办法把最小的数放到x上,先将x与y进行比较,如果x>y则将x与y的值进行交换,然后再用x与z进行比较,如果x>z则将x与z的值进行交换,这样能使x最小。
========================================================== 9. 题目:输出9*9口诀。
编写以fun9为名的脚本文件。
程序分析:分行与列考虑,共9行9列,i控制行,j控制列。
=========================================================== 10. 题目:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前n项之和。
输入n,输出和s。
编写以fun10为名的函数文件。
程序分析:请抓住分子与分母的变化规律。
========================================================== 11. 题目:编写以fun11为名的函数文件。
将所输入的5个字符,以相反顺序打印出来。
=========================================================== 12. 题目:对n个数进行排序。
即输入n个数,输出结果为由大到小的顺序。
编写以fun12为名的函数文件。
程序分析:可以利用选择法,即从后9个比较过程中,选择一个最小的与第一个元素交换,下次类推,即用第二个元素与后8个进行比较,并进行交换。
=========================================================== 13. 题目:编写一个函数,输入n为偶数时,求1/2+1/4+...+1/n,当输入n为奇数时,求1/1+1/3+...+1/n。
编写以fun13为名的函数文件。
14. 题目:输入数字a,按以下规则进行。
每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。
编写以fun14为名的函数文件。
==================================================== 15. 题目:求出1到m之间(含m)能被7或11整除的所有整数放在数组a中,通过n返回这些数的个数。
输入m,输出a,n。
编写以fun15为名的函数文件。
==================================================== 16. 题目:根据以下公式计算s,计算结果作为函数值返回;n通过形参传入。
S=1+1/(1+2)+1/(1+2+3)+……+1/(1+2+3+…+n)。
编写以fun16为名的函数文件。
===============================练习3 优化问题练习1、线性规划规划问题不等式约束默认是≤,所有不等式约束都要变成b(的形式。
)xf≤函数原型:X=linprog(f,A,b,Aeq,beq,LB,UB,X0,OPTIONS)f:目标函数的系数列向量A:不等式约束条件的系数矩阵b:不等式约束条件的Aeq:等式约束条件的系数矩阵beq:等式约束条件的lb:未知数的下界ub:未知数的上界x0:初值option:选项例:用matlab求解。
2、二次规划函数原型:X=quadprog(H,f,A,b,Aeq,beq,LB,UB,X0,OPTIONS) 将目标函数写成如下形式:例:用matlab求解。
3、0-1规划函数原型:X = bintprog(f,A,b,Aeq,beq,X0,OPTIONS)例:4、有约束的最值问题函数原型:X=fimincon(FUN,X0,A,B,Aeq,Beq,LB,UB,NONLCON,OPTIONS) fun :目标函数句柄nonlcon :非线性约束条件函数句柄 例1:写目标函数:function y=objectf2(x) y=-x(1)*x(2)*x(3);写脚本文件:clear all ,clc; x0=[10;10;10]; A=[1 2 3;-1 -2 -3]; b=[72;0];[x,fval]=fmincon(@objectf2,x0,A,b)例2:目标函数:212212)1()(100)(x x x x f -+-=约束条件: 12221≤+x xfunction y=objectf3(x)y=100*(x(2)-x(1)^2)^2+(1-x(1))^2;非线性约束函数:function [c,ceq]=unitdisk(x)c=x(1)^2+x(2)^2-1;%不等式约束,不等式右边缺省值是0,不等号为≤ ceq=[];%等式约束;无等式约束写成空矩阵脚本文件:clear all ,clc; x0=[0 0];[x,fval]=fmincon(@objectf3,[0 0],[],[],[],[],[],[],@unitdisk)练习4 聚类练习对附件1中给出的数据进行聚类,尽可能用多种方法。