作业

MATLAB作业⼀、必答题:1. MATLAB系统由那些部分组成?答:MATLAB系统主要由开发环境、MATLAB语⾔、MATLAB数学函数库、图形功能和应⽤程序接⼝五个部分组成。

2. 如何启动M⽂件编辑/调试器?答:在操作界⾯上选择“建⽴新⽂件”或“打开⽂件”操作时,M⽂件编辑/调试器将被启动。

在命令窗⼝中键⼊“edit”命令也可以启动M⽂件编辑/调试器。

3. 存储在⼯作空间中的数组能编辑吗?如何操作?答:存储在⼯作空间的数组可以通过数组编辑器进⾏编辑:在⼯作空间浏览器中双击要编辑的数组名打开数组编辑器,再选中要修改的数据单元,输⼊修改内容即可。

4. 在MATLAB中有⼏种获得帮助的途径?答:在MATLAB中有多种获得帮助的途径:(1)帮助浏览器:选择view菜单中的Help菜单项或选择Help菜单中的MATLAB Help菜单项可以打开帮助浏览器;(2)help命令:在命令窗⼝键⼊“help” 命令可以列出帮助主题,键⼊“help 函数名”可以得到指定函数的在线帮助信息;(3)lookfor命令:在命令窗⼝键⼊“lookfor 关键词”可以搜索出⼀系列与给定关键词相关的命令和函数(4)模糊查询:输⼊命令的前⼏个字母,然后按Tab键,就可以列出所有以这⼏个字母开始的命令和函数。

5. 有⼏种建⽴矩阵的⽅法?各有什么优点?答:(1)以直接列出元素的形式输⼊;(2)通过语句和函数产⽣;(3).在m⽂件中创建矩阵;(4)从外部的数据⽂件中装⼊。

6. 命令⽂件与函数⽂件的主要区别是什么?答:命令⽂件: M⽂件中最简单的⼀种,不需输出输⼊参数,⽤M ⽂件可以控制⼯作空间的所有数据。

运⾏过程中产⽣的变量都是全局变量。

运⾏⼀个命令⽂件等价于从命令窗⼝中顺序运⾏⽂件⾥的命令,程序不需要预先定义,只要依次将命令编辑在命令⽂件中即可。

函数⽂件:如果M⽂件的第⼀个可执⾏⾏以function开始,便是函数⽂件,每⼀个函数⽂件定义⼀个函数。

“MATLAB”练习题要求:抄题、写出操作命令、运行结果,并根据要求,贴上运行图。

1、求230x e x -=的所有根.(先画图后求解)(要求贴图)>> solve('exp(x)—3*x^2',0)ans =—2*lambertw (—1/6*3^(1/2))-2*lambertw(—1,—1/6*3^(1/2))—2*lambertw (1/6*3^(1/2))3、求解下列各题:1)30sin lim x x x x ->->> sym x ;〉> limit((x-sin (x))/x^3)ans =1/62) (10)cos ,x y e x y =求>> sym x;>> diff (exp(x )*cos(x),10)ans =(-32)*exp(x)*sin (x)3)21/20(17x e dx ⎰精确到位有效数字)〉〉 sym x;〉〉 vpa((int(exp(x^2),x,0,1/2)),17)ans =0.544987104183622224)42254x dx x+⎰〉> sym x ;>〉 int (x^4/(25+x^2),x)ans =125*atan (x/5) - 25*x + x^3/35)求由参数方程arctan x y t⎧⎪=⎨=⎪⎩dy dx 与二阶导数22d y dx 。

〉> sym t;>> x=log(sqrt (1+t^2));y=atan(t);〉> diff (y ,t )/diff (x ,t)ans =1/t6)设函数y =f (x )由方程xy +e y = e 所确定,求y ′(x ).>> syms x y ;f=x *y+exp(y )—exp (1);〉> -diff(f,x )/diff (f,y)ans =-y/(x + exp (y))7)0sin 2x e xdx +∞-⎰>〉 syms x ;>〉 y=exp(-x)*sin(2*x );〉> int(y ,0,inf )ans =2/58) 08x =展开(最高次幂为)〉> syms xf=sqrt(1+x);taylor(f,0,9)ans =— (429*x^8)/32768 + (33*x^7)/2048 — (21*x^6)/1024 +(7*x^5)/256 - (5*x^4)/128 + x^3/16 - x^2/8 + x/2 + 19) 1sin (3)(2)x y e y =求〉> syms x y ;>〉 y=exp(sin (1/x));>〉 dy=subs (diff(y,3),x ,2)dy =—0.582610)求变上限函数2x x ⎰对变量x 的导数.>> syms a t ;>〉 diff (int(sqrt(a+t),t,x ,x^2))Warning: Explicit integral could not be found 。

实验一MATLAB运算基础1、用逻辑表达式求下列分段函数的值。

t=0:0.5:2.5y=t.^2.*((t>=0)&(t<1))+(t.^2-1).*(( t>=1)&(t<2))+(t.^2-2*t+1).*((t>=2 )&(t<3))2、求[100,999]之间能被21整除的数的个数。

