MATLAB程序设计教程 第3版 第五章实验指导、思考练习答案(个人版)

注:本系列文章仅仅用于交流学习,杜绝作业抄袭

第一章:MATLAB程序设计教程 第3版 第一章实验指导、思考练习答案(个人版)-CSDN博客

第二章:MATLAB程序设计教程 第3版 第二章实验指导、思考练习答案(个人版)-CSDN博客

第三章:MATLAB程序设计教程 第3版 第三章实验指导、思考练习答案(个人版)-CSDN博客

第四章:MATLAB程序设计教程 第3版 第四章实验指导、思考练习答案(个人版)-CSDN博客

第五章:MATLAB程序设计教程 第3版 第五章实验指导、思考练习答案(个人版)-CSDN博客

第六章:MATLAB程序设计教程 第3版 第六章实验指导、思考练习答案(个人版)-CSDN博客

实验指导:

img

A=randn(10,5)

B=mean(A) %均值

C=std(A) %标准差

 

mx=max(max(A)) %最大元素

mn=min(min(A)) %最小元素

 

sm=sum(A,2) %每行元素和

sz=sum(sum(A)) %所有元素和

 

col_up=sort(A,1,'ascend')

row_down=sort(A,2,'descend')

img

img

三次样条差值计算

h_sin=0:15:90;

t_sin=[0,0.2588,0.5000,0.7071,0.8660,0.9659,1.0000]';

h_tan=0:15:75;

t_tan=[0,0.2679,0.5774,1.0000,1.7320,3.7320]';

 

X_sin=0:1:90; %计算0-90°内整数点的正弦值

Y_sin=interp1(h_sin,t_sin,X_sin,"spline") %用三次样条差值计算

 

X_tan=0:1:75; %计算0-75°内整数点的正切值

Y_tan=interp1(h_tan,t_tan,X_tan,"spline") %用三次样条差值计算


img

五次多项式拟合方法计算相同函数值

h_sin=0:15:90;

t_sin=[0,0.2588,0.5000,0.7071,0.8660,0.9659,1.0000];

p_sin = polyfit(h_sin,t_sin,5); %计算5次拟合多项式的系数

X_sin=0:1:90; %计算0-90°内整数点的正弦值

Y_sin=polyval(p_sin,X_sin)

 

h_tan=0:15:75;

t_tan=[0,0.2679,0.5774,1.0000,1.7320,3.7320]';

p_tan = polyfit(h_tan,t_tan,5); %计算5次拟合多项式的系数

X_tan=0:1:75; %计算0-75°内整数点的正切值

Y_tan=polyval(p_tan,X_tan)

img

结果相近

三次多项式拟合方法计算1~100间整数平方根

N=[1,4,9,16,25,36,49,64,81,100];

N_genghao=[1,2,3,4,5,6,7,8,9,10];

p = polyfit(N,N_genghao,3); %计算5次拟合多项式的系数

X=0:1:100;

Y=polyval(p,X)

img

img

p = [2,-3,0,5,13];

q = [0,0,1,1,0];

 

ans1 = polyder(p)

ans2 = polyder(q)

ans3 = polyder(p,q)

[up,down] = polyder(p,q);

up

down

img

img

img

p1 = [2,2,4,0,5];

p2 = [0,0,0,1,2];

p3 = [0,0,1,1,3];

 

%第一问

ans1 = [0,0,0,0,2,2,4,0,5] + conv(p2,p3)

 

%第二问

ans2 = roots(ans1)

 

%第三问

A = [-1 1.2 -1.4;0.75 2 3.5;0 5 2.5];

ans3 = polyval(ans1,A)

%第四问

ans4 = polyvalm(ans1,A)

img

思考练习:

img

B

img

15 27 39 ;4 5 6

img

一维插值 interp1

img

polyfit,polyval

img

2x^2-1

img

x=roots([a,b,c]) polyval([a,b,c],x)

img

10

img

sum 函数:

sum 函数用于计算数组中元素的总和。

它接受一个数组作为输入,并返回数组中所有元素的总和。可以指定对某一维度求和。

cumsum 函数:

cumsum 函数用于计算数组元素的累积和。

