目录
一、
二、
三、
四、
五、
一、
利用MATLAB提供的rand函数生成30 000个符合均匀分布的随机数,然后检验随机数的性质。
(1)均值和标准差。
---------------------------------------示例代码---------------------------------------------
A=rand(1,30000);
b=mean(A)
std(A,0,2)
---------------------------------------运行结果---------------------------------------------
(2)最大元素和最小元素。
---------------------------------------示例代码---------------------------------------------
A=rand(1,30000);
max(A)
min(A)
---------------------------------------运行结果---------------------------------------------
(3)大于0.5的随机数个数占总数的百分比。
---------------------------------------示例代码---------------------------------------------
random_Number = 30000;
number_List = rand(random_Number,1);
n = 0;
for i=1:1:random_Number
if(number_List(i)>0.5)
n = n+1;
end
end
percentage = (n/random_Number)*100
fprintf('大于0.5的随机数占有的比例为%.2f%%',percentage);
---------------------------------------运行结果---------------------------------------------
二、
将100个学生5门功课的成绩存入矩阵P中,进行如下处理。
(1)分别求每门课的最高分、最低分及相应学生序号。
(2)分别求每门课的平均分和标准差。
---------------------------------------示例代码---------------------------------------------
t=45+50*rand(100,5);
P=fix(t);
[x,l]=max(P)
[y,k]=min(P)
mu=mean(P) %每门课的平均值行向量
sig = std(P)
---------------------------------------运行结果---------------------------------------------
(3)5门课总分的最高分、最低分及相应学生序号。
(4)将5门课总分按从大到小顺序存入 score中,相应学生序号存入num。
提示:上机调试时,为避免输入学生成绩的麻烦,可用取值范围在[45,95]之间的随机矩阵来表示学生成绩。
---------------------------------------示例代码---------------------------------------------
P=45+50*round(rand(100,5));
S=sum(P,2);
Ma=max(S);
Mi=min(S);
kma=find(S==Ma);
kmi=find(S==Mi);
for i = 1:length(kma)
fprintf('最高分:%d \t学生序号:%d\n',Ma,kma(i))
end
for i = 1:length(kmi)
fprintf('最低分:%d \t学生序号:%d\n',Mi,kmi(i))
end
[score,num]=sort(S,'descend');
for i = 1:length(score)
fprintf('总分:%d \t学生序号:%d\n',score(i),num(i))
end
---------------------------------------运行结果---------------------------------------------
三、
有3个多项式P1(x)=x4+2x3+4x2+5,P2(x)=x+2,P3(x)=x2+2x+3,试进行下列操作。
(1)求P(x)=P1(x)+P2(x)P3(x)。
---------------------------------------示例代码---------------------------------------------
p1=[1,2,4,0,5];
p2=[1,2];
p3=[1,2,3];
p=p1+[0,conv(p2,p3)]
---------------------------------------运行结果---------------------------------------------
(2)求P(x)的根。
---------------------------------------示例代码---------------------------------------------
A=roots(p)
---------------------------------------运行结果---------------------------------------------
(3)当x取矩阵A的每一元素时,求P(x)的值。其中
(4)当以矩阵A为自变量时,求P(x)的值。其中A的值与(3)相同。
---------------------------------------示例代码---------------------------------------------
p1=[1,2,4,0,5];
p2=[1,2];
p3=[1,2,3];
p4=[0,conv(p2,p3)];
p = p1+p4 %求p(x)=p1(x)+p2(x)x=roots(p)%求p(x)的根
x = roots(p)
A = [-1 1.2 -1.4;0.75 2 3.5;0 5 2.5];
y1 = polyval (p,A) %x 取矩阵A 的每一元素时的 p(x)值
y2 = polyvalm(p,A) %当以矩阵A为自变量时
---------------------------------------运行结果---------------------------------------------
四、
某气象观测站测得某日6:00至 18:00之间每隔2h的室内外温度(℃)如实验表1所示。
试用三次样条插值分别求出该日室内外6:30至17:30之间每隔2h各点的近似温度(℃)。
---------------------------------------示例代码---------------------------------------------
h=6:2:18;
x=6.5:2:17.5;
t1=[18,20,22,25,30,28,24];
t2=[15,19,24,28,34,32,30];
T1=spline(h,t1,x)
T2=spline(h,t2,x)
---------------------------------------运行结果---------------------------------------------
五、
已知lgx 在[1,101]区间10个整数采样点的函数值如实验表2所示。
实验表2 lg(x)在10个采样点的函数值
x |
1 |
11 |
21 |
31 |
41 |
51 |
61 |
71 |
81 |
91 |
101 |
lgx |
0 |
1.0414 |
1.3222 |
1.4914 |
1.6128 |
1.7076 |
1.7854 |
1.8513 |
1.9085 |
1.9590 |
2.0043 |
试求1gx的5次拟合多项式p(x),并绘制出lgx和p(x)在[1,101]区间的函数曲线。
---------------------------------------示例代码---------------------------------------------
x=1:1:101;
y1=log10(x);
p=polyfit(x,y1,5)
y2=polyval(p,x);
plot(x,y1,':o',x,y2,'-*')
---------------------------------------运行结果---------------------------------------------
如对你有帮助,留下小小一赞,岂不是美哉 文章来源:https://www.toymoban.com/news/detail-478640.html
如有侵权,请尽快与我联系!!!文章来源地址https://www.toymoban.com/news/detail-478640.html
到了这里,关于8、MATLAB程序设计与应用刘卫国(第三版)课后实验八:数据分析与多项式计算的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!