p=rem([100:999],21)==0;sum(p)3、建立一个字符串向量,删除其中的大写字母。

ch='KdDdfKaWdsfCI',k=find(ch>=' A'&ch<='Z'),ch(k)=[]4、输入矩阵,并找出A中大于或等于5的元素。

A=[1 2 3;4 5 6;7 8 9],[m,n]=find(A>=5),for j=1:length(m)x(j)=A(m(j),n(j))xend5、求矩阵的行列式值、逆和特征根。

a11=input('a11='),a12=input('a12 ='),a21=input('a21='),a22=input('a22 ='),A=[a11,a12;a21,a22],DA=det(A),IA=inv(A),EA=eig(A) 6、不采用循环的形式求出和式的数值解。

sum(2.^[0:63])实验二1、1行100列的Fibonacc数组a,a(1)=a(2)=1,a(i)=a(i-1)+a(i-2),用for循环指令来寻求该数组中第一个大于10000的元素,并指出其位置i。

n=100;a=ones(1,n);for i=3:na(i)=a(i-1)+a(i-2);if a(i)>10000a(i),break;end;end,i2、编写M脚本文件,定义下列分段函数,并分别求出当()、()和()时的函数值。

MATLAB 平时作业第一章 习题16. 以下两种说法对吗?(1)“MATLAB 的数值表达精度与其指令窗中的数据显示精度相同。

”答:此种说法错误。

MATLAB 提供了控制数据显示格式的控制指format ,该指令并不改变MATLAB 内存中变量的精度,只是改变其显示精度。

(2)“MATLAB 指令窗中显示的数值有效位数不超过7位。

”答:此种说法错误。

当变量小于1000时,使用format 或format short 后,或者默认情况下,变量的显示精度最多不超过7位,但显示精度不等于变量的精度。

7. 想要在MATLAB 中产生二维数组⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=987654321S ,下面哪些指令能实现目的? S=[1,2,3;4,5,6;7,8;9]S=[1 2 3;4 5 6;7 8 9]S=[1,2,3;4,5,6;7,8,9] %整个指令在中文状态下输入 答:操作如图:第1、2条指令可以实现,第3条指令不可实现。

第三章 习题31.在MATLAB 中,先运行指令A=magic(3), B=[1,2,1;3,4,3;5,6,7], C=reshape(1:6,3,2)生成阵列33⨯A ,23⨯B ,23⨯C ,然后根据运行结果回答以下问题:运行结果如图:(1)计算A*B, B*A ,这两个乘积相同吗? 计算结果如图:答:不同。

(2)计算A\B, B/A ,左除、右除结果相同吗?计算结果如图:答:不同。

(3)计算B( : ,[1,2]).*C和C.*B( : , [1,2]),这两个乘积相同吗?计算结果如图答:相同。

(4)计算A\A和A.\A,这两个计算结果相同吗?计算结果如图:答:相同。

(5)计算A\eye(3)和inv(A),这两个计算结果相同吗?计算结果如图:答:不同。

(提示:根据对计算结果的目测回答问题)2.在MATLAB中,先运行A=[1, 2; 3, 4],b=0.5,C=[4, 2; 1, 0.5], 然后根据计算结果回答以下问题:创建数据步骤略(1)计算A^b和A.^b, 这两个计算结果相同吗?答:不同。