它也接受一个数组作为输入,并返回一个数组,其中每个元素是原始数组从开头开始到当前位置的累积和。

img

数据插值(Interpolation)

数据插值是通过已知的数据点集合来估计新的数据点的值。它的目的是在给定的数据点之间寻找某种函数关系,以便在新的位置上近似估计数据点的值。

曲线拟合(Curve Fitting)

曲线拟合是通过拟合一个函数模型来近似描述一组数据点的整体趋势。它的目的是找到一个数学函数或曲线,以最好地描述数据点的分布。

共同点:

都是处理数据的方法,都用于近似估计数据点之间的值。

不同点:

数据插值更侧重于在已知数据点之间准确估算值,而曲线拟合更专注于找到一个函数模型来描述整体数据的趋势。

插值:数据插值主要关注在给定数据点间通过某种函数形式来准确估算新数据点的值。它试图通过插值函数在已知数据点之间进行精确地推断。

拟合:曲线拟合的目标是找到一个可以概括整个数据集趋势的函数模型,而不一定通过严格穿过每个已知数据点的方式。因此,它可能会忽略某些局部的细节,而专注于总体数据的大致趋势。

img

使用系数向量表示,如x4+2x3+3x^2+4x+5,可以表示为[1,2,3,4,5]

img

a=rand(30000,1)

n=0

mean_a=mean(a)

std_a=std(a)

 

[max_num,weizhi1]=max(a)

[min_num,weizhi2]=min(a)

 

for ii=1:30000

if a(ii,1)>0.5

n=n+1;

end

end

percent_a=n/30000

img

img

A=rand(5,100);

P=100*A;

[Y,U1]=max(P,[],2); % 求每门功课的最高分、序号 

[X,U2]=min(P,[],2); % 求每门功课的最低分、序号 

Y

U1

X

U2

 

Z1=mean(P,2) % 求每门功课的平均值 

Z2=std(P,1,2) % 求每门功课的标准方差 

B1=cumsum(P); % 求五门功课的总成绩 

B=B1(5,:); 

[YZ,UZ1]=max(B,[],2) % 求总成绩的最高分 

[XZ,UZ2]=min(B,[],2) % 求总成绩的最低分 

zcj=-sort(-B,2)

img

img

x=linspace(1,101,50);

y=log10(x);

P=polyfit(x,y,5)

y1=polyval(P,x);

plot(x,y,'rp',x,y1,'k:')

img

img

  • 4
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
MATLAB程序设计与应用第三第11章课后习题涉及了很多不同的主题,其答案也需要根据具体的问题而定。总体来说,这些习题可以分为几个大的类别,如向量和矩阵运算、程序循环和条件语句、文件I/O操作等等。 其中,向量和矩阵运算是MATLAB的基本操作之一。通过自定义函数或使用内置函数,可以实现向量和矩阵的各种运算操作,如向量加法、矢量积、矩阵转置等等。常见的习题包括求两个矩阵的点积、计算向量的范数以及矩阵相乘等问题。解决这些问题需要熟练掌握MATLAB操作符的使用和相关函数的调用。 程序循环和条件语句也是MATLAB中常用的操作。通过编写for循环或while循环,可以实现对向量和矩阵的各种操作,如求向量或矩阵的和、计算向量或矩阵的平均值等等。此外,使用if语句进行条件判断,可以对某些运算进行分支控制,进一步增强程序的可扩展性。在解决这些习题时,需要通过逻辑判断和循环嵌套来实现相关的运算。 文件I/O操作是MATLAB中常用的另一种操作。通过读写文件,可以将程序的输出保存到指定的文件中,或者从指定的文件中读取数据。常见的习题包括读取并解析文件中的数据、将程序的运行结果保存到文件中等等。这些习题需要熟悉MATLAB的文件I/O函数,如fopen、fprintf、fgetl等等,在实现时也需要注意文件的读写权限和格式要求等问题。 综合来说,MATLAB程序设计与应用第三第11章课后习题的难度和深度较高,需要具备一定的数学和编程基础,才能较好地完成相关的问题。同时,这些习题也对于深入理解MATLAB编程的基本原理和技能具有积极的促进作用,对于提高编程水平具有一定的意义。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Jay 17

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值