2024年3月21日发(作者:湖北孝感高一数学试卷)
3sinx
ycosx
0.5
(1x
2
)
,把x=0~2π间分为101点,画出以x为横坐标,y1、 设
为纵坐标的曲线。
第一题的matlab源程序:
① 考虑cos(x)为一个整体,然后乘以中括号里面的全部
x=0:2*pi/100:2*pi; %x的步长以及范围从0到2*pi
y=cos(x).*(0.5+3*sin(x)./(1+x.^2)); %y的表达式
plot(x,y) %画出图形
图如下:
②考虑对整体求解cos,先求x乘以括号中的部分
x=0:2*pi/100:2*pi; %x的步长以及范围从0到2*pi
y=cos(x.*(0.5+3*sin(x)./(1+x.^2))); %y的表达式
plot(x,y) %画出图形
图如下:
2、产生8×6阶的正态分布随机数矩阵R1, 求其各列的平均值和均方差。并求该矩阵
全体数的平均值和均方差。
第二题的matlab源程序如下:
R1=randn(8,6) %产生正态分布随机矩阵
R1 =
1.0933 -0.7697 1.5442 -0.1924 1.4193 0.2157
1.1093 0.3714 0.0859 0.8886 0.2916 -1.1658
-0.8637 -0.2256 -1.4916 -0.7648 0.1978 -1.1480
0.0774 1.1174 -0.7423 -1.4023 1.5877 0.1049
-1.2141 -1.0891 -1.0616 -1.4224 -0.8045 0.7223
-1.1135 0.0326 2.3505 0.4882 0.6966 2.5855
-0.0068 0.5525 -0.6156 -0.1774 0.8351 -0.6669
1.5326 1.1006 0.7481 -0.1961 -0.2437 0.1873
aver=(sum(R1(1:end,1:end)))./8 %产生各行的平均值
aver =
0.0768 0.1363 0.1022 -0.3473 0.4975 0.1044
a=std(R1(1:end,1:end)) %产生各行的均方差也就是标准差
a =
1.0819 0.8093 1.3456 0.8233 0.8079 1.2150
aver1=(sum(R1(:)))./48 %全体数的平均值
aver1 =
0.0950
b=std(R1(:)) %全体数的均方差即标准差
b =
1.0103
3、设x=rcost+3t,y=rsint+3,分别令r=2,3,4,画出参数t=0~10区间生成的x~y
曲线。
第三题的matlab源程序如下:
t=0:0.1:10; %t的取值以0.1的步长从0到10
r=2; %r=2
x=r*cos(t)+3*t; %x的表达式
y=r*sin(t)+3; %y的表达式
plot(x,y,\'r-\') %用红色线绘制曲线
hold on %保持窗口figure窗口不关闭
t=0:0.1:10; %t的取值以0.1的步长从0到10
r=3; %r=3
x=r*cos(t)+3*t; %x的表达式
y=r*sin(t)+3;
plot(x,y,\'b-.\')
hold on
t=0:0.1:10;
r=4;
x=r*cos(t)+3*t;
y=r*sin(t)+3;
plot(x,y,\'m-\')
%y的表达式
%用蓝色点划线绘制曲线
%保持窗口figure窗口不关闭
%t的取值以0.1的步长从0到10
%r=4
%x的表达式
%y的表达式
%用红紫色线绘制曲线
图形如下:
4、设f(x)=x
5
- 4x
4
+3x
2
- 2x+ 6
(1) 在x=[-2,8]之间取100个点,画出曲线,看它有几个过零点。(提示:用polyval
函数)
(2) 用roots函数求此多项式的根。
(1)matalab的源程序如下:(利用的是在同一图中展现两条线,通过放大看交点)
x=-2:0.1:8; %x的取值范围
y=0; %y=0
plot(x,y,\'m\') %用红紫色表示绘制出的y=0的图像
hold on %保持figure窗口不关闭
x=-2:0.1:8; %x的取值范围
p=[1,-4,0,3,-2,6]; %p表示函数表达式的系数矩阵
y=polyval(p,x),plot(x,y) %y=polyval表示求多项式x处的y值,绘制图像
图如下:
将图形进行放大(如下),发现在实数域上有3个零点。
(2)matlab源程序如下:
roots(p) %求函数的根
ans =
3.7999
-1.2607
1.3479
0.0564 + 0.9623i
0.0564 - 0.9623i
可见实数解有三个,复数解有两个。
5、建立一个字符串向量,然后对该向量做如下处理:
(1) 取第1~5个字符组成的子字符串。
(2) 将字符串倒过来重新排列。
(3) 统计字符串中小写字母的个数。
整个题的源程序如下所示:
ch=\'abcj245DFGK\'; %建立一个字符串
subch=ch(1:5) %取1~5个字符
subch =
abcj2
revch=ch(end:-1:1) %倒序排列
revch =
KGFD542jcba
a=find(ch>=\'a\'&ch<=\'z\'); %找到小写字母的位置
length(a) %输出小写字母的个数
ans =
4
6、设x=sint, y=sin(nt+a),
(1) 若a=1,令n =1,2,3,4,在四个子图中分别画出其曲线。
(2) 若n=2,取a=0,π/3,π/2,及π,在四个子图中分别画出其曲线。
(1)matlab源程序如下;
t=-pi:0.1:pi; %t的取值范围
a=1;n=1; %a=1,n=1
x=sin(t); %x的表达式
y=sin(n*t+a); %y的表达式
subplot(221),plot(x,y) %在子图第一张,画出图像
hold on %保持figure不关闭
t=-pi:0.1:pi; %t的取值范围
a=1;n=2; %a=1,n=2
x=sin(t);
y=sin(n*t+a);
subplot(222),plot(x,y)
hold on
t=-pi:0.1:pi;
a=1;n=3;
x=sin(t);
y=sin(n*t+a);
subplot(223),plot(x,y)
hold on
%x的表达式
%y的表达式
%在子图的第二张画出图像
%保持figure不关闭
%t的取值范围
%a=1,n=3
%x的表达式
%y的表达式
%在子图的第三张,画出图像
%保持figure不关闭
t=-pi:0.1:pi; %t的取值范围
a=1;n=4; %a=1,n=4
x=sin(t); %x的表达式
y=sin(n*t+a); %y的表达式
subplot(224),plot(x,y) %在子图的第四张上,绘制图像
图形如下所示:
(2)matlab源程序如下所示:
t=-pi:0.1:pi; %t的取值
a=0;n=2; %a与n的取值
x=sin(t); %x的表达式
y=sin(n*t+a);
subplot(221),plot(x,y)
hold on
t=-pi:0.1:pi;
a=pi./3;n=2;
x=sin(t);
y=sin(n*t+a);
subplot(222),plot(x,y)
hold on
t=-pi:0.1:pi;
%y的表达式
%在子图的第一张绘制图像
%保持figure窗口不关闭
%t的取值
%a与n的取值
%x的表达式
%y的表达式
%在子图的第二张绘制图像
%保持figure窗口不关闭
%t的取值
a=pi./2;n=2; %a与n的取值
x=sin(t); %x的表达式
y=sin(n*t+a); %y的表达式
subplot(223),plot(x,y)
hold on
t=-pi:0.1:pi;
a=pi;n=2;
x=sin(t);
y=sin(n*t+a);
subplot(224),plot(x,y)
%在子图的第三张绘制图像
%保持figure窗口不关闭
%t的取值范围
%a与n的取值
%x的表达式
%y的表达式
%在四个字图的第四张画出图像
图形如下所示:
2(x
7、绘制
zxe
2
y
2
)
在定义域x=[-2,2],y=[-2,2]内的曲面。
Matlab源程序如下:
[x,y]=meshgrid([-2:0.1:2]); %此处描述x,y的范围
z=x.^2.*exp(-(x.^2+y.^2)); %z的表达式
surf(x,y,z) %绘制曲面
图形如下所示:
经过旋转之后的图形:
(x
2
4x3)/23x1
y
x
2
11x1
(x
2
4x3)/21x3
8、,画出在
3,3
上的曲线
所建立的M文件如下所示:
function y=A(x); %文件名为A
if x>=-3&x<-1 %在-3《x<-1的条件下
y=(-x.^2-4*x-3)./2; %y所对应上述条件下的表达式
elseif x>=-1&x<1 %-1《x<1
y=-x.^2+1; %y所对应的上述条件下的表达式
else x>=1&x<=3 %1《x《3
y=(-x.^2+4*x-3)./2; %y所对应的上述条件下的表达式
end %结束
在command windows 中输入:fplot(\'A\',[-3,3]) %绘制在-3到3上的曲线
所得图形如下所示:
9、(1)设,求
syms x %定义变量x
y=x.*exp(2.*x); %y的表达式
s=diff(y,x,20) %对y求x的20阶导数
s =
10485760*exp(2*x) + 1048576*x*exp(2*x)
(2)设,求
syms x %定义变量x
y=sin(x).^4+cos(x).^4; %y的表达式
s=diff(y,x,10) %对y求x的10阶导数
s =
- 262144*cos(x)^4 + 1572864*cos(x)^2*sin(x)^2 - 262144*sin(x)^4
(3)设,求
syms x y %定义自变量x,y
z=y.^4.*(sin(x).^4)+x.^4.*(cos(y).^4); %z的表达式
s=diff(z,x) %对z求x的偏导数
s =
4*x^3*cos(y)^4 + 4*y^4*cos(x)*sin(x)^3
1
(x
2
1)(x
2
x)
dx
(4)
syms x %定义自变量x
i=int(1/((x.^2+1).*(x.^2+x))); %不定积分表达式
pretty(i) %求解不定积分
/ i log(x + 1) / i
log(x) + log(x + i) | - - - 1/4 | - ---------- + log(x - i) | - - 1/4 |
4 / 2 4 /
(5)
(9x
2
)
3
x
6
dx
syms x %定义自变量 x
i=int(sqrt((9-x.^2).^3)./(x.^6)); %不定积分表达式
pretty(i) %求解不定积分
/ 9 2 3 1/2
| -- - 1 | (- (x - 9) )
| 2 |
x /
- ---------------------------
3
45 x
2
dx
(6)
1
xx
3
syms x
i=int(1./(x+x.^3),2,1)
i =
log(10^(1/2)/4)
%定义自变量x
%定积分表达式
%定积分的解
n2
n
2
n1
(7)求级数的和:
syms n %定义自变量n
f=(n+2)./(2.^n); %级数的表达式
symsum(f,n,n-1,inf) %对级数求和
ans =
2*2^(1 - n)*(n + 2)
(8)利用函数int计算二重不定积分
syms x y %定义自变量x,y
i=int(int((x+y).*exp(-x.*y))); %二重不定积分表达式
pretty(i) %求解二重不定积分
2
y + x y + 2
------------
3
y exp(x y)
10、编制m文件,输入n(正整数),显示所有小于n的质数。
编制的m文件如下所示:
function xin10; %定义文件名为xin10
clc,clear %清屏,清内存
n=input(\'输入一个正整数:\') %输入数据
for i=1:1:n %i的变化范围
if isprime(i) %判断是否为质数
disp(i) %输出质数
end %结束if
end %结束for
end %结束function
11、从键盘输入若干个数,当输入0时结束输入,求这些数的平均值以及平方和。
编制的m文件如下所示:
假设输入数据结束时输入0作为结束,不考虑输入的数据中出现会结束输入的现象,则
程序如下:
function lin11; %定义文件名为lin11
clc,clear %清屏,清内存
m=input(\'以1*n矩阵的形式输入数据并以0结尾:\') %输入数据
k=size(m) %m的大小
for i=1:k(2) %i的变化范围
if m(i)==0 %m=0时的每一个k值
k(2)=i-1; %另k(2)=i-1
end %结束if循环
end %结束for循环
M=m(1:k(2)) %将若干个数输出
B=sum(M)./k(2) %对若干个数求和再求平均值
C=sum(M.^2) %输出m的值,进行求值
end %结束function
12、利用rand产生10个随机数,利用for循环对其进行排序(从大到小)。
编制的m文件如下所示:
function lin12; %定义文件名为lin12
clc,clear %清屏,清内存
a=rand(10,1) %产生10个随机数,这个地方可加可不加‘;
for i=1:length(a) %i的取值范围
for j=1:length(a)-1 %j的取值范围
更多推荐
输入,数据,输出,结束,绘制,进行
发布评论