Matlab数学实验(胡良剑)第二章课后习题答案
- 格式:pdf
- 大小:45.17 KB
- 文档页数:3


数学实验二
实验内容:学习matlab的m文件编写和函数的编写,体会matlab编程特点,掌握matlab的编程基本方法。
要求:
一.学习ppt教案的例题代码,能正确的输入、运行代码;
二.写出如下各段代码的作用,将以下各段循环执行的代码,改为不需要循环的矩阵和数组运行,并使用tic,toc测试不同代码的执行时间:
%程序1,文件名:ex2_2_1.m
tic
dx = pi/30;
nx = 1 + 2*pi/dx;
for i = 1:nx
x(i) = (i-1)*dx;
y(i) = sin(3*x(i));
end
toc
以上程序实现将[0,2*pi]间隔pi/30分成60等分,x和y分别为61个元素的数组,y为计算sin(3x)的值。
以上程序可以使用简单的matlab数组计算实现:
x2=0:pi/30:2*pi;
y2=sin(3*x2);
大家可以比较一下,x1和x2完全相同,y和y2也完全相同。
%程序2,文件名:ex2_2_2.m
tic
A=round(2+rand(50,60)*6); 生成一个在[2,8]上均匀分布的50*60随机数组
[X,Y]=size(A); 求出其大小;X=50,Y=60
minA=A(1,1); 设最小值为矩阵A的第1行1列的元素
for i=1:X
for j=1:Y
if A(i,j)
minA=A(i,j);
minX=i;
minY=j;
end
end
end 以上程序按行、列搜索矩阵A的最小值,若当前值A(I,j)小,则将最小值设为当前值;
[minA ,minX,minY] 输出矩阵最小值minA及矩阵最小值所在的行minX、列minY。
toc
上述程序可以使用find函数及min函数实现;
matlab课后习题答案(附图)
习题2.1
画出下列常见曲线的图形y (1)⽴⽅抛物线3x
命令:syms x y;ezplot('x.^(1/3)')
(2)⾼斯曲线y=e^(-X^2);
命令:clearsyms x y;ezplot('exp(-x*x)')
(3)笛卡尔曲线
命令:>> clear>> syms x y;
>> a=1;>> ezplot(x^3+y^3-3*a*x*y)
(4)蔓叶线
命令:>> clear>> syms x y;
>> a=1ezplot(y^2-(x^3)/(a-x))
(5)摆线:()()t
sin-
=
,
=
-
b
y
1
t
x cost a
命令:>> clear>> t=0:0.1:2*pi;
>> x=t-sin(t);>>y=2*(1-cos(t)); >> plot(x,y)
7螺旋线
命令:>> clear >> t=0:0.1:2*pi; >> x=cos(t); >> y=sin(t);>> z=t;>>plot3(x,y,z)
(8)阿基⽶德螺线
命令:clear>> theta=0:0.1:2*pi;
>> rho1=(theta);>> subplot(1,2,1),polar(theta,rho1)
(9) 对数螺线
命令:cleartheta=0:0.1:2*pi;
rho1=exp(theta);subplot(1,2,1),polar(theta,rho1)
(12)⼼形线
命令:>> clear >> theta=0:0.1:2*pi; >> rho1=1+cos(theta);>> subplot(1,2,1),polar(theta,rho1)
练习2.21. 求出下列极限值
(1)nn
n n
3
lim
3+∞
→
命令:>>syms n>>limit((n^3+3^n)^(1/n)) ans = 3
(2))121(lim n n n n ++-+∞
→
命令:>>syms n>>limit((n+2)^(1/2)-2*(n+1)^(1/2)+n^(1/2),n,inf) ans = 0
实验一 MATLAB运算基础
1、 先求下列表达式得值,然后显示MATLAB工作空间得使用情况并保存全部变量。
(1) 0122sin851ze
(2) 221ln(1)2zxx,其中2120.455ix
(3) 0.30.330.3sin(0.3)ln,3.0,2.9,,2.9,3.022aaeeazaaL
(4) 2242011122123ttzttttt,其中t=0:0、5:2、5
解:
M文件:
z1=2*sin(85*pi/180)/(1+exp(2))
x=[2 1+2*i;-、45 5];
z2=1/2*log(x+sqrt(1+x^2))
a=-3、0:0、1:3、0;
z3=(exp(0、3、*a)-exp(-0、3、*a))、/2、*sin(a+0、3)+log((0、3+a)、/2)
t=0:0、5:2、5;
z4=(t>=0&t<1)、*(t、^2)+(t>=1&t<2)、*(t、^2-1)+(t>=2&t<3) 、*(t、^2-2*t+1) 4、 完成下列操作:
(1) 求[100,999]之间能被21整除得数得个数。
(2) 建立一个字符串向量,删除其中得大写字母。
解:(1) 结果:
m=100:999;
n=find(mod(m,21)==0);
length(n)
ans =
43
(2)、 建立一个字符串向量 例如:
ch='ABC123d4e56Fg9';则要求结果就是:
实验二 MATLAB矩阵分析与处理
1、 设有分块矩阵33322322ERAOS,其中E、R、O、S分别为单位矩阵、随机矩阵、零矩阵与对角阵,试通过数值计算验证22ERRSAOS。 ch='ABC123d4e56Fg9';
k=find(ch>='A'&ch<='Z');
matlab第二版习题答案
Matlab是一种强大的数学软件工具,被广泛应用于科学计算、数据分析和工程设计等领域。对于学习和掌握Matlab的人来说,习题是不可或缺的一部分。本文将为大家提供Matlab第二版习题的答案,帮助读者更好地理解和应用Matlab。
第一章:基本操作
1.1 Matlab的启动和退出
启动Matlab的方法有多种,可以通过桌面图标、命令行或者启动器来打开Matlab。退出Matlab可以直接关闭窗口或者使用命令"exit"。
1.2 Matlab的基本语法
Matlab的基本语法与其他编程语言相似,包括变量的定义、运算符的使用、条件语句和循环语句等。例如,定义一个变量x并赋值为5可以使用语句"x = 5;"。
1.3 Matlab的数据类型
Matlab支持多种数据类型,包括数值型、字符型和逻辑型等。数值型可以是整数或者浮点数,字符型用单引号或双引号表示,逻辑型只有两个值true和false。
第二章:向量和矩阵操作
2.1 向量的定义和运算
向量是一维数组,可以通过一对方括号来定义。Matlab提供了丰富的向量运算函数,如加法、减法、乘法和除法等。
2.2 矩阵的定义和运算
矩阵是二维数组,可以通过方括号和分号来定义。Matlab提供了矩阵的加法、减法、乘法、转置和求逆等运算。 2.3 矩阵的索引和切片
可以使用索引和切片来访问矩阵中的元素。索引从1开始,可以使用冒号表示全部元素。切片可以用来选择矩阵的一部分。
第三章:函数和脚本文件
3.1 函数的定义和调用
函数是一段独立的代码块,可以接受输入参数并返回输出结果。在Matlab中,函数的定义以关键字"function"开头,调用函数使用函数名和参数。
3.2 脚本文件的编写和运行
脚本文件是一系列Matlab语句的集合,可以保存为.m文件。通过运行脚本文件,可以一次性执行多个语句,提高效率。
第四章:图形绘制和数据可视化