现代计算方法Matlab 作业答案1.绘出函数f(x)=sin x x ,在[0,4]上的图形解:在M 文件输入:x=0:pi/100:4;y=x.*sin(x);plot(y)运行2. 求3x +2x +5 = 0的根解:在命令窗口输入:>> solve('x^3+2*x+5=0')ans =((108^(1/2)*707^(1/2))/108 - 5/2)^(1/3) - 2/(3*((108^(1/2)*707^(1/2))/108 - 5/2)^(1/3))1/(3*((108^(1/2)*707^(1/2))/108 - 5/2)^(1/3)) - ((108^(1/2)*707^(1/2))/108 - 5/2)^(1/3)/2 -(3^(1/2)*i*(2/(3*((108^(1/2)*707^(1/2))/108 - 5/2)^(1/3)) + ((108^(1/2)*707^(1/2))/108 -5/2)^(1/3)))/21/(3*((108^(1/2)*707^(1/2))/108 - 5/2)^(1/3)) - ((108^(1/2)*707^(1/2))/108 - 5/2)^(1/3)/2 +(3^(1/2)*i*(2/(3*((108^(1/2)*707^(1/2))/108 - 5/2)^(1/3)) + ((108^(1/2)*707^(1/2))/108 -5/2)^(1/3)))/23.321436min x x x z ++=120..321=++x x x t s301≥x5002≤≤x203≥x解:运用单纯形法计算此题,首先把约束条件化成标准形式:,,,,,205030120654321635241321≥=-=+=-=++x x x x x x x x x x x x x x x(1)在M 文件输入SimpleMthd 函数:function [x,minf] = SimpleMthd(A,c,b,baseVector)sz = size(A);nVia = sz(2);n = sz(1);xx = 1:nVia;nobase = zeros(1,1);m = 1;for i=1:nViaif (isempty(find(baseVector == xx(i),1)))nobase(m) = i;m = m + 1;else;endendbCon = 1;M = 0;while bConnB = A(:,nobase);ncb = c(nobase);B = A(:,baseVector);cb = c(baseVector);xb = inv(B)*b;f = cb*xb;w = cb*inv(B);for i=1:length(nobase)sigma(i) = w*nB(:,i)-ncb(i);end[maxs,ind] = max(sigma);if maxs <= 0minf = cb*xb;vr = find(c~=0 ,1,'last');for l=1:vrele = find(baseVector == l,1);if (isempty(ele))x(l) = 0;elsex(l)=xb(ele);endendbCon = 0;elsey = inv(B)*A(:,nobase(ind));if y <= 0disp('不存在最优解!');x = NaN;minf = NaN;return;elseminb = inf;chagB = 0;for j=1:length(y)if y(j)>0bz = xb(j)/y(j);if bz<minbminb = bz;chagB = j;endendendtmp = baseVector(chagB);baseVector(chagB) = nobase(ind);nobase(ind) = tmp;endendM = M + 1;if (M == 1000000)disp('找不到最优解!');x = NaN;minf = NaN;return;endend(2)在命令窗口输入:clear allA=[1 1 1 0 0 0;1 0 0 -1 0 0;0 1 0 0 1 0;0 0 1 0 0 -1];c=[6 3 4 0 0 0];b=[120;30;50;20];[xm,mf]=SimpleMthd(A,c,b,[3 4 5 6])xm =0 50 70mf =4304.计算下面函数在区间(0,1)内的最小值。

matlab作业第一次作业[实验目的]1。

了解并熟悉Matlab,并在此基础上学习基本操作2.掌握Matlab 的基本操作和常用命令3。

P11:例1_4写一个函数,求方程AX 2+Bx+C = 0的解2.P16: 1。

计算表达式e 12+23 3log25/tan 21.3。

写m命令文件找到?k +?1/k的值是k?1k?15010 4.编写函数文件并计算?k!并找出k=20时表达式的值k?1n3。

例2_2使用函数生成矩阵A =100020003,B = 00200000000104。

例2_3 (1)生成三阶魔方矩阵A;(2)生成一个四阶单位矩阵B 5。

示例2_10数组操作示例6。

例2_11计算sin(k?/2)(k=?2,?1,0)值7。

P27:2。

矩阵A=456,B=556,计算A*B,A.*B,并比较差值789123468323。

