同济大学matlab课程练习题答案
- 格式:doc
- 大小:104.50 KB
- 文档页数:53
matlab课后习题答案(附图)习题2.1画出下列常见曲线的图形y (1)⽴⽅抛物线3x命令:syms x y;ezplot('x.^(1/3)')(2)⾼斯曲线y=e^(-X^2);命令:clearsyms x y;ezplot('exp(-x*x)')(3)笛卡尔曲线命令:>> clear>> syms x y;>> a=1;>> ezplot(x^3+y^3-3*a*x*y)(4)蔓叶线命令:>> clear>> syms x y;>> a=1ezplot(y^2-(x^3)/(a-x))(5)摆线:()()tsin-=,=-by1命令:>> clear>> t=0:0.1:2*pi;>> x=t-sin(t);>>y=2*(1-cos(t)); >> plot(x,y)7螺旋线命令:>> clear >> t=0:0.1:2*pi; >> x=cos(t); >> y=sin(t); >> z=t;>>plot3(x,y,z)(8)阿基⽶德螺线命令:clear>> theta=0:0.1:2*pi;>> rho1=(theta);>> subplot(1,2,1),polar(theta,rho1)(9) 对数螺线命令:cleartheta=0:0.1:2*pi;rho1=exp(theta);subplot(1,2,1),polar(theta,rho1)(12)⼼形线命令:>> clear >> theta=0:0.1:2*pi; >> rho1=1+cos(theta); >> subplot(1,2,1),polar(theta,rho1)练习2.21. 求出下列极限值(1)nnn n3→命令:>>syms n>>limit((n^3+3^n)^(1/n)) ans = 3(2))121(lim n n n n ++-+∞→命令:>>syms n>>limit((n+2)^(1/2)-2*(n+1)^(1/2)+n^(1/2),n,inf) ans = 0(3)x x x 2cot lim 0→命令:syms x ;>> limit(x*cot(2*x),x,0) ans = 1/2 (4))(coslimcm xx ∞→命令:syms x m ; limit((cos(m/x))^x,x,inf) ans = 1(5))111(lim 1--→exx x命令:syms x>> limit(1/x-1/(exp(x)-1),x,1) ans =(exp(1)-2)/(exp(1)-1) (6))(2lim x x xx -+∞>> limit((x^2+x)^(1/2)-x,x,inf)ans = 1/2练习2.41. 求下列不定积分,并⽤diff 验证:(1)+x dxcos 1>>Clear >> syms x y >> y=1/(1+cos(x)); >> f=int(y,x) f =tan(1/2*x) >> y=tan(1/2*x); >> yx=diff(y ,x); >> y1=simple(yx) y1 =1/2+1/2*tan(1/2*x)^2 (2)+exdx1clear syms x yy=1/(1+exp(x));f=int(y,x) f =-log(1+exp(x))+log(exp(x)) syms x yy=-log(1+exp(x))+log(exp(x)); yx=diff(y,x); y1=simple(yx) y1 = 1/(1+exp(x)) (3)dx x x ?sin 2syms x yy=x*sin(x)^2; >> f=int(y,x) f =x*(-1/2*cos(x)*sin(x)+1/2*x)-1/4*cos(x)^2-1/4*x^2 clearsyms x y y=x*(-1/2*cos(x)*sin(x)+1/2*x)-1/4*cos(x)^2-1/4*x^2; yx=diff(y,x); >> y1=simple(yx) y1 = x*sin(x)^2 (4)xdx ?sec3syms x y y=sec(x)^3;f=int(y,x) f =1/2/cos(x)^2*sin(x)+1/2*log(sec(x)+tan(x)) clear syms x yy=1/2/cos(x)^2*sin(x)+1/2*log(sec(x)+tan(x)); yx=diff(y,x); y1=simple(yx) y1 =1/cos(x)^32. 求下列积分的数值解 1)dx x-10clearsyms xy=int(x^(-x),x,0,1) y =int(x^(-x),x = 0 .. 1) vpa(y,10) ans =1.291285997 2)xdx e x cos3202?πclearsyms xy=int(exp(2*x)*cos(x)^3,x, clear syms xy=int((1/(2*pi)^(1/2))*exp(-x^2/2),x,0,1) y =7186705221432913/36028797018963968*erf(1/2*2^(1/2))*2^(1/2)*pi^(1/0,2*pi) y =22/65*exp(pi)^4-22/65vpa(ans,10)(3)dx xe21221-π>> clear >> syms x>> y=int(1/(2*pi)^(1/2)*exp(-x^2/2),0,1); >> vpa(y,14) ans =.341344746068552(4)>> clear >> syms x>> y=int(x*log(x^4)*asin(1/x^2),1,3); Warning: Explicit integral could not be found. > In sym.int at 58 >> vpa(y,14) ans = 2.45977212823752(5) >> clear >> syms x1判断下列级数的收敛性,若收敛,求出其收敛值。
第一章 5题已知a=4.96,b=8.11,计算)ln(b a eba +-的值。
解:clear clc a=4.96; b=8.11;exp(a-b)/log(a+b) ans =0.0167 6题已知三角形的三边a=9.6,b=13.7, c=19.4,求三角形的面积。
提示:利用海伦公式area =))()((c s b s a s s ---计算,其中S=(A+B+C)/2. 解:clear clc a=9.6; b=13.7; c=19.4; s=(a+b+c)/2area=sqrt(s*(s-a)*(s-b)*(s-c)) s =21.3500 第二章 8题已知S=1+2+2^2+2^3+……+2^63,求S 的值 解:clear clc S=0;for i=0:1:63 S=S+2^i; end S S =1.8447e+019 9题分别用for 和while 循环结构编写程序,计算∑=-1001n 1n 2)(的值。
解:clear clc s=0;for n=1:100 s=s+(2*n-1); end s s =10000 clear clc n=1; s=0;while n<=100 s=s+(2*n-1); n=n+1; end s s =10000 第三章 2题在同一坐标下绘制函数x ,,2x-,2x xsin(x)在()∏∈,0x 的曲线。
解:clear clcx=0:0.2:pi; y1=x; y2=x.^2; y3=-(x.^2); y4=x.*sin(x);plot(x,y1,'-' ,x,y2,'-' ,x,y3,'-' ,x,y4,'-')0.511.522.53-10-8-6-4-202468109题用不同的线型和颜色在同一坐标内绘制曲线y1=2ex5.0 、y2=sin(2∏x )的图形。
习题二1.如何理解“矩阵就是MATLAB最基本得数据对象”?答:因为向量可以瞧成就是仅有一行或一列得矩阵,单个数据(标量)可以瞧成就是仅含一个元素得矩阵,故向量与单个数据都可以作为矩阵得特例来处理。
ﻩ因此,矩阵就是MATLAB最基本、最重要得数据对象。
2.设A与B就是两个同维同大小得矩阵,问:(1)A*B与A。
*B得值就是否相等?答:不相等。
(2)A。
/B与B。
\A得值就是否相等?答:相等。
(3)A/B与B\A得值就是否相等?答:不相等、(4)A/B与B\A所代表得数学含义就是什么?答:A/B等效于B得逆右乘A矩阵,即A*inv(B),而B\A等效于B矩阵得逆左乘A矩阵,即inv(B)*A。
3.写出完成下列操作得命令。
(1)将矩阵A第2~5行中第1,3, 5列元素赋给矩阵B。
答:B=A(2:5,1:2:5); 或B=A(2:5,[1 3 5])(2)删除矩阵A得第7号元素、答:A(7)=[](3)将矩阵A得每个元素值加30、答:A=A+30;(4)求矩阵A得大小与维数、答:size(A);ndims(A);(5)将向量t得0元素用机器零来代替。
答:t(find(t==0))=eps;(6)将含有12个元素得向量x转换成矩阵、答:reshape(x,3,4);(7)求一个字符串得ASCII码。
答:abs(‘123’); 或double(‘123');(8)求一个ASCII码所对应得字符、答:char(49);4.下列命令执行后,L1、L2、L3、L4得值分别就是多少?A=1:9;B=10-A;。
.、L1=A==B;L2=A<=5;L3=A〉3&A〈7;L4=find(A>3&A<7);答:L1得值为[0, 0, 0, 0, 1, 0, 0,0, 0]L2得值为[1, 1, 1, 1, 1,0, 0, 0, 0]L3得值为[0, 0, 0, 1,1, 1, 0, 0, 0]L4得值为[4,5, 6]5.已知完成下列操作:(1)取出A得前3行构成矩阵B,前两列构成矩阵C,右下角子矩阵构成矩阵D,B与C得乘积构成矩阵E。
大学matlab考试题及答案一、选择题(每题2分,共10分)1. MATLAB中用于创建向量的命令是?A. vectorB. arrayC. linspaceD. [ ]答案:D2. 以下哪个函数用于计算矩阵的行列式?A. detB. rankC. invD. eig答案:A3. 在MATLAB中,以下哪个命令用于绘制三维曲面?A. plot3B. surfC. meshD. contour答案:B4. MATLAB中,以下哪个函数用于求解非线性方程?A. fsolveB. fzeroC. linsolveD. solve答案:A5. 如何在MATLAB中创建一个全为1的3x3矩阵?A. ones(3,3)B. zeros(3,3)C. eye(3,3)D. rand(3,3)答案:A二、填空题(每题3分,共15分)1. 在MATLAB中,使用________函数可以计算矩阵的逆。
答案:inv2. 要将向量[1, 2, 3]转置成行向量,可以使用________运算符。
答案:.'3. MATLAB中,________函数用于计算两个矩阵的点乘。
答案:dot4. 若要在MATLAB中生成一个从0到1的100个等间隔的数,可以使用________函数。
答案:linspace5. 使用________函数可以在MATLAB中创建一个随机数矩阵。
答案:rand三、简答题(每题5分,共20分)1. 描述MATLAB中矩阵的基本操作有哪些?答案:矩阵的基本操作包括矩阵的创建、转置、加法、减法、乘法、点乘、求逆、行列式计算、特征值和特征向量的计算等。
2. MATLAB中如何实现循环结构?答案:MATLAB中可以使用for循环、while循环和switch-case结构来实现循环结构。
3. 简述MATLAB中函数定义的基本语法。
答案:MATLAB中函数定义的基本语法是:function [输出参数列表] = 函数名(输入参数列表)函数体end4. MATLAB中如何实现条件判断?答案:MATLAB中可以使用if-else语句、switch-case语句来实现条件判断。
matlab课后习题及答案详解第1章练习题1.安装matlab时,在选择组件窗口中哪些部分必须勾选,没有勾选的部分以后如何补安装?在安装matlab时,安装内容由选择组件窗口中个复选框是否被勾选来决定,可以根据自己的需要选择安装内容,但基本平台(即matlab选项)必须安装。
第一次安装没有选择的内容在补安装时只需按照安装的过程进行,只是在选择组件时只勾选要补装的组件或工具箱即可。
2.matlab操作方式桌面存有几个窗口?如何并使某个窗口瓦解桌面沦为单一制窗口?又如何将瓦解过来的窗口再次置放至桌面上?与其他计算机语言相比较,matlab语言注重的特点就是什么?matlab系统由那些部分共同组成?在matlab操作桌面上有五个窗口,在每个窗口的右上角有两个小按钮,一个是关闭窗口的close按钮,一个是可以使窗口成为独立窗口的undock按钮,点击undock按钮就可以使该窗口脱离桌面成为独立窗口,在独立窗口的view菜单中选择dock……菜单项就可以将独立的窗口重新防止的桌面上。
matlab具备功能强大、使用方便、输出简便、库函数多样、开放性弱等特点。
matlab系统主要由开发环境、matlab数学函数库、matlab语言、图形功能和应用程序接口五个部分组成。
3.如何设置当前目录和搜寻路径,在当前目录上的文件和在搜寻路径上的文件存有什么区别?命令历史窗口除了可以观测前面键入的命令外,除了什么用途?当前目录可以在当前目录浏览器窗口左上方的输入栏中设置,搜索路径可以通过选择操作桌面的file菜单中的setpath菜单项来完成。
在没有特别说明的情况下,只有当前目录和搜索路径上的函数和文件能够被matlab运行和调用,如果在当前目录上有与搜索路径上相同文件名的文件时则优先执行当前目录上的文件,如果没有特别说明,数据文件将存储在当前目录上。
命令历史窗口除了用作查阅以前键入的命令外,还可以轻易执行命令历史窗口中选取的内容、将选取的内容拷贝到剪贴板中、将选取内容轻易拷贝到m文件中。
matlab习题及答案Matlab习题及答案Matlab是一种强大的数学计算软件,被广泛应用于科学计算、数据分析和工程设计等领域。
在学习和使用Matlab的过程中,习题是一种非常有效的学习方式。
本文将给出一些常见的Matlab习题及其答案,帮助读者更好地掌握Matlab的使用技巧。
一、基础习题1. 计算1到100之间所有奇数的和。
解答:```matlabsum = 0;for i = 1:2:100sum = sum + i;enddisp(sum);```2. 编写一个函数,计算任意两个数的最大公约数。
解答:```matlabfunction gcd = computeGCD(a, b)while b ~= 0temp = b;a = temp;endgcd = a;end```3. 编写一个程序,生成一个5×5的随机矩阵,并计算矩阵的行和列的平均值。
解答:```matlabmatrix = rand(5);row_average = mean(matrix, 2);col_average = mean(matrix);disp(row_average);disp(col_average);```二、进阶习题1. 编写一个程序,实现插入排序算法。
解答:```matlabfunction sorted_array = insertionSort(array)n = length(array);for i = 2:nj = i - 1;while j > 0 && array(j) > keyarray(j+1) = array(j);j = j - 1;endarray(j+1) = key;endsorted_array = array;end```2. 编写一个程序,实现矩阵的转置。
解答:```matlabfunction transposed_matrix = transposeMatrix(matrix) [m, n] = size(matrix);transposed_matrix = zeros(n, m);for i = 1:mfor j = 1:ntransposed_matrix(j, i) = matrix(i, j);endendend```3. 编写一个程序,实现二分查找算法。
matlab教材习题答案Matlab是一种广泛应用于科学与工程领域的计算机编程语言和环境。
它具备强大的数值计算和数据可视化功能,被广泛用于数据分析、信号处理、图像处理、机器学习等领域。
对于初学者而言,掌握Matlab的基本语法和常用函数是非常重要的,而教材习题则是帮助学生巩固所学知识的重要资源。
本文将为大家提供一些Matlab教材习题的参考答案,以帮助读者更好地学习和应用Matlab。
1. 基本语法练习题1.1 计算并输出1到10的平方for i = 1:10fprintf('%d的平方是:%d\n', i, i^2);end1.2 计算并输出1到10的阶乘for i = 1:10fact = 1;for j = 1:ifact = fact * j;endfprintf('%d的阶乘是:%d\n', i, fact);end2. 数值计算练习题2.1 求解一元二次方程的根a = 1;b = -3;c = 2;delta = b^2 - 4*a*c;x1 = (-b + sqrt(delta))/(2*a);x2 = (-b - sqrt(delta))/(2*a);fprintf('一元二次方程的根为:%f, %f\n', x1, x2);2.2 求解线性方程组的解A = [1 2; 3 4];B = [5; 6];X = inv(A) * B;fprintf('线性方程组的解为:%f, %f\n', X(1), X(2));3. 数据处理练习题3.1 统计一个数组中的最大值、最小值和平均值data = [1, 2, 3, 4, 5];max_value = max(data);min_value = min(data);average_value = mean(data);fprintf('最大值:%f\n最小值:%f\n平均值:%f\n', max_value, min_value, average_value);3.2 对一个矩阵进行排序matrix = [4 2 3; 1 5 6; 9 8 7];sorted_matrix = sort(matrix);fprintf('排序后的矩阵为:\n');disp(sorted_matrix);4. 图像处理练习题4.1 读取并显示一张图片image = imread('image.jpg');imshow(image);4.2 对一张图片进行灰度化处理gray_image = rgb2gray(image);imshow(gray_image);5. 信号处理练习题5.1 生成并绘制正弦信号t = 0:0.01:2*pi;x = sin(t);plot(t, x);5.2 对一段音频信号进行傅里叶变换[y, fs] = audioread('audio.wav');Y = fft(y);plot(abs(Y));通过以上几个例子,我们可以看到Matlab的强大功能和灵活性。
matlab习题与答案
MATLAB习题与答案
MATLAB是一种强大的数学软件,广泛应用于工程、科学和金融等领域。
通过MATLAB,用户可以进行数据分析、图像处理、模拟建模等多种操作。
为了帮
助大家更好地掌握MATLAB的应用,我们为大家准备了一些习题与答案,希望
能够帮助大家更好地理解和掌握MATLAB的使用。
习题一:编写一个MATLAB程序,实现对给定矩阵的转置操作。
解答:可以使用MATLAB中的transpose函数来实现矩阵的转置操作。
例如,
对于一个3x3的矩阵A,可以使用以下代码实现转置操作:
A = [1 2 3; 4 5 6; 7 8 9];
B = transpose(A);
习题二:编写一个MATLAB程序,实现对给定矩阵的逆矩阵计算。
解答:可以使用MATLAB中的inv函数来实现对矩阵的逆矩阵计算。
例如,对
于一个3x3的矩阵A,可以使用以下代码实现逆矩阵计算:
A = [1 2 3; 4 5 6; 7 8 9];
B = inv(A);
习题三:编写一个MATLAB程序,实现对给定矩阵的特征值和特征向量计算。
解答:可以使用MATLAB中的eig函数来实现对矩阵的特征值和特征向量计算。
例如,对于一个3x3的矩阵A,可以使用以下代码实现特征值和特征向量计算:A = [1 2 3; 4 5 6; 7 8 9];
[V, D] = eig(A);
通过以上习题与答案的学习,相信大家对MATLAB的应用已经有了更深入的了
解。
希望大家能够多加练习,不断提升自己的MATLAB技能,为今后的工作和学习打下坚实的基础。
matlab课本练习题答案IntroductionMATLAB, short for "Matrix Laboratory," is a programming language and environment widely used in various fields, including mathematics, engineering, and computer science. In this article, we will provide answers and explanations for several MATLAB textbook practice questions. Please note that the questions are not included due to the word limit constraints.Exercise 1: Basic Arithmetic Operations1. Addition: To add two numbers, say a and b, in MATLAB, use the "+" operator. For example, if a = 5 and b = 3, simply type a + b in the command window or script.2. Subtraction: To subtract one number from another, use the "-" operator. For instance, if a = 7 and b = 2, the command a - b will give the result.3. Multiplication: To multiply two numbers, utilize the "*" operator. If a = 4 and b = 6, type a * b to obtain the product.4. Division: To divide one number by another, use the "/" operator. If a = 10 and b = 2, enter a / b to get the quotient.Exercise 2: Solving EquationsConsider the equation: 3x + 5 = 20. To find the value of x in MATLAB, follow these steps:Step 1: Rearrange the equation to isolate x:3x = 20 - 5Step 2: Divide both sides of the equation by the coefficient of x:x = (20 - 5) / 3Step 3: Implement the equation in MATLAB:x = (20 - 5) / 3After executing the command, MATLAB will calculate and display the value of x.Exercise 3: Plotting DataIn MATLAB, plotting data is straightforward. Suppose we have two sets of data: (x1, y1) and (x2, y2). To plot these points and connect them with lines, follow these steps:Step 1: Define the data points:x1 = [1, 2, 3, 4, 5]y1 = [2, 4, 6, 8, 10]x2 = [1, 2, 3, 4, 5]y2 = [1, 4, 9, 16, 25]Step 2: Plot the points and lines using the "plot" function:plot(x1, y1)hold onplot(x2, y2)The "hold on" command ensures that the two plots are displayed in the same figure. Execute these commands in MATLAB, and a figure window will appear with the plotted data.Exercise 4: Matrix ManipulationMATLAB provides extensive capabilities for matrix manipulation. Let's consider a matrix A with dimensions 2x3 and a matrix B with dimensions 3x2. To perform matrix multiplication and calculate the product C = A * B, follow these steps:Step 1: Define matrices A and B:A = [1, 2, 3; 4, 5, 6]B = [7, 8; 9, 10; 11, 12]Step 2: Multiply the matrices using the "*" operator:C = A * BAfter executing the command, MATLAB will calculate the matrix product C.ConclusionIn this article, we have provided answers and explanations for various MATLAB textbook practice questions. We covered topics such as basic arithmetic operations, equation solving, data plotting, and matrix manipulation. By following the step-by-step instructions and utilizing the appropriate MATLAB syntax, you can successfully solve these exercises and further enhance your MATLAB skills. Remember to practice regularly and explore the vast capabilities of MATLAB.。
matlab练习题答案一、求解线性方程组题目描述:解以下线性方程组2x + 3y - z = 7x - y + 2z = 33x + 2y + 4z = 12解答:使用MATLAB的线性方程组求解函数linsolve,可以得到该线性方程组的解。
代码如下:A = [2, 3, -1; 1, -1, 2; 3, 2, 4];B = [7; 3; 12];X = linsolve(A, B);其中,A为系数矩阵,B为常数矩阵,X为方程组的解矩阵。
运行以上代码,即可得到方程组的解为:X =2.0000-1.00003.0000所以,该线性方程组的解为x=2,y=-1,z=3。
二、矩阵运算题目描述:计算矩阵A和矩阵B的乘积,其中A为3×2矩阵,B为2×4矩阵。
A = [1, 2; 3, 4; 5, 6];B = [7, 8, 9, 10; 11, 12, 13, 14];解答:使用MATLAB的矩阵乘法运算符*,可以计算矩阵A和矩阵B的乘积。
代码如下:A = [1, 2; 3, 4; 5, 6];B = [7, 8, 9, 10; 11, 12, 13, 14];C = A * B;运行以上代码,即可得到矩阵A和矩阵B的乘积矩阵C。
C =29 32 35 3865 72 79 86101 112 123 134所以,矩阵A和矩阵B的乘积为一个3×4矩阵C,其中C的元素为上述结果。
三、绘制函数图像题目描述:绘制函数y = sin(x)在区间[0, 2π]上的图像。
解答:使用MATLAB的绘图函数plot,可以绘制函数的图像。
代码如下:x = linspace(0, 2*pi, 100);y = sin(x);plot(x, y);其中,linspace函数用于生成0到2π之间的线性间隔向量,共100个点。
sin函数用于计算每个点的函数值。
plot函数用于绘制图像。
运行以上代码,即可得到函数y = sin(x)在区间[0, 2π]上的图像。
填空题1. MATLAB于1984年由美国Mathworks公司推出,其后每年更新(两次。
2. MATLAB是一种以(矩阵)运算为基础的交互式程序设计语言。
3. MATLAB具有卓越的数值计算能力和符号计算、文字处理、可视化建模仿真和实时控制等众多功能,其每个变量代表一个(矩阵),每个元素都看作(复数)。
4.通过命令(help)、(lookfor),可以查找所有命令或函数的使用方法。
5.执行语句a=1:2:10,得到的一维数组是(1 3 5 7 9).6.执行语句b=linspace(1,10,10)后,一维数组b包含(10)个元素,最大值是10)7.函数rem()的功能是取(余)数。
8.若p=[1 0 0;1 1 0],则p|〜p=([1 1 1;1 1 1]).(注:填空时请用本题的p的方式表示结果)9.若p=[1 0 0;1 1 0],则all(p)=([1 0 0]).10.矩阵的加减运算,要求相加减的矩阵阶数相同。
若A=[1 2 3 4;2 3 1 8],则执行语句:[n,m]=size(A),则n=(2 ),m=(4 ).11.对于一维矩阵,求其长度的函数是(length()).12.数组和数组之间的运算,尤其是对于乘除运算和乘方运算,如果采用点方式进行计算,表明是数组的(元素)之间的运算关系。
13.求矩阵运算A*B时,要求在维度上,A的(列)数与B的(行)数相等。
二、判断题1.MATLAB只有一种数据类型,一种标准的输入输出语句,不需编译,可直接运行。
(对2.MATLAB的特殊常量是一些预选定义好的数值变量。
(对3.MATLAB变量名不区分大小写。
(错4.i是特殊常量。
(对5.NAN是非数。
(对6.MATLAB中所有的变量都表示一个矩阵或一个向量。
(对7.MATLAB中变量不需要先定义后使用,会自动根据实际赋值的类型对变量类型进行定义。
(对8.clc命令可以从内存中删除一个、多个和所有变量。
MATLAB考试试题及答案一、选择题(每题5分,共25分)1. 在MATLAB中,下列哪个命令用于创建一个行向量?A. v = [1; 2; 3]B. v = [1 2 3]C. v = [1, 2, 3]D. v = (1, 2, 3)答案:B2. 在MATLAB中,下列哪个命令用于计算矩阵A的行列式?A. det(A)B. det(A')C. det(inv(A))D. det(A^2)答案:A3. 在MATLAB中,下列哪个命令用于计算矩阵A的逆?A. inv(A)B. A^(-1)C. pinv(A)D. A\B答案:A4. 在MATLAB中,下列哪个命令用于求解线性方程组Ax= b?A. A\bB. A/BC. B/AD. A^-1b答案:A5. 在MATLAB中,下列哪个命令用于绘制二维图形?A. plot(x, y)B. scatter(x, y)C. bar(x, y)D. pie(x, y)答案:A二、填空题(每题5分,共25分)6. 在MATLAB中,可以使用______命令创建一个等差数列。
答案:linspace7. 在MATLAB中,可以使用______命令创建一个等比数列。
答案:logspace8. 在MATLAB中,可以使用______命令计算矩阵A的特征值。
答案:eig(A)9. 在MATLAB中,可以使用______命令计算矩阵A的特征向量。
答案:eigenvector(A)10. 在MATLAB中,可以使用______命令计算矩阵A的奇异值。
答案:svd(A)三、解答题(每题25分,共75分)11. 编写MATLAB程序,求解以下线性方程组:2x + 3y - z = 1x - y + 2z = 03x + 2y - 4z = -3答案:```A = [2 3 -1; 1 -1 2; 3 2 -4];b = [1; 0; -3];x = A\b;disp('解为:');disp(x);```12. 编写MATLAB程序,绘制以下函数的图形:y = sin(x) + cos(x),x ∈ [0, 2π]答案:```x = linspace(0, 2pi, 100);y = sin(x) + cos(x);plot(x, y);title('y = sin(x) + cos(x)');xlabel('x');ylabel('y');grid on;```13. 编写MATLAB程序,计算以下矩阵的特征值和特征向量:A = [1 2 3; 4 5 6; 7 8 9]答案:```A = [1 2 3; 4 5 6; 7 8 9];[V, D] = eig(A);disp('特征值:');disp(diag(D));disp('特征向量:');disp(V);```14. 编写MATLAB程序,使用牛顿迭代法求解方程f(x) = x^3 - 4x + 2 = 0在x = 1附近的根。
Matlab课后习题部分参考答案习题二2.student=struct('name',{'zhang','wang','li'},'age',{18,21,[] },'email',{['zh ang@','zhang@'],'',''})5、a=[1 0 0;1 1 0;0 0 1];b=[2 3 4;5 6 7;8 9 10];c=[a b]d=[a;b]c =1 0 023 41 1 0 5 6 70 0 1 8 9 10d =1 0 01 1 00 0 12 3 45 6 78 9 1010、reshape(c,2,9)1 0 1 0 1 5 3 9 71 0 0 02 8 6 4 10 reshape(d,2,9)ans =1 0 5 0 0 6 0 1 71 2 8 1 3 9 0 4 10 (注意:重新排列矩阵,是将原来的矩阵按列排序)11、a.’12、a+b a.*ba\b (即inv(a)*b,考试时,要求能自己手算出a的逆)ans =2 3 43 3 38 9 1013、c=4*ones(3);a>=cb>=c14.strcat('The picture is ','very good')a=['The picture is ','very good']18.double('very good')1.norm(A),det(A),rank(A)2.b=[1 1 1 1 1];c=b';a=[17,24,1,8,50;23,5,7,14,49;4,6,13,20,43;10,12,19,21,62;11,18,25,2,56]; x=a\c习题四1、a=14*rand(1,10)-5;for i=1:9max=i;for j=i+1:10if a(j)>a(max)max=j;endendtemp=a(i);a(i)=a(max);a(max)=temp;enda将上述脚本保存为script41.m2、function y=function42(n)3*randn(1,n)+3;for i=1:n-1max=i;for j=i+1:nif a(j)>a(max)max=j;endendtemp=a(i);a(i)=a(max);a(max)=temp;endy=a;将上述函数保存为function42.m 3、r=input(‘please input 1/2: ’);if r= =1script41;elsen=input(‘please input the length: ’);y=funtion42(n);end4.function f=function1(x,y)if y==1f=sin(x);elseif y==2f=cos(x);elsef=sin(x).*cos(x);end在命令窗口调用函数f=function1(1,3) 5.function result=function3(x,n)result=0;for i=1:nresult=result+sin(x.*i)+(-1).^i.*cos(i.*x); endfunction result=function4(n,t)result=0;A=[1 2 3;0 1 2;0 0 1];for i=1:nresult=result+A*i.*exp(A*i.*t);end习题五3.x1=-2:0.01:2;x2=-2:0.01:2;y1=x1.*sin(x2);y2=x2.*cos(x1);plot3(x1,x2,y 1,'-d',x1,x2,y2,'-d')14、x=8*rand(1,100)-2;y=reshape(x,10,10);save mydata.mat yclearclcload mydatak=y>ones(10);totel=0;for i=1:100if k(i)==1totel=totel+1;endend15、x=rand(5); %生成5*5均匀分布的随机矩阵(该处只作举例,未按题目要求)fid=fopen(‘text.txt’,’w’);count=fwrite(fid,x,’int32’); closestatus=fclose(fid);清除内存,关闭所有窗口fid=fopen(‘text.txt’,’r’);x=fread(fid,[5,5],’int32’); closestatus=fclose(fid); inv(x)16.随便生成一个矩阵,x1=-1:0.2:0.8;x2=-1:0.2:0.8;y1=x1.*sin(x2);y2=x2.*cos(x1);a=reshape([y1;y2],10,10);fid=fopen('table.txt','w'); fprintf (fid,‘%f’,a); fclose(fid) ;清除内存,关闭所有窗口a=fscanf('table.txt','%f') ; exp(a) ;fclose(fid) ;习题六1.c=ploy2str(A);B=[2,0,0,1,3,5];2.x=1:10;B=ployval(A,x);。
matlab课后习题及答案详解第1章MATLAB概论与其余计算机语言对比较,MATLAB语言突出的特色是什么?MATLAB拥有功能强盛、使用方便、输入简捷、库函数丰富、开放性强等特色。
MATLAB系统由那些部分构成?MATLAB系统主要由开发环境、MATLAB数学函数库、MATLAB语言、图形功能和应用程序接口五个部分组成。
安装MATLAB时,在选择组件窗口中哪些部分一定勾选,没有勾选的部分此后怎样补安装?在安装MATLAB时,安装内容由选择组件窗口中个复选框能否被勾选来决定,能够依据自己的需要选择安装内容,但基本平台(即MATLAB选项)一定安装。
第一次安装没有选择的内容在补安装时只要依据安装的过程进行,不过在选择组件时只勾选要补装的组件或工具箱即可。
MATLAB操作桌面有几个窗口?怎样使某个窗口离开桌面成为独立窗口?又怎样将离开出去的窗口从头搁置到桌面上?在MATLAB操作桌面上有五个窗口,在每个窗口的右上角有两个小按钮,一个是封闭窗口的Close按钮,一个是能够使窗口成为独立窗口的Undock 按钮,点击Undock按钮就能够使该窗口离开桌面成为独立窗口,在独立窗口的view菜单中选择Dock,,菜单项就能够将独立的窗口从头防备的桌面上。
怎样启动M文件编写/调试器?在操作桌面上选择“成立新文件”或“翻开文件”操作时,M文件编写/调试器将被启动。
在命令窗口中键入edit命令时也能够启动M文件编写/调试器。
储存在工作空间中的数组能编写吗?怎样操作?储存在工作空间的数组能够经过数组编写器进行编写:在工作空间阅读器中双击要编写的数组名翻开数组编写器,再选中要改正的数据单元,输入改正内容即可。
命令历史窗口除了能够察看前方键入的命令外,还有什么用途?命令历史窗口除了用于查问从前键入的命令外,还能够直接履行命令历史窗口中选定的内容、将选定的内容拷贝到剪贴板中、将选定内容直接拷贝到M文件中。
怎样设置目前目录和搜寻路径,在目前目录上的文件和在搜寻路径上的文件有什么差别?目前目录能够在目前目录阅读器窗口左上方的输入栏中设置,搜寻路径能够经过选择操作桌面的file菜单中的SetPath菜单项来达成。
上机练习题一班级: 姓名: 学号:1.建立起始值=3,增量值=,终止值=44的一维数组x 答案: x=(3::44)2.写出计算 Sin(30o)的程序语句. 答案: sin(pi*30/180) 或 sin(pi/6)3.矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=187624323A ,矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=333222111B ;分别求出B A ⨯及A 与B 中对应元素之间的乘积.答案:A = [3,2,3; 4,2,6; 7,8,1]B = [1,1,1; 2,2,2; 3,3,3] A*B ;A.*B4计算行列式的值187624323=A 。
答案:det(A)5对矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=187624323A 进行下述操作。
(1)求秩。
答案:rank(A)(2)求转置。
答案:A' (3) 对矩阵求逆,求伪逆。
答案:inv(A) ,pinv(A) (4) 左右反转,上下反转。
答案:fliplr(A),flipud(A)(5) 求矩阵的特征值. 答案:[u,v]=eig(A) (6) 取出上三角和下三角. 答案:triu(a) tril(a)(7)以A 为分块作一个3行2列的分块矩阵。
答案:repmat(a)6 计算矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡897473535与⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡638976242之和。
>> a=[5 3 5;3 7 4;7 9 8];>> b=[2 4 2;6 7 9;8 3 6]; >> a+b 7 计算⎥⎦⎤⎢⎣⎡=572396a 与⎥⎦⎤⎢⎣⎡=864142b 的数组乘积。
>> a=[6 9 3;2 7 5];>> b=[2 4 1;4 6 8]; >> a.*b ans =12 36 38 42 40 8 已知:⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=987654321a ,分别计算a 的数组平方和矩阵平方,并观察其结果。
习题二1.如何理解“矩阵是MATLAB最基本的数据对象”?答:因为向量可以看成是仅有一行或一列的矩阵,单个数据(标量)可以看成是仅含一个元素的矩阵,故向量和单个数据都可以作为矩阵的特例来处理。
因此,矩阵是MATLAB最基本、最重要的数据对象。
2.设A和B是两个同维同大小的矩阵,问:(1)A*B和A.*B的值是否相等?答:不相等。
(2)A./B和B.\A的值是否相等?答:相等。
(3)A/B和B\A的值是否相等?答:不相等。
(4)A/B和B\A所代表的数学含义是什么?答:A/B等效于B的逆右乘A矩阵,即A*inv(B),而B\A等效于B矩阵的逆左乘A矩阵,即inv(B)*A。
3.写出完成下列操作的命令。
(1)将矩阵A第2~5行中第1, 3, 5列元素赋给矩阵B。
答:B=A(2:5,1:2:5); 或B=A(2:5,[1 3 5])(2)删除矩阵A的第7号元素。
答:A(7)=[](3)将矩阵A的每个元素值加30。
答:A=A+30;(4)求矩阵A的大小和维数。
答:size(A);ndims(A);(5)将向量t的0元素用机器零来代替。
答:t(find(t==0))=eps;(6)将含有12个元素的向量x转换成34矩阵。
答:reshape(x,3,4);(7)求一个字符串的ASCII码。
答:abs(‘123’); 或double(‘123’);(8)求一个ASCII码所对应的字符。
答:char(49);4.下列命令执行后,L1、L2、L3、L4的值分别是多少?A=1:9;B=10-A;...L1=A==B;L2=A<=5;L3=A>3&A<7;L4=find(A>3&A<7);答:L1的值为[0, 0, 0, 0, 1, 0, 0, 0, 0]L2的值为[1, 1, 1, 1, 1, 0, 0, 0, 0]L3的值为[0, 0, 0, 1, 1, 1, 0, 0, 0]L4的值为[4, 5, 6]5.已知完成下列操作:(1)取出A的前3行构成矩阵B,前两列构成矩阵C,右下角32⨯子矩阵构成矩阵D,B 与C的乘积构成矩阵E。
同济大学matlab课程练习题答案关晓飞第一章初识matlab题目1x1=input('x1=');x2=input('x2=');x3=input('x3=');x4=input('x4=');x5=input('x5=');x6=input('x6=');x7=input('x7=');a=x1/x5;b=[x3/(x2-x1)]^;c=*(x4/x2)^;d=*c^;e=(x4/x2)^;f=[(1-d*e)/(x6*x7)]^;y=*a*b*f题目2略题目3>> help lookforlookfor Search all MATLAB files for keyword.lookfor XYZ looks for the string XYZ in the first comment line(the H1 line) of the HELP text in all MATLAB files found on MATLABPATH (including private directories). For all files in which amatch occurs, lookfor displays the H1 line.For example, "lookfor inverse" finds at least a dozen matches,including the H1 lines containing "inverse hyperbolic cosine""two-dimensional inverse FFT", and "pseudoinverse".Contrast this with "which inverse" or "what inverse", which runmore quickly, but which probably fail to find anything becauseMATLAB does not ordinarily have a function "inverse".lookfor XYZ -all searches the entire first comment block ofeach MATLAB file.In summary, WHAT lists the functions in a given directory,WHICH finds the directory containing a given function or file, andlookfor finds all functions in all directories that might have something to do with a given key word.题目4n=input('n=');sum(1:n)prod(1:n)题目5>> linspace(0,360,9)ans =0 45 90 135 180 225 270 315 360题目7n=input('n=')format bankn第二章矩阵的建立题目1.spiral产生螺旋矩阵例:>>spiral(3)ans=7 8 96 1 25 4 3题目2.(1)[1 2;3 4]+10-2ians =- -- -(2)[1 2;3 4].*[ ; ]ans =(3)[1 2;3 4].\[20 10;9 2]ans =(4)exp([1 2;3 4]) %自然对数的1、2、3、4乘方ans =(5)[1 2;3 4].^2ans =1 49 16(6)sum([1 2;3 4])ans =4 6(7)prod([1 2;3 4]) %每一列的所有行相加ans =3 8(8)[a,b]=min([10 20;30 40]) %a代表每一列的最小值,b代表该值所在的行数a =10 20b =1 1(9)abs([1 2;3 4]-pi) %绝对值ans =(10)linspace(3,4,5) %生成3到4均匀的5个数ans =(11)A=[1 2;3 4];sort(A(:,2)) %提取第2列ans =24题目3.A=[1,2,3,4;4,3,2,1;2,3,4,1;3,2,4,1]A =1 2 3 44 3 2 12 3 4 13 24 1A(5,6)=5A =1 2 3 4 0 04 3 2 1 0 02 3 4 1 0 03 24 1 0 0 0 0 0 0 05 题目4示例:A=[3 -1;-1 3]A =3 -1-1 3[X,D]=eig(A)X =D =2 00 4题目5A =3 -1-1 32^Aans =10 -6-6 102.^Aans =题目6(1)A=magic(6)A =35 1 6 26 19 24 3 32 7 21 23 25 31 9 2 22 27 20 8 28 33 17 10 15 30 5 34 12 14 16 4 36 29 13 18 11 c=A(2,1)c =3(2)t = 2:2:6;B = A(t,:);BB =3 32 7 21 23 25 8 28 33 17 10 154 36 29 13 18 11 (3)A(: , [end,2:end-1,1])ans =24 1 6 26 19 3525 32 7 21 23 3 20 9 2 22 27 3115 28 33 17 10 816 5 34 12 14 30 11 36 29 13 18 4 (4)A(:,[1 3 4 5 6])ans =35 6 26 19 243 7 21 23 2531 2 22 27 208 33 17 10 1530 34 12 14 164 29 13 18 11题目7ones(4,5)ans =1 1 1 1 11 1 1 1 11 1 1 1 11 1 1 1 1rand(3,4)ans =>> eye(3)ans =1 0 00 1 00 0 1题目8A=[0:99];A=reshape(A,10,10)A =0 10 20 30 40 50 60 70 80 901 11 21 31 41 51 61 71 81 912 12 22 32 42 52 62 72 82 923 13 23 33 43 53 63 73 83 934 14 24 34 44 54 64 74 84 945 15 25 35 45 55 65 75 85 956 16 26 36 46 56 66 76 86 967 17 27 37 47 57 67 77 87 978 18 28 38 48 58 68 78 88 989 19 29 39 49 59 69 79 89 99 A=magic(3)题目9A =8 1 63 5 74 9 2A(2,:)=A(2,:)*2A =8 1 66 10 144 9 2A(1,:)=A(1,:)+A(3,:)*(-2)A =0 -17 26 10 144 9 2题目10A=[1,3,5;5,8,3;6,1,6];B=[3,6;9,5;8,2];C=[3,3,9;4,0,6];D=[2:6]; [A,B]ans =1 3 5 3 65 8 3 9 56 1 6 8 2[A;C]ans =1 3 55 8 36 1 63 3 94 0 6[A,B;D]ans =1 3 5 3 65 8 3 9 56 1 6 8 22 3 4 5 6A=ones(6,7)A =1 1 1 1 1 1 11 1 1 1 1 1 11 1 1 1 1 1 11 1 1 1 1 1 11 1 1 1 1 1 11 1 1 1 1 1 1题目11for i=1:6for j=1:7A(i,j)=i+j;endendAA =2 3 4 5 6 7 83 4 5 6 7 8 94 5 6 7 8 9 105 6 7 8 9 10 116 7 8 9 10 11 127 8 9 10 11 12 13%本题还有多种方法第三章符号计算略题目2>> sym('0,3')ans =>> sym%符号工具箱得出更精确的解ans =3/10题目3>> syms x s>> f=x^5+3*x^4+4*x^3+2*x^2+3*x+6;g=(s-1)/(s+1);>> f(x)=compose(f,g,x,s)f(x) =(3*(s - 1))/(s + 1) + (2*(s - 1)^2)/(s + 1)^2 + (4*(s - 1)^3)/(s + 1)^3 + (3*(s - 1)^4)/(s + 1)^4 + (s - 1)^5/(s + 1)^5 + 6>> simplify(f(x))19 - (72*s^4 + 120*s^3 + 136*s^2 + 72*s + 16)/(s + 1)^5题目4>> sum(sym(2).^[1:64])ans =题目5f=sym('cos(4*a)-4*cos(2*a)+3');simplify(f)ans =8*sin(a)^4题目6>> f=sym('(3*x+2/3)^10');expand(f)ans =59049*x^10 + 131220*x^9 + 131220*x^8 + 77760*x^7 + 30240*x^6 + 8064*x^5 + (4480*x^4)/3 + (5120*x^3)/27 + (1280*x^2)/81 + (5120*x)/6561 + 1024/59049所以系数最大的项是131220*x^9 和131220*x^8题目7>> syms a x>> factor(a*(sin(x))^2-(2*a^2-a+1)*sin(x)+2*a-1)ans =(sin(x) - 2*a + 1)*(a*sin(x) - 1)第四章极限与导数题目1(1)>> syms x;lim1=limit([cos(x)-exp(-x^2/2)]/x^4,x,0)lim1 =-1/12(2)>> syms x t;lim2=limit((1+2*t/x)^3*x,x,inf)lim2 =Inf + imag(t)*6*i(3)>> syms x;lim3=limit(1/x,x,0,'right')Lim3 =Inf(4)>> syms x;lim4=limit((2^x-log(2^x)-1)/(1-cos(x)),x,0)Lim4 =log(2)^2题目2>> syms x;lim=limit((exp(x)-1-x)/x^2,x,0)lim =1/2题目3>> syms x;lim=limit(x^^(-1/x),x,0,'right')lim =题目4>> syms x;lim=limit(atan(x)/(1+x^2),x,pi,'left')lim =atan(pi)/(pi^2 + 1)题目5>> y=7*x^3-2*x+3;z=diff(y,2);x=1;eval(z)ans =42题目6>> syms x y;z=exp(x)*sin(2*y)+log(x)*cos(2*y);f=diff(z,y) f =2*cos(2*y)*exp(x) - 2*sin(2*y)*log(x)题目7>> syms x y t;x=t^2*sin(t);y=2*t*cos(t);f=diff(y)/diff(x)f =(2*cos(t) - 2*t*sin(t))/(t^2*cos(t) + 2*t*sin(t))题目8>> syms x;lim=limit((3^x+9^x)^(1/x),x,inf)lim =9题目9>> syms x;lim=limit((1+x)^(1/x),x,0)lim =exp(1)题目10>> syms x;y=[(x-1)*(x-2)/(x-3)/(x-4)]^;f1=diff(y,1),f2=diff(y,2),f3=diff(y,3)f1 =((x - 1)/((x - 3)*(x - 4)) + (x - 2)/((x - 3)*(x - 4)) - ((x - 1)*(x - 2))/((x - 3)*(x - 4)^2) - ((x - 1)*(x - 2))/((x - 3)^2*(x - 4)))/(2*(((x - 1)*(x - 2))/((x - 3)*(x - 4)))^(1/2))f2 =(2/((x - 3)*(x - 4)) - (2*(x - 1))/((x - 3)*(x - 4)^2) - (2*(x - 1))/((x - 3)^2*(x - 4)) - (2*(x - 2))/((x - 3)*(x - 4)^2) - (2*(x - 2))/((x - 3)^2*(x - 4)) + (2*(x - 1)*(x - 2))/((x - 3)*(x - 4)^3) + (2*(x - 1)*(x - 2))/((x - 3)^2*(x - 4)^2) + (2*(x - 1)*(x - 2))/((x - 3)^3*(x - 4)))/(2*(((x - 1)*(x - 2))/((x - 3)*(x - 4)))^(1/2)) - ((x - 1)/((x - 3)*(x - 4)) + (x - 2)/((x - 3)*(x - 4)) - ((x -1)*(x - 2))/((x - 3)*(x - 4)^2) - ((x - 1)*(x - 2))/((x - 3)^2*(x - 4)))^2/(4*(((x - 1)*(x -2))/((x - 3)*(x - 4)))^(3/2))f3 =(3*((x - 1)/((x - 3)*(x - 4)) + (x - 2)/((x - 3)*(x - 4)) - ((x - 1)*(x - 2))/((x - 3)*(x - 4)^2) - ((x - 1)*(x - 2))/((x - 3)^2*(x - 4)))^3)/(8*(((x - 1)*(x - 2))/((x - 3)*(x - 4)))^(5/2)) - (6/((x - 3)*(x - 4)^2) + 6/((x - 3)^2*(x - 4)) - (6*(x - 1))/((x - 3)*(x - 4)^3) - (6*(x - 1))/((x -3)^2*(x - 4)^2) - (6*(x - 1))/((x - 3)^3*(x - 4)) - (6*(x - 2))/((x - 3)*(x - 4)^3) - (6*(x - 2))/((x - 3)^2*(x - 4)^2) - (6*(x - 2))/((x - 3)^3*(x - 4)) + (6*(x - 1)*(x - 2))/((x - 3)*(x - 4)^4) + (6*(x - 1)*(x - 2))/((x - 3)^2*(x - 4)^3) + (6*(x - 1)*(x - 2))/((x - 3)^3*(x - 4)^2) + (6*(x - 1)*(x - 2))/((x - 3)^4*(x - 4)))/(2*(((x - 1)*(x - 2))/((x - 3)*(x - 4)))^(1/2)) - (3*((x - 1)/((x - 3)*(x - 4)) + (x - 2)/((x - 3)*(x - 4)) - ((x - 1)*(x - 2))/((x - 3)*(x - 4)^2) - ((x -1)*(x - 2))/((x - 3)^2*(x - 4)))*(2/((x - 3)*(x - 4)) - (2*(x - 1))/((x - 3)*(x - 4)^2) - (2*(x - 1))/((x - 3)^2*(x - 4)) - (2*(x - 2))/((x - 3)*(x - 4)^2) - (2*(x - 2))/((x - 3)^2*(x - 4)) + (2*(x - 1)*(x - 2))/((x - 3)*(x - 4)^3) + (2*(x - 1)*(x - 2))/((x - 3)^2*(x - 4)^2) + (2*(x - 1)*(x - 2))/((x - 3)^3*(x - 4))))/(4*(((x - 1)*(x - 2))/((x - 3)*(x - 4)))^(3/2))题目11>> syms x;y=x*log(x);diff(y,10)ans =40320/x^9题目12>> syms x;y=exp(-2*x);taylor(y,x,0,'order',6)ans =- (4*x^5)/15 + (2*x^4)/3 - (4*x^3)/3 + 2*x^2 - 2*x + 1题目13>> syms x;y=x/sin(x);f=taylor(y,x,2,'order',5),ezplot(f)f =((2*(cos(2)^2/sin(2)^2 + 1/2))/sin(2) - cos(2)/sin(2)^2)*(x - 2)^2 - ((cos(2)/(3*sin(2)) + (cos(2)*(cos(2)^2/sin(2)^2 + 1/2))/sin(2))/sin(2) - (2*(cos(2)^2/(3*sin(2)^2) +(cos(2)*(cos(2)/(3*sin(2)) + (cos(2)*(cos(2)^2/sin(2)^2 + 1/2))/sin(2)))/sin(2) +5/24))/sin(2))*(x - 2)^4 - ((2*cos(2))/sin(2)^2 - 1/sin(2))*(x - 2) - (x -2)^3*((2*(cos(2)/(3*sin(2)) + (cos(2)*(cos(2)^2/sin(2)^2 + 1/2))/sin(2)))/sin(2) - (cos(2)^2/sin(2)^2 + 1/2)/sin(2)) + 2/sin(2)题目14>> syms x1 x2 x3 x4 x5 x6 x7;a=x1/x5;b=[x3/(x2-x1)]^;c=*(x4/x2)^;d=*c^;e=(x4/x2)^;f=[(1-d*e)/(x6*x7)]^;y=*a*b*f;>>f1=diff(y,x1);f2=diff(y,x2);f3=diff(y,x3);f4=diff(y,x4);f5=diff(y,x5);f6=diff(y,x6);f7=diff(y ,x7);x1=;x2=;x4=;x5=;x6=16;x7=;>> eval(f1),eval(f2),eval(f3),eval(f4),eval(f5),eval(f6),eval(f7)ans =(49*x3)/(0*(5*x3)^(3/20)) + (063*(5*x3)^(17/20))/22500ans =(824*(5*x3)^(17/20))/65 - (49*x3)/(0*(5*x3)^(3/20))ans =763/(083200*(5*x3)^(3/20))ans =-(6128*(5*x3)^(17/20))/ans =-(*(5*x3)^(17/20))/624000ans =-(5899137*(5*x3)^(17/20))/ans =-(5899137*(5*x3)^(17/20))/650522第五章程序编制题目1略题目2function f=fib(n)if n==1|n==2 %“|”是或者f=1;elsef=fib(n-1)+fib(n-2);end题目3function a=countwords(s)d=length(s);n=1;x=0;while n<dif (isletter(s(n))==0)&(isletter(s(n+1))==1)%前一个是空格,后一个是字母n=n+1;x=x+1;elsen=n+1;endendx%最基本的是数空格,用上面方法可以解决两个单词之间存在多个空格的问题,而实际上还是有漏洞,比如字母之间不能夹有其他符号数字,单词要有意义等。