资源描述:
《matlab简单编程21个题目及 答案》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、1、设,把x=0~2π间分为101点,画出以x为横坐标,y为纵坐标的曲线。第一题的matlab源程序:①考虑cos(x)为一个整体,然后乘以中括号里面的全部x=0:2*pi/100:2*pi;%x的步长以及范围从0到2*piy=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*piy=cos(x.*(0.5+3*sin(x)./(1+x.^2)))
2、;%y的表达式plot(x,y)%画出图形图如下:2、产生8×6阶的正态分布随机数矩阵R1,求其各列的平均值和均方差。并求该矩阵全体数的平均值和均方差。第二题的matlab源程序如下:R1=randn(8,6)%产生正态分布随机矩阵R1=1.0933-0.76971.5442-0.19241.41930.21571.10930.37140.08590.88860.2916-1.1658-0.8637-0.2256-1.4916-0.76480.1978-1.14800.07741.1174-0.7423-1.40231
3、.58770.1049-1.2141-1.0891-1.0616-1.4224-0.80450.7223-1.11350.03262.35050.48820.69662.5855-0.00680.5525-0.6156-0.17740.8351-0.66691.53261.10060.7481-0.1961-0.24370.1873aver=(sum(R1(1:end,1:end)))./8%产生各行的平均值aver=0.07680.13630.1022-0.34730.49750.1044a=std(R1(1:end
4、,1:end))%产生各行的均方差也就是标准差a=1.08190.80931.34560.82330.80791.2150aver1=(sum(R1(:)))./48%全体数的平均值aver1=0.0950b=std(R1(:))%全体数的均方差即标准差b=1.01033、设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到10r=2;%r=2x=r*cos(t)+3*t;%x的表
5、达式y=r*sin(t)+3;%y的表达式plot(x,y,'r-')%用红色线绘制曲线holdon%保持窗口figure窗口不关闭t=0:0.1:10;%t的取值以0.1的步长从0到10r=3;%r=3x=r*cos(t)+3*t;%x的表达式y=r*sin(t)+3;%y的表达式plot(x,y,'b-.')%用蓝色点划线绘制曲线holdon%保持窗口figure窗口不关闭t=0:0.1:10;%t的取值以0.1的步长从0到10r=4;%r=4x=r*cos(t)+3*t;%x的表达式y=r*sin(t)+3;%y
6、的表达式plot(x,y,'m-')%用红紫色线绘制曲线图形如下:4、设f(x)=x5-4x4+3x2-2x+6(1)在x=[-2,8]之间取100个点,画出曲线,看它有几个过零点。(提示:用polyval函数)(2)用roots函数求此多项式的根。(1)matalab的源程序如下:(利用的是在同一图中展现两条线,通过放大看交点)x=-2:0.1:8;%x的取值范围y=0;%y=0plot(x,y,'m')%用红紫色表示绘制出的y=0的图像holdon%保持figure窗口不关闭x=-2:0.1:8;%x的取值范围p=
7、[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.26071.34790.0564+0.9623i0.0564-0.9623i可见实数解有三个,复数解有两个。5、建立一个字符串向量,然后对该向量做如下处理:(1)取第1~5个字符组成的子字符串。(2)将字符串倒过来重新排列
8、。(3)统计字符串中小写字母的个数。整个题的源程序如下所示:ch='abcj245DFGK';%建立一个字符串subch=ch(1:5)%取1~5个字符subch=abcj2revch=ch(end:-1:1)%倒序排列revch=KGFD542jcbaa=find(ch>='a'&ch<='z');%找到小写字母的位置lengt