已知矩阵A=5,212,B=,计算A>B,A==B,A2)12,【实验步骤和结果】例1 _ 4函数y =洁(A,B,c)如果(绝对值(A)>洁(1,2,2) 9有复数根: >洁(A,B,c)(exp(1)12)+(23 3)* log2(5)/tan(21) ans =21.4426 e+0053。

函数s = J(m)s = 0;k = 1;而k v=[1 2 3] A=diag(v,0) B=diag(v,1)v =1 2 33A =1 0 02 0 03 B =100 000 200 000 300 000A =魔法(3)A =8 1 6 3 5 7 4 9 2> > B =眼睛(4)B =1 0 0 0 0 0 0 0 0 0 0 1例2-11。

m a t l a b综合大作业(附详细答案)-标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII《MATLAB语言及应用》期末大作业报告1.数组的创建和访问(20分,每小题2分):1)利用randn函数生成均值为1,方差为4的5*5矩阵A;实验程序:A=1+sqrt(4)*randn(5)实验结果:A =0.1349 3.3818 0.6266 1.2279 1.5888-2.3312 3.3783 2.4516 3.1335 -1.67241.2507 0.9247 -0.1766 1.11862.42861.5754 1.6546 5.3664 0.8087 4.2471-1.2929 1.3493 0.7272 -0.6647 -0.38362)将矩阵A按列拉长得到矩阵B;实验程序:B=A(:)实验结果:B =0.1349-2.33121.25071.5754-1.29293.38183.37830.92471.65461.34930.62662.4516-0.17665.36640.72721.22793.13351.11860.8087-0.66471.5888-1.67242.42864.2471-0.38363)提取矩阵A的第2行、第3行、第2列和第4列元素组成2*2的矩阵C;实验程序:C=[A(2,2),A(2,4);A(3,2),A(3,4)]实验结果:C =3.3783 3.13350.9247 1.11864)寻找矩阵A中大于0的元素;]实验程序:G=A(find(A>0))实验结果:G =0.13491.25071.57543.38183.37830.92471.65461.34930.62662.45165.36640.72721.22793.13351.11860.80871.58882.42864.24715)求矩阵A的转置矩阵D;实验程序:D=A'实验结果:D =0.1349 -2.3312 1.2507 1.5754 -1.29293.3818 3.3783 0.9247 1.6546 1.34930.6266 2.4516 -0.1766 5.3664 0.72721.2279 3.1335 1.1186 0.8087 -0.66471.5888 -1.67242.4286 4.2471 -0.38366)对矩阵A进行上下对称交换后进行左右对称交换得到矩阵E;实验程序:E=flipud(fliplr(A))实验结果:E =-0.3836 -0.6647 0.7272 1.3493 -1.29294.2471 0.80875.3664 1.6546 1.57542.4286 1.1186 -0.1766 0.9247 1.2507-1.6724 3.1335 2.4516 3.3783 -2.33121.5888 1.2279 0.6266 3.3818 0.13497)删除矩阵A的第2列和第4列得到矩阵F;实验程序:F=A;F(:,[2,4])=[]实验结果:F =0.1349 0.6266 1.5888-2.3312 2.4516 -1.67241.2507 -0.17662.42861.5754 5.3664 4.2471-1.2929 0.7272 -0.38368)求矩阵A的特征值和特征向量;实验程序:[Av,Ad]=eig(A)实验结果:特征向量Av =-0.4777 0.1090 + 0.3829i 0.1090 - 0.3829i -0.7900 -0.2579 -0.5651 -0.5944 -0.5944 -0.3439 -0.1272-0.2862 0.2779 + 0.0196i 0.2779 - 0.0196i -0.0612 -0.5682 -0.6087 0.5042 - 0.2283i 0.5042 + 0.2283i 0.0343 0.6786 0.0080 -0.1028 + 0.3059i -0.1028 - 0.3059i 0.5026 0.3660 特征值Ad =6.0481 0 0 0 00 -0.2877 + 3.4850i 0 0 00 0 -0.2877 - 3.4850i 0 00 0 0 0.5915 00 0 0 0 -2.30249)求矩阵A的每一列的和值;实验程序:lieSUM=sum(A)实验结果:lieSUM =-0.6632 10.6888 8.9951 5.6240 6.208710)求矩阵A的每一列的平均值;实验程序:average=mean(A)实验结果:average =-0.1326 2.1378 1.7990 1.1248 1.24172.符号计算(10分,每小题5分):1)求方程组20,0++=++=关于,y z的解;uy vz w y z w实验程序:S = solve('u*y^2 + v*z+w=0', 'y+z+w=0','y,z');y= S. y, z=S. z实验结果:y =[ -1/2/u*(-2*u*w-v+(4*u*w*v+v^2-4*u*w)^(1/2))-w] [ -1/2/u*(-2*u*w-v-(4*u*w*v+v^2-4*u*w)^(1/2))-w] z =[ 1/2/u*(-2*u*w-v+(4*u*w*v+v^2-4*u*w)^(1/2))] [ 1/2/u*(-2*u*w-v-(4*u*w*v+v^2-4*u*w)^(1/2))]2)利用dsolve 求解偏微分方程,dx dyy x dt dt==-的解; 实验程序:[x,y]=dsolve('Dx=y','Dy=-x')实验结果:x =-C1*cos(t)+C2*sin(t)y = C1*sin(t)+C2*cos(t)3.数据和函数的可视化(20分,每小题5分):1)二维图形绘制:绘制方程2222125x y a a +=-表示的一组椭圆,其中0.5:0.5:4.5a =;实验程序:t=0:0.01*pi:2*pi; for a=0.5:0.5:4.5; x=a*cos(t); y=sqrt(25-a^2)*sin(t); plot(x,y) hold on end实验结果:2) 利用plotyy 指令在同一张图上绘制sin y x =和10x y =在[0,4]x ∈上的曲线;实验程序:x=0:0.1:4; y1=sin(x); y2=10.^x;[ax,h1,h2]=plotyy(x,y1,x,y2); set(h1,'LineStyle','.','color','r'); set(h2,'LineStyle','-','color','g'); legend([h1,h2],{'y=sinx';'y=10^x'});实验结果:3)用曲面图表示函数22z x y =+;实验程序:x=-3:0.1:3; y=-3:0.1:3; [X,Y]=meshgrid(x,y); Z=X.^2+Y.^2; surf(X,Y,Z)实验结果:4)用stem 函数绘制对函数cos 4y t π=的采样序列;实验程序:t=-8:0.1:8;y=cos(pi.*t/4); stem(y)实验结果:4. 设采样频率为Fs = 1000 Hz ,已知原始信号为)150π2sin(2)80π2sin(t t x ⨯+⨯=,由于某一原因,原始信号被白噪声污染,实际获得的信号为))((ˆt size randn x x+=,要求设计出一个FIR 滤波器恢复出原始信号。

上机操作(4)内容: M 文件编程一、结合教材第6章内容以及实验指导书内容掌握一般M 脚本和函数文件的编写。

二、 完成以下习题,并按照要求将作业提交。

