目录

实验目的

实验内容


原创代码,仅供参考,不要直接CV呀 ~_~

MATLAB数值运算(六)-LMLPHP

实验目的

实验内容

% (1) 求每门课的最高分、最低分和平均分
Grade = [90 89 91 82 75; 88 82 85 89 95; 79 89 93 82 76; 91 89 87 79 85; 90 79 78 91 82; 86 85 84 89 88; 89 91 79 90 94; 75 85 95 90 87; 85 78 75 90 89; 98 89 87 86 80;];
Max  = max(Grade, [], 1) %每一科成绩最高分
Min  = min(Grade, [], 1) %每一科成绩最低分
Mean = mean(Grade, 1)    %每科成绩的平均分
% (2) 求学生总分的最高分、最低分和平均分
Student_sum  = sum(Grade,2);
Student_Max  = max(Student_sum)    %学生总分的最高分
Student_Min  = min(Student_sum)    %学生总分的最低分
Student_mean = mean(Student_sum)   %学生总分的平均分
% (3) 绘制带有平均分数线的各科成记分布曲线
X = 1:10; %10个学生
plot(X, Grade(:,1), 'r'); hold on; %数学成绩 红色 r   Grade(:,1)是第一列
plot(X, Grade(:,2), 'g'); hold on; %语文成绩 绿色 g
plot(X, Grade(:,3), 'b'); hold on; %外语成绩 蓝色 b   Grade(:,3)是第三列
plot(X, Grade(:,4), 'c'); hold on; %物理成绩 青色 c
plot(X, Grade(:,5), 'k'); hold on; %化学成绩 黑色 k   
plot(X, 0*X + Mean(1), 'r'); hold on;  %数学平均分 红色 r
plot(X, 0*X + Mean(2), 'g'); hold on;  %语文平均分 绿色 g
plot(X, 0*X + Mean(3), 'b'); hold on;  %外语平均分 蓝色 b
plot(X, 0*X + Mean(4), 'c'); hold on;  %物理平均分 青色 c
plot(X, 0*X + Mean(5), 'k'); hold off; %化学平均分 黑色 k
legend('数学','语文','外语','物理','化学'); %加图例

MATLAB数值运算(六)-LMLPHP

2-2)、

MATLAB数值运算(六)-LMLPHP

a = [0 1 0 1]; b = [1 3]; c = [1 1]; d = [1 0 2 1];
t = conv(a, b)   %先a*b 赋值给 temp
t = conv(t, c)   %用temp变量与c相乘
[Q, r] = deconv(t, d)    

2-3)

MATLAB数值运算(六)-LMLPHP

1)求P(x)=P1(x)+P2(x)P3(x)

2)求P(x)的根

3)当x取矩阵A的每一元素时,求P(x)的值,其中

p1 = [1 2 4 0 5]; p2 = [1 2]; p3 = [1 2 3];
t = conv(p2, p3);    %p2*p3
px = p1 + [0, t]     %多项式加减运算,低次多项式系数前补0
root = roots(px)        %求根
A = [-1 1.2 -1.4; 0.75 2 3.5; 0 5 2.5];
y = polyval(px, A)  %多项式求值,将A带入

2-4)、某观测站测得某日6:00时至18:00时之间每隔2小时的室内外温度(℃),用3次样条插值分别求得该日室内外6:30至17:30时之间每隔2小时各点的近似温度(℃),并绘制出室内外温度曲线图(左上角添加图例和轴标签)。

T = 6 : 2 : 18;  %时间
x1 = [18 20 22 25 30 28 24];
x2 = [15 19 24 28 34 32 30];
t1 = 6.5 : 2 : 17.5;    %该日室内外6:30至17:30时之间每隔2小时各点的近似温度(℃)
y1 = interp1(T, x1, t1, 'spline');   %3次样条插值法 spline
plot(T, x1, t1,  y1); hold on;
y2 = interp1(T, x2, t1, 'spline');   
plot(T, x2, t1,  y2);
legend('室内外温度');        %添加图例
% legend('室内外温度',2);    %左上角添加图例
xlabel('时间'); ylabel('温度'); %x y 轴标签

2-5)、求函数在点的数值导数。

clear all;
x = [pi/6, pi/4, pi/3, pi/2];
y1 = sin(x).^3 + cos(x).^3  %点乘 按(数组)元素求幂
h = 0.0000001;
y2 = sin(x+h).^3 + cos(x+h).^3
Y = (y2-y1)/h    %导数

2-6)、求函数在(0,1)内的最小值。

x = 0 : 0.0001 : 1;  % x取值
fun = x.*3 + cos(x) + x.*log(x) ./ exp(x);
Min = min(fun)  %求最小值

2-7)、求解定积分

注意:新版本的被积表达式要加@(x)

x = 0:0.01:log(2);
px = @(x) exp(x).*(1+exp(x).^2);    %被积分表达式
I1 = quad(px, 0, log(2))    %输出结果

lMATLAB数值运算(六)-LMLPHP

04-20 17:41