MATLAB程序设计与应用习题三
Matlab编程与应用习题和一些参考答案
Matlab编程与应用习题和一些参考答案Matlab 上机实验一、二3.求下列联立方程的解⎪⎪⎩⎪⎪⎨⎧=+-+-=-+=++-=--+41025695842475412743w z y x w z x w z y x w z y x >> a=[3 4 -7 -12;5 -7 4 2;1 0 8 -5;-6 5 -2 10];>> b=[4;4;9;4];>> c=a\b4.设⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡------=81272956313841A ,⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡-----=793183262345B ,求C1=A*B’;C2=A’*B;C3=A.*B,并求上述所有方阵的逆阵。
>> A=[1 4 8 13;-3 6 -5 -9;2 -7 -12 -8];>> B=[5 4 3 -2;6 -2 3 -8;-1 3 -9 7];>> C1=A*B'>> C2=A'*B>> C3=A.*B>> inv(C1)>> inv(C2)>> inv(C3)5.设 ⎥⎦⎤⎢⎣⎡++=)1(sin 35.0cos 2x x x y ,把x=0~2π间分为101点,画出以x 为横坐标,y 为纵坐标的曲线。
>> x=linspace(0,2*pi,101);>> y=cos(x)*(0.5+(1+x.^2)\3*sin(x));>> plot(x,y,'r')6.产生8×6阶的正态分布随机数矩阵R1, 求其各列的平均值和均方差。
并求该矩阵全体数的平均值和均方差。
(mean var )a=randn(8,6)mean(a)var(a)k=mean(a)k1=mean(k)i=ones(8,6)i1=i*k1i2=a-i1i3=i2.*i2g=mean(i3)g2=mean(g)10.利用帮助查找limit 函数的用法,并自己编写,验证几个函数极限的例子。
MATLAB程序设计与应用上习题解答
2.5设A=[8 9 5 6 1 2];B=[5 6 3 2 4 5];求A.*B?
2.6设A=4;B=2,求C=A/B与D=A\B?
2.7设a=[1 -20;40-4;5 -60],请设计一个程序,找出小于、等于和小于0的矩阵元素的位置。
2.8设a=[-10;12],判断a中元素是否大于、小于和等于0。
1.3利用MATLAB进行简单的四则运算: 。了解%的作用。
1.4已知a=5,b=5,求c=a+b,c=a b和a b。写出MATLAB计算程序。
1.5当不需要显示结果时应该如何做?
1.7了解通用操作指令:quit,clear,cla,clf,clc,hold的功能和使用。
1.8学会使用在线帮助。利用帮助系统查询quit,clear,cla,clf,clc,hold的使用说明。
(5)用正常体、大小18磅、黑色将横坐标、纵坐标分别用“x”和“y”标出。
程序设计:
>>clear
delta=0.1;
omega=5;
x=-2*pi:0.01:2*pi;
y1=exp(-delta*x.^2);
y2=-exp(-delta*x.^2);
y3=exp(-delta*x.^2).*sin(omega*x);
将 进行矩阵运算 以及数组运算 。
3.4已知
求a对应的转置矩阵、逆矩阵、秩、正交矩阵、迹和行列式。
3.5已知
求a对应的本征值与本征向量。
3.6已知
将a(2,3)=-1替换为a(2,3)=0。
3.6已知
将a的第二行元素全部替换为0,然后将第二列元素全部替换为1。
第四章 程序的结构和流程控制
matlab程序设计与应用第3版pdf版
matlab程序设计与应用第3版pdf版引言概述:《MATLAB程序设计与应用第3版》是一本经典的MATLAB编程教材,它提供了广泛的知识和技巧,帮助读者掌握MATLAB的应用。
本文将从五个大点出发,详细阐述该书的内容,包括基础知识、数据处理、图形绘制、符号计算和应用实例。
正文内容:1. 基础知识1.1 MATLAB环境介绍:介绍MATLAB的工作环境和基本操作,包括命令窗口、编辑器、变量和函数的定义等。
1.2 数据类型和运算:详细介绍MATLAB中的数据类型,如标量、向量、矩阵和结构体等,以及常用的运算符和函数。
1.3 控制流程:讲解MATLAB中的条件语句、循环语句和函数的定义与调用,帮助读者掌握程序的流程控制。
1.4 文件与数据的输入输出:介绍如何读写文件和处理各种数据格式,如文本文件、Excel文件和图像文件等。
1.5 调试与性能优化:提供调试MATLAB程序的技巧和方法,并介绍如何优化程序的性能,提高代码的运行效率。
2. 数据处理2.1 数据导入与清洗:介绍如何导入外部数据,并对数据进行清洗和预处理,包括数据类型转换、缺失值处理和异常值检测等。
2.2 数据可视化:讲解如何使用MATLAB的绘图函数绘制各种类型的图表,如折线图、散点图、柱状图和饼图等,以及如何添加标签和注释。
2.3 数据分析与统计:介绍常用的数据分析和统计方法,如描述统计、假设检验、回归分析和聚类分析等,以及MATLAB中相应的函数和工具箱的使用。
2.4 信号处理:介绍信号处理的基本概念和方法,包括时域分析、频域分析和滤波器设计等,以及MATLAB中相关的函数和工具箱。
2.5 机器学习与数据挖掘:简要介绍机器学习和数据挖掘的基本原理和方法,并介绍MATLAB中的机器学习工具箱和数据挖掘工具箱的使用。
3. 图形绘制3.1 2D图形绘制:详细介绍绘制2D图形的方法和技巧,包括曲线绘制、图形样式设置和图形的保存等。
3.2 3D图形绘制:讲解如何绘制3D图形,包括曲面图、散点图和体积图等,以及如何设置视角和光照效果。
MATLAB程序设计及应用(第二版)课后实验答案
Matlab课后实验题答案实验一 MATLAB运算基础1. 先求下列表达式的值,然后显示MATLAB工作空间的使用情况并保存全部变量。
(1)0 122sin851ze =+(2)21ln( 2z x=+,其中2120.455i x+⎡⎤=⎢⎥-⎣⎦(3)0.30.330.3sin(0.3)ln, 3.0, 2.9,,2.9,3.0 22a ae e az a a--+=++=--(4)2242011122123t tz t tt t t⎧≤<⎪=-≤<⎨⎪-+≤<⎩,其中t=0:0.5:2.52. 已知:1234413134787,2033657327A B --⎡⎤⎡⎤⎢⎥⎢⎥==⎢⎥⎢⎥⎢⎥⎢⎥-⎣⎦⎣⎦求下列表达式的值:(1) A+6*B 和A-B+I (其中I 为单位矩阵) (2) A*B 和A.*B (3) A^3和A.^3 (4) A/B 及B\A(5) [A,B]和[A([1,3],:);B^2] 解:3. 设有矩阵A 和B123453166789101769,111213141502341617181920970212223242541311A B ⎡⎤⎡⎤⎢⎥⎢⎥-⎢⎥⎢⎥⎢⎥⎢⎥==-⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦(1) 求它们的乘积C 。
(2) 将矩阵C 的右下角3×2子矩阵赋给D 。
(3) 查看MATLAB 工作空间的使用情况。
4. 完成下列操作:(1) 求[100,999]之间能被21整除的数的个数。
(2) 建立一个字符串向量,删除其中的大写字母。
解:(1) 结果:(2). 建立一个字符串向量 例如:ch='ABC123d4e56Fg9';则要求结果是:实验二 MATLAB 矩阵分析与处理1. 设有分块矩阵33322322E R A O S ⨯⨯⨯⨯⎡⎤=⎢⎥⎣⎦,其中E 、R 、O 、S 分别为单位矩阵、随机矩阵、零矩阵和对角阵,试通过数值计算验证22E R RS A OS +⎡⎤=⎢⎥⎣⎦。
Matlab程序设计与应用(厦门大学网络学院)
单选题(共100题)(1).如果x=1: 2 : 8,则x(1)和x(4)分别是()(1分)回答:正确答案:B. 1, 7得分:0(2).下列哪个函数名是四舍五入到最邻近的整数()(1分)回答:正确答案:C.round得分:0(3).表达式 char(65)+1 的值是()(1分)回答:正确答案:B.66得分:0(4).legend()命令是()(1分)回答:正确答案:A.在图中标注“图例”;得分:0(5).MATLAB中的程序控制结构包括()(1分)回答:正确答案:B. 顺序结构循环结构选择结构得分:0(6).在MATLAB矩阵除法中,B/A等效于()(1分)回答:正确答案:A.B*inv(A)得分:0(7).subplot(2,1,2)是指()的子图(1分)回答:正确答案:B.两行一列的下图得分:0(8).设有数组定义:x=[1,2,3,4,5,6], y=x' ,下列表达式中正确的是()(1分)回答:正确答案:D.y*x得分:0(9).Matlab中用来表示不确定值的变量是()(1分)回答:正确答案:A.NaN得分:0(10).执行语句for x=1:2:10, disp(x), end,循环体将执行()次(1分)回答:正确答案:B.5次得分:0(11).下列对条件语句、分支语句、固定循环次数语句、不定循环次数语句关键字排序正确的是()(1分)回答:正确答案:B. if else end; switch case end; for end; while end;得分:0(12).删除工作空间中保存的变量x的命令是()(1分)回答:正确答案:A.clear x得分:0(13).产生所有元素均为1的2行3列矩阵的命令是()(1分)回答:正确答案:A.ones(2,3)得分:0(14).case子句后面的表达式不可以为()(1分)回答:正确答案:B.字符串得分:0(15).可以使用()命令为图形添加网格(1分)回答:正确答案:A.grid on得分:0(16).清空Matlab工作空间内所有变量的指令是()(1分)回答:正确答案:C.clear得分:0(17).设A=[2 4 3; 5 3 1; 3 6 7],则sum(A),length(A)和size(A)的结果()(1分)回答:正确答案:A.[10 13 11] 3 [3 3]得分:0(18).运行如下程序后, 命令窗口(command windows)显示的结果为()。
Matlab程序设计与应用第二版刘卫国课后实验答案
实验一:T1:%%第一小题z1=2*sin(85*pi/180)/(1+exp(2))%%第二小题x=[2,1+2i;—0.45,5];z2=1/2*log(x+sqrt(1+x。
^2));z2%%第三小题a=-3。
0:0。
1:3.0;z3=1/2*(exp(0.3*a)-exp(—0.3*a))。
*sin(a+0.3)+log((0。
3+a)/2)%%第四题t=0:0。
5:2.5z4=(t〉=0&t<1)。
*(t.^2)+(t〉=1&t〈2)。
*(t。
^2—1)+(t〉=2&t〈3).*(t。
^2—2*t+1)T2:A=[12,34,-4;34,7,87;3,65,7]B=[1,3,-1;2,0,3;3,—2,7]disp ('A+6*B=’);disp(A+6*B);disp('A-B+I=’);disp(A—B+eye(3));disp('A*B=’);disp(A*B);disp('A.*B=’);disp(A。
*B);disp('A^3=');disp(A^3);disp('A。
^3=’);disp(A.^3);disp(’A/B=’);disp(A/B);disp(’B\A=');disp(B\A);disp(’[A,B]=');disp([A,B]);disp(’[A([1,3],:);B^2]=');disp([A([1,3],:);B^2]);T3:z=1:25;A=reshape(z,5,5)’;B=[3,0,16;17,-6,9;0,23,-4;9,7,0;4,13,11];C=A*BD=C(3:5,2:3)T4—1:a=100:999;b=find(rem(a,21)==0);c=length(b)T4-2:a=input('请输入一个字符串:’,’s’);b=find(a〉='A’&a〈=’Z’);a(b)=[];disp(a);实验二:T1:E=eye(3),R=rand(3,2),O=zeros (2,3),S=diag([1,2]);A=[E,R;O,S]disp(’A^2=');disp(A^2);disp('[E,R+RS;O,S^2]’);B=[E,R+R*S;O,S^2]T2:H=hilb(5)P=pascal(5)Hh=det(H)Hp=det(P)Th=cond(H)Tp=cond(P)a=abs(Th—1);b=abs(Tp-1);if a>bdisp('帕萨卡矩阵P性能更好');elseif a<bdisp(’希尔伯特矩阵H性能更好’); elsedisp(’两个矩阵性能相同’);endT3:a=1:25;A=reshape(a,5,5)disp(’行列式的值:’);disp(det(A));disp('矩阵的秩:’);disp(rank(A));disp('矩阵的迹:');disp(trace(A));disp(’矩阵的范数:');disp(norm(A));T4:A=[—29,6,18;20,5,12;—8,8,5][V,D]=eig(A)T5:A=[1/2,1/3,1/4;1/3,1/4,1/5;1/4,1/5,1/6] B=[0.95,0。
《MATLAB程序设计与应用》刘卫国高等教育出版社课后答案 已解锁-去水印 适合打印
SY404 clear all for n=1:4 if n==1 f1=1; elseif n==2 f2=0; elseif n==3 f3=1; else a=f3-2*f2+f1; b=a-2*f3+f2; c=b-2*a+f3; d=c-2*b+a; H=[1,0,1,a,b,c,d]; for m=8:4:99 a=d-2*c+b; b=a-2*d+c; c=b-2*a+d; d=c-2*b+a; H=[H,a,b,c,d]; end f100=d-2*c+b; end end max=max(H);
[f1,f2]=f(n); a=f1; b=f2; elseif n==30; [f1,f2]=f(n); c=f1; d=f2; else [f1,f2]=f(n); e=f1; f=f2; end end y1=e/(a+c); y2=f/(b+d); disp(['(1) y=',num2str(y1)]) disp(['(2) y=',num2str(y2)]) f function [f1,f2]=f(n) f1=n+10*log(n^2+5); x=0; for a=1:n b=a*(a+1); x=x+b; end f2=x; fushu function [e,l,s,c]=fushu(x) e=exp(x); l=log(x); s=sin(x); c=cos(x); disp(['复数e的指数是:',num2str(e)]) disp(['复数e的对数是:',num2str(l)]) disp(['复数e的正弦是:',num2str(s)]) disp(['复数e的余弦是:',num2str(c)])
915204-MATLAB程序设计与应用-第1章 MATLAB系统环境_习题答案
第1章 MATLAB系统环境习题1一、选择题1.最初的MA TLAB核心程序是采用()语言编写的。
AA.FORTRAN B.C C.BASIC D.PASCAL2.2016年3月发布的MA TLAB版本的编号为()。
BA.MA TLAB 2016Ra B.MA TLAB R2016aC.MATLAB 2016Rb D.MA TLAB R2016b3.下列选项中能反应MA TLAB特点的是()。
DA.算法最优B.不需要写程序C.程序执行效率高D.编程效率高4.当在命令行窗口执行命令时,如果不想立即在命令行窗口中输出结果,可以在命令后加上()。
CA.冒号(:)B.逗号(,)C.分号(;)D.百分号(%)5.如果要重新执行以前输入的命令,可以使用()。
DA.左移光标键(←)B.右移光标键(→)C.下移光标键(↓)D.上移光标键(↑)6.MA TLAB命令行窗口中提示用户输入命令的符号是()。
BA.> B.>> C.>>> D.>>>>7.plot(x,y)是一条()命令。
CA.打印B.输出C.绘图D.描点8.以下两个命令行的区别是()。
A>> x=5,y=x+10>> x=5,y=x+10;A.第一个命令行同时显示x和y的值,第二个命令行只显示x的值B.第一个命令行同时显示x和y的值,第二个命令行只显示y的值C.第一个命令行只显示x的值,第二个命令行同时显示x和y的值D.第一个命令行只显示y的值,第二个命令行同时显示x和y的值9.下列命令行中,输出结果与其他3项不同的是()。
DA.>> 10+20+... B.>> ...30 10+20+30C.>> 10+20+30%5 D.>> %10+20+3010.下列选项中,不是MATLAB帮助命令的是()。
CA.lookfor B.lookfor –all C.search D.help二、填空题1.MA TLAB一词来自的缩写。
MATLAB程序设计与应用 答案
第1章MATLAB概论1.1与其他计算机语言相比较,MA TLAB语言突出的特点是什么?MATLAB具有功能强大、使用方便、输入简捷、库函数丰富、开放性强等特点。
1.2 MA TLAB系统由那些部分组成?MATLAB系统主要由开发环境、MA TLAB数学函数库、MATLAB语言、图形功能和应用程序接口五个部分组成。
1.3 安装MATLAB时,在选择组件窗口中哪些部分必须勾选,没有勾选的部分以后如何补安装?在安装MA TLAB时,安装内容由选择组件窗口中个复选框是否被勾选来决定,可以根据自己的需要选择安装内容,但基本平台(即MATLAB选项)必须安装。
第一次安装没有选择的内容在补安装时只需按照安装的过程进行,只是在选择组件时只勾选要补装的组件或工具箱即可。
1.4 MA TLAB操作桌面有几个窗口?如何使某个窗口脱离桌面成为独立窗口?又如何将脱离出去的窗口重新放置到桌面上?在MA TLAB操作桌面上有五个窗口,在每个窗口的右上角有两个小按钮,一个是关闭窗口的Close按钮,一个是可以使窗口成为独立窗口的Undock按钮,点击Undock按钮就可以使该窗口脱离桌面成为独立窗口,在独立窗口的view菜单中选择Dock ……菜单项就可以将独立的窗口重新防止的桌面上。
1.5 如何启动M文件编辑/调试器?在操作桌面上选择‚建立新文件‛或‚打开文件‛操作时,M文件编辑/调试器将被启动。
在命令窗口中键入edit命令时也可以启动M文件编辑/调试器。
1.6 存储在工作空间中的数组能编辑吗?如何操作?存储在工作空间的数组可以通过数组编辑器进行编辑:在工作空间浏览器中双击要编辑的数组名打开数组编辑器,再选中要修改的数据单元,输入修改内容即可。
1.7 命令历史窗口除了可以观察前面键入的命令外,还有什么用途?命令历史窗口除了用于查询以前键入的命令外,还可以直接执行命令历史窗口中选定的内容、将选定的内容拷贝到剪贴板中、将选定内容直接拷贝到M文件中。
实验3 MATLAB程序设计
实验3 MATLAB程序设计实验3 MATLAB程序设计实验目的1. 学习使用MATLAB进行程序的设计与实现;2. 掌握MATLAB函数的编写与调用方法;3. 掌握MATLAB的编程基础知识。
实验内容编写一个MATLAB程序,实现以下功能:1. 输入一个正整数n;2. 判断该正整数是否为素数;3. 如果是素数,输出该数;4. 如果不是素数,输出该数的所有质因数;输出该数的最大质因数;输出该数的因数个数。
实验步骤3. 编写一个函数`isPrime`,用于判断一个数字是否为素数。
函数定义如下:matlabfunction result = isPrime(n)result = 1; % 假设n是素数if n <= 1result = 0; % 排除小于等于1的数字return;endfor i = 2:sqrt(n)if mod(n, i) == 0result = 0; % n可以被i整除,所以n不是素数break;endendend4. 在主函数中,调用`isPrime`函数判断输入的数字是否为素数,并输出结果;5. 如果输入的数字不是素数,编写一个函数`primeFactors`,用于计算数字的所有质因数,并输出结果。
函数定义如下:matlabfunction primeFactors(n)factors = ; % 存储质因数的数组for i = 2:nwhile mod(n, i) == 0factors = [factors i]; % i是n的质因数n = n / i;endendfprintf('该数的质因数为:');disp(factors);end6. 继续在主函数中,如果输入的数字不是素数,调用`primeFactors`函数计算所有质因数并输出;7. 在主函数中,编写一个函数`maxPrimeFactors`,用于计算数字的最大质因数,并输出结果。
函数定义如下:matlabfunction maxFactor = maxPrimeFactors(n)factors = ; % 存储质因数的数组for i = 2:nwhile mod(n, i) == 0factors = [factors i]; % i是n的质因数n = n / i;endendmaxFactor = max(factors); % 计算最大质因数end8. 继续在主函数中,调用`maxPrimeFactors`函数计算数字的最大质因数并输出;9. 在主函数中,编写一个函数`factorCount`,用于计算数字的因数个数,并输出结果。
MATLAB程序设计与应用课后实验答案
A-B+eye(3)
A*B
A.*B
A^3
A.^3
A/B
B\A
[A,B]
[A([1,3],:);B^2]
运算结果:
A=[12 34 -4;34 7 87;3 65 7];B=[1 3 -1;2 0 3;3 -2 7];
A+6.*B
A-B+eye(3)
A*B
A.*B
A^3
A.^3
A/B
B\A
0 0 0 0
ans =
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
由ans,所以
2. 产生5阶希尔伯特矩阵H和5阶帕斯卡矩阵P,且求其行列式的值Hh和Hp以及它们的条件数Th和Tp,判断哪个矩阵性能更好。为什么?
解:M文件如下:
输出结果:
H =
P =
1 1 1 1 1
Columns 57 through 60
Column 61
z4 =
0 0
2. 已知:
求下列表达式的值:
(1) A+6*B和A-B+I(其中I为单位矩阵)
(2) A*B和A.*B
(3) A^3和A.^3
(4) A/B及B\A
(5) [A,B]和[A([1,3],:);B^2]
解:
M文件:
A=[12 34 -4;34 7 87;3 65 7];B=[1 3 -1;2 0 3;3 -2 7];
实验四 循环结构程序设计
一、实验目的
1. 掌握利用for语句实现循环结构的方法。
2. 掌握利用while语句实现循环结构的方法。
matlab程序设计与应用习题答案
matlab程序设计与应用习题答案Matlab程序设计与应用习题答案Matlab是一种强大的数学软件,被广泛应用于科学计算、数据分析和工程模拟等领域。
无论是学术界还是工业界,Matlab都扮演着重要的角色。
在学习和应用Matlab时,我们常常会遇到一些习题,下面我将为大家提供一些常见习题的解答。
习题一:编写一个Matlab程序,计算一个数列的和。
数列的定义如下:a(1) = 1, a(n) = a(n-1) + 2*n, 其中n大于等于2。
解答一:```matlabfunction sum = calculate_sum(n)a = zeros(1, n);a(1) = 1;for i = 2:na(i) = a(i-1) + 2*i;endsum = sum(a);end```习题二:编写一个Matlab程序,求解一个线性方程组。
方程组的定义如下:2x + 3y + z = 7, 3x - 2y + 2z = 5, x + y - z = 3。
解答二:```matlabfunction [x, y, z] = solve_equations()A = [2, 3, 1; 3, -2, 2; 1, 1, -1];b = [7; 5; 3];solution = A\b;x = solution(1);y = solution(2);z = solution(3);end```习题三:编写一个Matlab程序,实现矩阵的转置操作。
解答三:```matlabfunction transposed_matrix = transpose_matrix(matrix) [m, n] = size(matrix);transposed_matrix = zeros(n, m);for i = 1:mfor j = 1:ntransposed_matrix(j, i) = matrix(i, j);endendend```习题四:编写一个Matlab程序,实现矩阵的相乘操作。
天津工业大学matlab上机实验题答案3
“MATLAB 及其在通信中的应用” 上机实验三1————MATLAB 程序设计初步 学号 班级1、 编写.m 程序。
打开2*2的图形子窗口,按要求绘制图形:关于z 的函数有22-x y z e --=,其中[22],[22]x y ∈-∈-,子窗口1: 绘制三维螺旋曲线图,曲线颜色红色,线型为 * ,线宽为〔提示:plot3〕子窗口2:绘制三维网格曲线,加入舞台效果子窗口3:绘制三维网格曲面,且绘制等高线子窗口4:绘制三维网格曲面,函数外表颜色连续将所编程序和输出图形截图,填入到下面空白处。
〔20分〕答案:1 完成后以附件形式发送到邮箱commu_matlab2014@sohu 。
邮件主题为“班级”加“下划线”加“”加“下划线”加“实验一”,如“通信1101__实验一”,word 文件名类似,如“通信1101__实验一”。
2、 绘制球体图形,要求球体中心坐标为(4,5,6),球体半径为r=10,球体外表有15*15个小网格。
将程序写在下面空白处即可。
无需对绘制出的球体图形截图。
〔10分〕答案:[x,y,z]=sphere(15);X=x*10+4;Y=y*10+5;Z=z*10+6;mesh(X,Y,Z);3、 编写.m 程序。
打开2*2的图形子窗口,按要求绘制图形:子窗口1:绘制b=sin (a)+3的二维散点图,其中π∈a [0 2]。
指定竖条末端圆圈的填充颜色设置为绿色。
横轴对应的变量为a ,纵轴对应的变量为b子窗口2:绘制b=sin (a)+3的梯形图,其中π∈a [0 2]。
曲线颜色黑色,线型为 - ,线宽为 子窗口3:绘制z=sin(x)+cos(y)的三维散点图,其中x 1,2,3,...,10y ==。
指定竖条末端圆圈的填充颜色设置为红色。
用view 函数将方位角设置为-30。
仰角设置为40。
子窗口4:绘制22-x +y z=**e x y ()的二维等高线,其中x [33]∈-、y [33]∈-。
Matlab程序设计与应用(刘卫国 第二版)答案
%y1 蓝色实线,y2 红色虚线,y3 绿色点画线
%分四个子图(先画 2 行 2 列第 1 块)
%y1 的四种图形
%y2 %条形图 %阶梯图 %杆图 %填充图,注意必须加填充颜色 %y3
subplot(3,4,11); stem(x,y3); subplot(3,4,12); fill(x,y3,'b'); 3 clear; x=-5:0.1:5; if x<=0 y=(x+sqrt(pi)/exp(2)); else y=0.5.*log(x+sqrt(1+x.^2)); end plot(x,y); 4 M 文件,假设文件名为 Untitled6 a=input('a='); b=input('b='); %b 单位为 pi/4 b=b*pi/4; n=input('n='); q=linspace(-2*pi,2*pi,100); p=a*sin(b+n*q); plot(q,p); hold on; %保持图形 命令窗口调用情况 >> Untitled6 a=1 b=1 n=1 >> Untitled6 a=2 b=2 n=2
n=input('n='); m=1:n; y=(6*sum(1./m.^2))^(1/2) 2:y=0; k=0; while 1 k=k+1; y=y+1/(2*k-1); if y>=3 break end end format long y=y-1/(2*k-1) k=k-1 3:a=input('a='); b=input('b='); n=1; x0=1; x1=a/(x0+b); while abs(x0-x1)>=10^(-5)|n<=500 k=a/(x1+b); x0=x1; x1=k; n=n+1; end x1 4:f(1)=1; f(2)=0; f(3)=1; for n=4:100 f(n)=f(n-1)-2*f(n-2)+f(n-3); end zuidazhi=max(f) zuixiaozhi=min(f) sn=sum(f) a=find(f>0); b=find(f<0); c=find(f==0); zhengshu=length(a) fushu=length(b) ling=length(c)
matlab课程设计参考题目
matlab课程设计参考题目一、教学目标本课程的教学目标是使学生掌握MATLAB基本语法、编程技巧和数据分析方法,培养学生运用MATLAB解决实际问题的能力。
具体目标如下:1.知识目标:(1)掌握MATLAB的基本语法和编程方法。
(2)了解MATLAB在数值计算、符号计算、数据分析、图像处理等领域的应用。
(3)熟悉MATLAB的编程环境和操作方法。
2.技能目标:(1)能够运用MATLAB进行简单的数值计算和符号计算。
(2)能够运用MATLAB进行数据分析和图像处理。
(3)能够编写简单的MATLAB程序,解决实际问题。
3.情感态度价值观目标:(1)培养学生对计算机科学和编程的兴趣。
(2)培养学生独立思考、解决问题的能力。
(3)培养学生团队协作、交流分享的良好习惯。
二、教学内容本课程的教学内容主要包括MATLAB基本语法、编程技巧和数据分析方法。
具体安排如下:1.MATLAB基本语法和编程方法:(1)MATLAB概述和编程环境。
(2)数据类型、变量和运算符。
(3)控制结构:顺序结构、分支结构、循环结构。
(4)函数和脚本文件的编写。
2.MATLAB在数值计算和符号计算中的应用:(1)线性方程组的求解。
(2)矩阵运算和特征值、特征向量计算。
(3)符号计算方法。
3.MATLAB在数据分析中的应用:(1)数据导入和导出。
(2)数据可视化:曲线绘制、图像显示。
(3)数据分析方法:统计分析、曲线拟合、信号处理。
4.MATLAB在图像处理中的应用:(1)图像显示和处理基本操作。
(2)图像滤波和增强。
(3)图像分割和特征提取。
三、教学方法本课程采用讲授法、案例分析法和实验法相结合的教学方法,以激发学生的学习兴趣和主动性。
1.讲授法:通过讲解MATLAB的基本语法、编程方法和应用案例,使学生掌握MATLAB的基本知识。
2.案例分析法:通过分析实际案例,使学生了解MATLAB在数值计算、数据分析和图像处理等领域的应用。
matlab 实验三 matlab程序设计与优化
matlab 实验三 matlab程序设计与优化Matlab是一种高级的计算机编程语言,广泛应用于科学、工程、金融和其他领域。
在Matlab实验三中,我们将学习Matlab程序设计与优化。
本文将介绍Matlab实验三的内容和要求,并提供一些有用的技巧和建议,帮助读者更好地完成实验。
实验三的主要内容包括:1. Matlab程序设计基础2. Matlab程序优化技巧3. Matlab代码调试方法4. Matlab性能分析工具5. 实例分析与练习题下面我们将逐个介绍这些内容。
1. Matlab程序设计基础在本节中,我们将学习如何使用Matlab编写简单的程序。
以下是一些重要的概念和技巧:1)变量和数据类型:在Matlab中,变量可以存储不同类型的数据,如数字、字符串、逻辑值等。
常见的数据类型包括double、char、logical等。
2)运算符:Matlab支持各种数学运算符,包括加减乘除、幂运算等。
此外,还有逻辑运算符(如and、or)和比较运算符(如==、~=)。
3)控制结构:控制结构可以控制程序执行流程。
常见的控制结构包括if语句、for循环和while循环。
4)函数:函数是一种可重复使用的代码块,可以接受输入参数并返回输出结果。
Matlab中有很多内置函数,也可以编写自己的函数。
2. Matlab程序优化技巧在本节中,我们将学习如何优化Matlab程序以提高其性能。
以下是一些重要的技巧:1)向量化:向量化是一种将循环操作转换为矩阵操作的技术。
这样可以减少程序执行时间,并且使代码更简洁。
2)预分配数组:在编写Matlab程序时,应尽可能避免动态数组分配。
相反,应该预先分配所需大小的数组。
3)使用内置函数:Matlab中有许多内置函数,它们通常比用户自定义函数更快。
因此,在编写程序时应尽可能使用内置函数。
4)避免不必要的计算:在编写程序时,应尽可能避免不必要的计算。
例如,在循环中进行重复计算或计算已知结果等。
MATLAB程序设计与应用
实验一 MATLAB 运算基础 第二题:已知A=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡7653877344-3412 B=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡72-33021-31求下列问题:1) A+6*B 和A-B+I2) A*B 和A.*B3) A^3 A.^34) A/B B\A5) [A,B] [A(1,3),:B.^2]解:>> A=[12 34 -4;34 7 87;3 65 7]; B=[1 3 -1;2 0 3;3 -2 7]; I=[1 0 0;0 1 0;0 0 1];(1)>> A+6*Bans =18 52 -1046 7 10521 53 49>> A-B+Ians =12 31 -332 8 840 67 1(2)>> A*Bans =68 44 62309 -72 596154 -5 241>> A.*Bans =12 102 468 0 2619 -130 49(3)>> A^3ans =37226 233824 48604 247370 149188 600766 78688 454142 118820>> A.^3ans =1728 39304 -64 39304 343 658503 27 274625 343(4)>> A/Bans =16.4000 -13.6000 7.600035.8000 -76.2000 50.200067.0000 -134.0000 68.0000>> B\Aans =109.4000 -131.2000 322.8000-53.0000 85.0000 -171.0000-61.6000 89.8000 -186.2000(5)>> [A,B]ans =12 34 -4 1 3 -134 7 87 2 0 33 65 7 3 -2 7>> [A([1,3],:);B^2]ans =12 34 -43 65 74 5 111 0 1920 -5 40第三题:设有矩阵A 和BA=⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡25242322212019181716151413121110987654321 B=⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡111340794-23096-1716031) 求他们的乘积C2) 将矩阵C 的右下角3*2子矩阵赋给D3) 查看matlab 工作空间的使用情况解:>> A=[1 2 3 4 5;6 7 8 9 10;11 12 13 14 15;16 17 18 19 20;21 22 23 24 25]; B=[30 16;17 -6 9;0 23 -4;9 7 0;4 13 11];(1)>> C=A*BC =93 150 77258 335 237423 520 397588 705 557753 890 717(2)>> D=C(3:5,2:3)D =520 397705 557890 717第四题:完成下列操作:1)求【100,999】之间能被21的数的个数2)建立一个字符串向量,删除其中的大写字母解:(1)>> A=100:999;>> B=rem(A,21);>> C=length(find(B==0))C =43(2)>> A='lsdhKSDLKklsdkl';>> k=find(A>='A'&A<='Z');>> A(k)=[]A =Lsdhklsdkl实验二 MATLAB矩阵分析与处理第三题: 建立一个5 5矩阵,求它的行列式的值,迹,秩,和范数。
刘卫国版MATLAB程序设计与应用课后实验六八九
实验六 高层绘图操作%第一题:程序代码如下:x=linspace(0,2*pi,101);y=(0.5+3*sin(x)./(1+x.^2)).*cos(x); plot(x,y)01234567-1-0.50.511.5%第二题: %(1)程序代码如下:x=linspace(-2*pi,2*pi,100); y1=x.^2;y2=cos(2*x); y3=y1.*y2;plot(x,y1,'b-',x,y2,'r:',x,y3,'y--'); text(4,16,'\leftarrow y1=x^2');text(6*pi/4,-1,'\downarrow y2=cos(2*x)');text(-1.5*pi,-2.25*pi*pi,'\uparrow y3=y1*y2');-8-6-4-22468-30-20-1010203040%(2)程序代码如下:x=linspace(-2*pi,2*pi,100); y1=x.^2;y2=cos(2*x); y3=y1.*y2;subplot(1,3,1);%分区 plot(x,y1);title('y1=x^2');%设置标题 subplot(1,3,2); plot(x,y2);title('y2=cos(2*x)'); subplot(1,3,3); plot(x,y3);title('y3=x^2*cos(2*x)');-10100510152025303540y1=x 2-1010-1-0.8-0.6-0.4-0.200.20.40.60.81y2=cos(2*x)-1010-30-20-1010203040y3=x 2*cos(2*x)%(3)程序代码如下:x=linspace(-2*pi,2*pi,20); y1=x.^2;subplot(2,2,1);%分区 bar(x,y1);title('y1=x^2的条形图');%设置标题 subplot(2,2,2); stairs(x,y1);title('y1=x^2的阶梯图'); subplot(2,2,3); stem(x,y1);title('y1=x^2的杆图'); subplot(2,2,4);fill(x,y1,'r');%如果少了'r'则会出错 title('y1=x^2的填充图'); %其他的函数照样做。
Matlab编程与应用习题和一些参考答案
Matlab 上机实验一、二1.安装Matlab 软件。
2.验证所学内容和教材上的例子。
3.求下列联立方程的解⎪⎪⎩⎪⎪⎨⎧=+-+-=-+=++-=--+41025695842475412743w z y x w z x w z y x w z y x>> a=[3 4 -7 -12;5 -7 4 2;1 0 8 -5;-6 5 -2 10];>> b=[4;4;9;4];>> c=a\bc =5.22264.45701.47181.59944.设⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡------=81272956313841A ,⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡-----=793183262345B ,求C1=A*B’;C2=A’*B;C3=A.*B,并求上述所有方阵的逆阵。
>> A=[1 4 8 13;-3 6 -5 -9;2 -7 -12 -8];>> B=[5 4 3 -2;6 -2 3 -8;-1 3 -9 7];>> C1=A*B'C1 =19 -82 3012 27 3-38 54 29>> C2=A'*BC2 =-15 16 -24 3663 -17 93 -10522 6 117 -6019 46 84 -10>> C3=A.*BC3 =5 16 24 -26-18 -12 -15 72-2 -21 108 -56>> inv(C1)ans =0.0062 0.0400 -0.0106-0.0046 0.0169 0.00300.0168 0.0209 0.0150>> inv(C2)Warning: Matrix is close to singular or badly scaled.Results may be inaccurate. RCOND = 8.997019e-019.ans =1.0e+015 *-0.9553 -0.2391 -0.1997 0.27000.9667 0.2420 0.2021 -0.2732-0.4473 -0.1120 -0.0935 0.1264-1.1259 -0.2818 -0.2353 0.3182>> inv(C3)Error using ==> invMatrix must be square.5.设 ⎥⎦⎤⎢⎣⎡++=)1(sin 35.0cos 2x x x y ,把x=0~2π间分为101点,画出以x 为横坐标,y 为纵坐标的曲线。