(1) 将调试通过的程序序列复制到作业题目下方,并将文件保存为word 文档,文件名为:姓名+班级学号末两位数 (如:王丹妮9301)(2) 作业提交方式:A 现场网上提交(鼠标右点击电脑右下方的人头或燕子标记,按照菜单操作即可。

(30分)⎪⎪⎩⎪⎪⎨⎧-≤+≤+<->+=+-------15457.0117575.015457.0),(215.175.375.0216215.175.375.02112122212212122x x e x x e x x e x x p x x x x x x x x %参考答案a=2;b=2;x=-a:0.1:a;y=-b:0.1:b;for i=1:length(y)for j=1:length(x)if x(j)+y(i)>1z(i,j)=0.5457*exp(-0.75*y(i)^2-3.75*x(j)^2-1.5*x(j));elseif x(j)+y(i)<=-1z(i,j)=0.5457*exp(-0.75*y(i)^2-3.75*x(j)^2+1.5*x(j));else z(i,j)=0.7575*exp(-y(i)^2-6.*x(j)^2);endendendaxis([-a,a,-b,b,min(min(z)),max(max(z))]);surf(x,y,z);xlabel('x1');ylabel('x2');zlabel('p(x1,x2)');2.编写一个M 函数文件,该文件应有函数声明行、帮助说明和程序编写人姓名。

《Matlab编程训练》作业专业学生姓名班级学号指导教师完成日期实训一 MATLAB 语言介绍和数值计算1.先求下列表达式的值,然后显示MATLAB 工作空间的使用情况并保存变量。

122sin 851z e =+.2. 已知 1234413134787,2033657327A B --⎡⎤⎡⎤⎢⎥⎢⎥==⎢⎥⎢⎥⎢⎥⎢⎥-⎣⎦⎣⎦,求下列表达式的值:(1) A+6*B 和A-B+I (其中I 为单位矩阵) A+6*B:A-B+I:(2)A*B和A.*BA*B程序:A=[12 34 -4;34 7 87;3 65 7]B=[1 3 -1;2 0 3;3 -2 7]c=A*B结果:A.*B程序:A=[12 34 -4;34 7 87;3 65 7]B=[1 3 -1;2 0 3;3 -2 7]D=A.*B结果:(3)A^3和A.^3A^3程序:A=[12 34 -4;34 7 87;3 65 7]E=A^3结果:A.^3程序:A=[12 34 -4;34 7 87;3 65 7]C=A.^3(4)A/B及B\AA/B程序:A=[12 34 -4;34 7 87;3 65 7]B=[1 3 -1;2 0 3;3 -2 7]C=A/B结果:B\A程序:A=[12 34 -4;34 7 87;3 65 7]B=[1 3 -1;2 0 3;3 -2 7]D=B\A结果:(5)将矩阵C=B\A的右下角2*2子矩阵赋给D, 并(3)保存变量(mat文件)程序:A=[12 34 -4;34 7 87;3 65 7];B=[1 3 -1;2 0 3;3 -2 7];C=B*inv(A);D=C(2:3,2:3)结果:3. 求得矩阵⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=34157864653434533145A 的每行最大元素所在的位置?(至少两种方法) 第一种:A=[5 14 33;45 43 3;65 4 6;78 15 34][RowMax Order]=max(A')结果:第二种:A=[5 14 33;45 43 3;65 4 6;78 15 34][Max_num,index]=max(A,[],2)结果:实训二 MATLAB 编程基础1. 求[25,1258]之间能被15整除的数的个数。

第一次作业1.选择和填空(1)下列变量名中的__A__是合法变量A:char_1,i,j B:x*y,a.1 C:x\y,a1234 D:end,1bcx(2)已知x是一个向量,计算其正弦函数的运算为__C_A:SIN(X) B:SIN(x) C:sin(x) D:sinx(3)已知x为一个向量,计算其In(x)的运算为__B__A:In(x) B:Log(x) C:Ln(x) D:Log10(x)(4)当a=2.4,使其取整函数得出3,则该函数名称为__C__A:fix B:round C:ceil D:floor(5)已知a=0:4,b=1:5,下面运算出错的为____D_A:a+b B:a./b C:a’*b D;a*b(6)已知a=4,b=’4’,下面说法错误的为___C___A:变量a比b占有的储存空间大B:变量a和b可以进行加减乘除运算C:变量a和b的数据类型相同D:变量b可以用eval命令来执行2.复数变量a=2+3i,b=3-4i,计算a+b,a-b,c=a*b,a/b,并计算变量c的实部,虚部,模和相角解: a=2+3i; b=3-4i b = 3.0000 - 4.0000ia+b ans =5.0000 - 1.0000ia-b ans = -1.0000 + 7.0000ic=a/b c =-0.2400 + 0.6800ireal(c) ans = -0.2400imag(c) ans = 0.6800abs(c) ans = 0.7211angle(c) ans = 1.9101c=a*b c =18.0000 + 1.0000ireal(c) ans = 18imag(c) ans =1abs(c) ans =18.0278angle(c) ans = 0.05553.用“from:step:to”方式和linspace函数分别得到从0到4pi,步长为0.4pi,的变量x1和从0到4pi分成10点的变量c2解: x1=0:0.4*pi:4*pi x1 = 0 1.2566 2.5133 3.7699 5.0265 6.2832 7.5398 8.7965 10.0531 11.3097 12.5664linspace(0,4*pi,10) ans = 0 1.3963 2.7925 4.1888 5.5851 6.9813 8.3776 9.7738 11.1701 12.56644.输入矩阵A=[1 2 3;4 5 6;7 8 9]使用全下标方式抽取元素“3”使用単下标抽取元素“8”取出后2行子举阵快,使用逻辑矩阵方式取出[1 3;7 9]解: A=[1 2 3;4 5 6;7 8 9]; A(2:3,1:3)ans = 4 5 67 8 9A(6) ans = 8A(1,3) ans =3b=logical([1 0 1]) b = 1 0 1c=logical([1 0 1]) c = 1 0 1a(b,d) ans = 1 37 95.输入A为3*3的魔方阵,B为3*3的单位阵,由小矩阵组成3*6的大矩阵C和6*3的大矩阵D将D矩阵的最后一行构成小矩阵E 解:a=magic(3) a =8 1 63 5 74 9 2b=eye(3) b =1 0 00 1 00 0 1c=[a b] c =8 1 6 1 0 03 5 7 0 1 04 9 2 0 0 1d=[a;b] d =8 1 63 5 74 9 21 0 00 1 00 0 16.将矩阵A=[1 2 3;4 5 6;7 8 9]用flipud,fliplr,rot90,diag,triu,tril,函数进行操作解:flipud(A) ans =7 8 94 5 61 2 3fliplr(A) ans =3 2 16 5 49 8 7rot90(A) ans =3 6 92 5 81 4 7diag(A) ans =159triu(A) ans =1 2 30 5 60 0 9tril(A) ans =1 0 04 5 07 8 97.输入字符串变量a为“hello”将a的每个字符向后移4个,然后逆序排放赋给变量b解:a ='hello'; b=a+4;char(b) ans =lippsrot90(ans) ans =sppil8.求矩阵[1 2;3 4]的转置矩阵,逆矩阵,矩阵的序,矩阵的行列式值,矩阵的三次幂,矩阵的特征值和特真向量.解: a=[1 2;3 4];a' ans =1 32 4inv(a) ans =-2.0000 1.00001.5000 -0.5000det(a) ans = -2rank(a) ans = 2[v,d]=eig(a) v =-0.8246 -0.41600.5658 -0.9094d =-0.3723 00 5.37239.求解方程组2x1-3x2+x3+2x4=8;x1+3x2+x4=6;x1-x2+x3+8x4=7;7x1+x2-2x3+2 x4=5解: a=[2 -3 1 2;1 3 0 4;1 -1 1 8;7 1 -2 2];c=[8;6;7;5]; X=a\c X = 2.6316 1.36847.2105 -0.184210.计算数组A=[1 2 3;4 5 6;7 8 9],B=[1 1 1;2 2 2;3 3 3]的左除,右除以及点乘和点除解:有错误!!!11.输入a=[1.6 -2.4 5.2 -0.2]分别使用数学函数ceil,fix,floor,round查看各种取整的运算结果解: A=[1.6 -2.4 5.2 -0.2];ceil(A) ans =2 -2 6 0fix(a) ans =2 -3 1 21 3 0 41 -1 1 87 1 -2 2floor(A) ans = 1 -3 5 -1round(A) ans =2 -2 5 012.计算函数f=10sqrt(1-z^2)exp(-2t)sin(4t)的值,其中t的范围为0~2pi,步长取0.1pi,z为0.707,f1为f>=0的部分,计算f1的值。

解:t=[0:0.1*pi:2*pi];f=conv(10/sqrt(1-0.707*0.707)*exp(-2*t),sin(4*t))f =0 13.4479 15.4856 -0.0499 -13.4746 -7.18859.6130 13.4397 -1.1414 -14.0568 -7.4992 9.4472 13.3513 -1.1885 -14.0820 -7.5126 9.4401 13.3474-1.1906 -14.0831 -7.5132 -4.0082 -2.1383 -1.1408-0.6086 -0.3246 -0.1732 -0.0924 -0.0493 -0.0263-0.0140 -0.0075 -0.0040 -0.0022 -0.0011 -0.0006-0.0003 -0.0002 -0.0001 -0.0000 -0.0000y=f>=0 y = 1 1 1 0 0 0 1 10 0 0 1 1 0 0 0 1 10 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 00 0 0f1=f.*y f1 = 0 13.4479 15.4856 0 0 0 9.6130 13.4397 0 0 09.4472 13.3513 0 0 09.4401 13.3474 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 013.创建三维数组a,第一页为[1 2;3 4]第二页为[1 2;2 1]第三页为[1 2;2 2]从排生成数组B为3行,2列,2页解:p1=[1 2;3 4]; p2=[1 2;2 1]; p3=[1 2;2 2];a=cat(3,p1,p2,p3) a(:,:,1) =1 23 4a(:,:,2) =1 22 1a(:,:,3) =1 22 2repmat(a,[3 2 2])ans(:,:,1) =1 2 1 23 4 3 41 2 1 23 4 3 41 2 1 23 4 3 4 ans(:,:,2) =1 2 1 22 1 2 11 2 1 22 1 2 11 2 1 22 1 2 1ans(:,:,3) =1 2 1 22 2 2 21 2 1 22 2 2 21 2 1 22 2 2 2 ans(:,:,4) =1 2 1 23 4 3 41 2 1 23 4 3 41 2 1 23 4 3 4 ans(:,:,5) =1 2 1 22 1 2 11 2 1 22 1 2 11 2 1 22 1 2 1 ans(:,:,6) =1 2 1 22 2 2 21 2 1 22 2 2 21 2 1 22 2 2 214.创建一个4*4的稀疏矩阵A=[1 0 0 0;0 1 0 0;0 0 1 0;-1 -2-3 1]一个4*4的全元素随即矩阵b计算c=a+b,d=a.*b查看a b cd 的储存空间(不做)。

15.2个多项式为a=5x4+4x3+3x2+2x+1,b=3x2+1,计算c=a*b并计算c的根,当x=2时,计算c的值,将b/a进行部分分式展开解:a=[5 4 3 2 1]; b=[3 0 1];c=conv[a,b];c=conv(a,b)c =15 12 14 10 6 2 1r=roots(c)r =-0.5378 + 0.3583i -0.5378 - 0.3583i 0.1378 + 0.6782i0.1378 - 0.6782i -0.0000 + 0.5774i -0.0000 - 0.5774 polyval(c,2) ans = 1677[r,p,k]=residue(b,a) r = 0.0631 - 0.0816i0.0631 + 0.0816i -0.0631 - 0.5639i -0.0631 + 0.5639i p =0.1378 + 0.6782i 0.1378 - 0.6782i -0.5378 + 0.3583i-0.5378 - 0.3583ik =[]16.x在[0, 20]范围内,计算多项式y=5x4+4x3+3x2+2x+1的值,并根据x和y进行二阶,三阶,四阶拟合解: t=[0:20] t = 0 1 2 3 4 56 7 8 9 10 11 12 13 14 1516 17 18 19 20>> y=polyval(a,t)y = 1 15 129 547 1593 3711 7465 13539 22737 3598354321 78915 111049 152127 203673 267331 344865 438159 549217 680163833241polyfit(t,y,2) ans =1.0e+004 *0.3591 -3.7132 6.1463polyfit(t,y,3) ans = 1.0e+004 *0.0204 -0.2529 1.0645 -0.8305polyfit(t,y,4) ans =5.0000 4.0000 3.0000 2.0000 1.000017.t在[0, 10]范围内,y=exp(-2t)sin(10t+30·)计算y的最大值,最小值,平均值以及微积分解: t=[0:10] t = 0 1 2 3 4 56 7 8 9 10y = 0.5000 -0.8230 0.8833 -0.6590 0.2226 0.2854 -0.7016 0.8919 -0.7952 0.4426 0.0525 0.00710.0010 0.0001 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 -0.0000max(y) ans =0.8919min(y) ans = -0.8230mean(y) ans =0.0147d=[0 diff(y)] d =0 -1.3230 1.7063 -1.5423 0.8816 0.0628 -0.9869 1.5935 -1.6871 1.2378 -0.3900 -0.0454 -0.0061 -0.0008 -0.0001 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000s=cumsum(y) s =0.5000 -0.3230 0.5603 -0.0987 0.1239 0.4093 -0.2922 0.5997 -0.1955 0.2470 0.2996 0.3067 0.3076 0.3078 0.3078 0.3078 0.3078 0.3078 0.3078 0.3078 0.307818.t在[0, 10]范围内,y=exp(-2t)sin(10t+30·)进行傅里叶变换解:t=[0:10] t = 0 1 2 3 4 5 6 7 8 9 10Y=fft(y,11) Y =0.2996 0.2790 + 0.1654i 0.1983 +0.3728i -0.0564 + 0.7307i -1.6498 + 2.1106i 3.8292 -1.2037i 3.8292 + 1.2037i -1.6498 -2.1106i -0.0564 - 0.7307i 0.1983 - 0.3728i 0.2790 - 0.1654i。

THE END
0.c语言程序怎样输出一个图形,C语言循环输出各种*组成的图形使用C语言输出如下图所示的等边三角形图案: 改变空格 让第一个循环是第二个循环的一半 其实呢这里和 基本直角三角形旋转270° 的写法几乎是一样,只是把 双空格 转换为 单空格 ,虽然同样是两个10的循环,但是呢单空格的话就相当于是第一个循环次数是第二个循环的一半了。 jvzquC41dnuh0lxfp0tfv8|gkzooa=768;6958ftvkimg8igvcomu8639295495
1.c语言输出各种图形c语言程序输出图案c语言输出各种图形 本文展示了从简单的五角星图案到复杂的杨辉三角的演变,通过两个C语言代码实例,分别呈现了如何使用循环和递归来实现这一过程。重点在于理解算法逻辑和控制结构的应用。 1. /*/ * ** *** *** *** /*/intmain(intargc,char*argv[]){inti,j;for(i=1;i<=5;i++){for(j=1;j<=i;jvzquC41dnuh0lxfp0tfv8vsa6:88>;371gsvrhng1jfvjnnu1729::2729
2.C语言编程实例之输出指定图形问题C语言用C语言打印指定图形时,主要就是根据i(行号) 来确定每一行输出的数据 输入一个数字 就可以根据这个数字输出指定的图形,此算法也可以针对其他情况,比如输出星型。 本案例分两部分:接下来找规律 第一部分1-6逐渐扩大, (先输出空格) 第一行 行号1 输出5个空格 第二行 行号2 输出4个空格 第三行 行号3 输出jvzquC41yy}/lk:30pku1jwvkerf1;<53:7/j}r
3.编写一个C程序,运行时输出以下图形:************分类: c语言程序设计第五版谭浩强课后答案, c语言程序设计课后答案谭浩强 标签: c语言程序设计第五版谭浩强课后答案, 编写一个C程序,运行时输出以下图形, 编写一个C程序,运行时输出以下图形: *** *** *** ***, c语言程序设计第五版谭浩强习题答案 0 升级成为会员博客园jvzquC41yy}/ewgnqiy/exr1xu813B4r13933;=3:0nuou
4.用C语言在屏幕上输出一个菱形解题思路 为了在屏幕上输出一个如下图的图形 我们首先对图形进行观察,不难发现该图形为高度对称图形,从上至下“ * ”的符号每一行均多两个,然后到中间段,后面每一行便逐行减少两个“ * ”。这便是其中的规律 代码如下 #include<stdio.h> #include<windows.h> int main() { int i = 0;//此处的i在程jvzquC41yy}/extpqvk/exr1e/tpvn4e/ngoi~fig/uvvyzvu/g.frfoqpj.qw2vjg3te{jgp0nuou
5.C语言编写一个简单的计算器这是一款基于 C 语言与 Easyx 图形库开发的现代化图形界面计算器,兼具实用性与学习价值。界面采用优雅深色主题与圆角按钮设计,视觉风格简洁现代;核心功能覆盖四则运算、正负号快速切换,并实时显示输入表达式,运算逻辑完整。操作上支持鼠标点击与键盘输入双重方式,交互便捷灵活。代码层面采用模块化架构,严格分离界面绘制、计jvzquC41yy}/5?5fqe4dp8ftvkimg8:3;8682:d338::5::620nuou
6.C语言——简单图形打印学习用printf输出图形C语言——简单图形打印学习 本文介绍了如何使用C/C++通过循环语句输出不同类型的图形,包括直角三角形、字母序列和金字塔形状的数字图形。通过实例代码展示了实心和空心三角形的绘制方法,强调了循环嵌套和条件判断在图形输出中的应用,旨在帮助初学者掌握循环语句的使用。jvzquC41dnuh0lxfp0tfv8r2a8?:3?:971gsvrhng1jfvjnnu1736<:767:
7.用C语言输出*组成基本的三角形输出一个由*组成的三角形用C语言输出*组成基本的三角形 本文介绍了如何用C语言的for循环语句来输出不同类型的图形,包括正/倒直角三角形、正/倒等腰三角形、菱形以及旋转90°的等腰三角形。每个图形的输出都基于嵌套循环和空格控制。 文章目录 1.输出正直角三角形 2.输出倒直角三角形 3.输出正等腰三角形 4.输出倒等腰三角形 5.输出菱形 6.输出旋转90°的等腰jvzquC41dnuh0lxfp0tfv87523e88>=96:80c{ykenk0fnyckny03<5466758
8.C语言编写程序,输出以下图形木子欢儿编写程序输出以下图形: * ** *** *** *** 代码: #include <stdio.h>intmain() {inti, j;for(i =1; i <=5; i++) {for(j =1; j <= i; j++)/*内层循环控制每行输出*字符的个数*/printf("*"); printf("\n");/*输出一行后换行*/}return0; }jvzquC41yy}/ewgnqiy/exr1JITFV8u133?23<930jznn
9.c语言如何输出一个n行m列的图形C语言这篇文章主要介绍了c语言如何输出一个n行m列的图形问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教+ 目录 GPT4.0+Midjourney绘画+国内大模型 会员永久免费使用!【 如果你想靠AI翻身,你先需要一个靠谱的工具!】 一、示例 二、代码如下 1 2 3 4 5 6 7 8 9 10 11 jvzquC41yy}/lk:30pku1ywqitgn1<7545;98~3jvo
10.C语言教程之绘制图形【函数功能】返回图形模式下屏幕y轴坐标的最大值。 2.1.2设置和关闭图形模式 在实际生活中绘图,需要先准备好纸和画笔,再使用画笔在纸上作图。使用C语言的图形函数在屏幕上作图与之类似: 先将屏幕设置成某种图形模式,再调用作图函数绘制图形。例1.5的演示程序可以在屏幕上画一个半径为50的圆。程序中的 jvzquC41yy}/5?5fqe4dp8ftvkimg86226;1;:d44:<72A;;0jznn