当前位置:首页 >> 学科竞赛 >>

仿真训练题


例 1-1 绘制正弦曲线和余弦曲线。 x=[0:0.5:360]*pi/180; plot(x,sin(x),x,cos(x)); 例 1-2 求方程 3x4+7x3 +9x2-23=0 的全部根。 p=[3,7,9,0,-23]; %建立多项式系数向量 x=roots(p) %求根 例 1-3 求积分

? x log?1 ? x?dx
1 0

r />
quad(‘x.*log(1+x)’,0,1) 例 1-4 求解线性方程组

? 2 x1 ? 3 x2 ? x3 ? 4 ? ? 8 x1 ? 3 x2 ? 2 x3 ? 2 ?45x ? x ? 9 x ? 17 3 ? 1 2

a=[2,-3,1;8,3,2;45,1,-9]; b=[4;2;17]; x=inv(a)*b 例 2-1 计算表达式的值,并显示计算结果。 在 MATLAB 命令窗口输入命令: x=1+2i; y=3-sqrt(17); z=(cos(abs(x+y))-sin(78*pi/180))/(x+abs(y)) 其中 pi 和 i 都是 MATLAB 预先定义的变量,分别代表代表圆周率π 和虚数单位。 输出结果是: z= -0.3488 + 0.3286i 例 2-4 建立随机矩阵: (1) 在区间[20,50]内均匀分布的 5 阶随机矩阵。 (2) 均值为 0.6、方差为 0.1 的 5 阶正态分布随机矩阵。 命令如下: x=20+(50-20)*rand(5) y=0.6+sqrt(0.1)*randn(5) 此外,常用的函数还有 reshape(A,m,n),它在矩阵总元素保持不变的前提下,将矩阵 A 重新 排成 m×n 的二维矩阵。 例 2-5 将 101~125 等 25 个数填入一个 5 行 5 列的表格中,使其每行每列及对角线的和均 为 565。 M=100+magic(5) 例 2-8 产生 5 阶随机方阵 A,其元素为[10,90]区间的随机整数,然后判断 A 的元素是否能 被 3 整除。 (1) 生成 5 阶随机方阵 A。

A=fix((90-10+1)*rand(5)+10) (2) 判断 A 的元素是否可以被 3 整除。 P=rem(A,3)==0 其中,rem(A,3)是矩阵 A 的每个元素除以 3 的余数矩阵。此时,0 被扩展为与 A 同维数的零 矩阵,P 是进行等于(==)比较的结果矩阵。 例 2-9 建立矩阵 A,然后找出大于 4 的元素的位置。 (1) 建立矩阵 A。 A=[4,-65,-54,0,6;56,0,67,-45,0] (2) 找出大于 4 的元素的位置。 find(A>4) 例 2-10 先建立 5×5 矩阵 A,然后将 A 的第一行元素乘以 1,第二行乘以 2,…,第五行乘 以 5。 A=[17,0,1,0,15;23,5,7,14,16;4,0,13,0,22;10,12,19,21,3;... 11,18,25,2,19]; D=diag(1:5); D*A 例:求下列极限 %用 D 左乘 A,对 A 的每行乘以一个指定常数

lim
x ?a

x(esin x ? 1) ? 2(e tan x ?1) x?a

syms a m x; f=(x*(exp(sin(x))+1)-2*(exp(tan(x))-1))/(x+a); limit(f,x,a) ans = (1/2*a*exp(sin(a))+1/2*a-exp(tan(a))+1)/a

lim (1 ?
x ??

2t 3 x ) x

syms x t; limit((1+2*t/x)^(3*x),x,inf) ans = exp(6*t)

x ???

lim x( x 2 ? 1 ? x)

syms x; f=x*(sqrt(x^2+1)-x); limit(f,x,inf,'left') ans = 1/2

x ?2?

lim

x ? 2 ? x?2 x2 ? 4

syms x; f=(sqrt(x)-sqrt(2)-sqrt(x-2))/sqrt(x*x-4); limit(f,x,2,'right') ans = -1/2 例 1 分别建立命令文件和函数文件,将华氏温度 f 转换为摄氏温度 c。 程序 1: 首先建立命令文件并以文件名 f2c.m 存盘。 clear; %清除工作空间中的变量 f=input('Input Fahrenheit temperature:'); c=5*(f-32)/9 然后在 MATLAB 的命令窗口中输入 f2c,将会执行该命令文件,执行情况为: Input Fahrenheit temperature:73 c= 22.7778 程序 2: 首先建立函数文件 f2c.m。 function c=f2c(f) c=5*(f-32)/9 然后在 MATLAB 的命令窗口调用该函数文件。 clear; y=input('Input Fahrenheit temperature:'); x=f2c(y) 输出情况为: Input Fahrenheit temperature:70 c= 21.1111 x= 21.1111 例 2 输入 x,y 的值,并将它们的值互换后输出。 程序如下: x=input('Input x please.'); y=input('Input y please.'); z=x; x=y; y=z; disp(x); disp(y); 例 3 求一元二次方程 ax2 +bx+c=0 的根。 程序如下: a=input('a=?'); b=input('b=?'); c=input('c=?'); d=b*b-4*a*c;

x=[(-b+sqrt(d))/(2*a),(-b-sqrt(d))/(2*a)]; disp(['x1=',num2str(x(1)),',x2=',num2str(x(2))] 例 4 计算分段函数的值。 程序如下: x=input('请输入 x 的值:'); if x<=0 y= (x+sqrt(pi))/exp(2); else y=log(x+sqrt(1+x*x))/2; end Y 例 5 输入一个字符,若为大写字母,则输出其对应的小写字母;若为小写字母,则输 出其对应的大写字母;若为数字字符则输出其对应的数值,若为其他字符则原样输出。 c=input('请输入一个字符','s'); if c>='A' & c<='Z' disp(setstr(abs(c)+abs('a')-abs('A'))); elseif c>='a'& c<='z' disp(setstr(abs(c)- abs('a')+abs('A'))); elseif c>='0'& c<='9' disp(abs(c)-abs('0')); else disp(c); end 例 6 某商场对顾客所购买的商品实行打折销售,标准如下(商品价格用 price 来表示): price<200 没有折扣 200≤price<500 3%折扣 500≤price<1000 5%折扣 1000≤price<2500 8%折扣 2500≤price<5000 10%折扣 5000≤price 14%折扣 输入所售商品的价格,求其实际销售价格。 price=input('请输入商品价格'); switch fix(price/100) case {0,1} %价格小于 200 rate=0; case {2,3,4} rate=3/100; case num2cell(5:9) rate=5/100; case num2cell(10:24) rate=8/100; case num2cell(25:49) rate=10/100; otherwise %价格大于等于 200 但小于 500 %价格大于等于 500 但小于 1000 %价格大于等于 1000 但小于 2500 %价格大于等于 2500 但小于 5000 %价格大于等于 5000

rate=14/100; end price=price*(1-rate) %输出商品实际销售价格 例 3-7 矩阵乘法运算要求两矩阵的维数相容,否则会出错。先求两矩阵的乘积,若出 错,则自动转去求两矩阵的点乘。 程序如下: A=[1,2,3;4,5,6]; B=[7,8,9;10,11,12]; try C=A*B; catch C=A.*B; end C lasterr %显示出错原因 例 8 一个三位整数各位数字的立方和等于该数本身则称该数为水仙花数。输出全部水 仙花数。 程序如下: for m=100:999 m1=fix(m/100); %求 m 的百位数字 m2=rem(fix(m/10),10); %求 m 的十位数字 m3=rem(m,10); %求 m 的个位数字 if m==m1*m1*m1+m2*m2*m2+m3*m3*m3 disp(m) end end 例 9 已知 ,当 n=100 时,求 y 的值。 程序如下: y=0; n=100; for i=1:n y=y+1/(2*i-1); end y 例 10 写出下列程序的执行结果。 s=0; a=[12,13,14;15,16,17;18,19,20;21,22,23]; for k=a s=s+k; end disp(s'); 例 11 从键盘输入若干个数,当输入 0 时结束输入,求这些数的平均值和它们之 和。 程序如下: sum=0;

cnt=0; val=input('Enter a number (end in 0):'); while (val~=0) sum=sum+val; cnt=cnt+1; val=input('Enter a number (end in 0):'); end if (cnt > 0) sum mean=sum/cnt end 例 12 求[100,200]之间第一个能被 21 整除的整数。 程序如下: for n=100:200 if rem(n,21)~=0 continue end break end n 例 14 编写函数文件求半径为 r 的圆的面积和周长。 函数文件如下: function [s,p]=fcircle(r) %CIRCLE calculate the area and perimeter of a circle of radii r %r 圆半径 %s 圆面积 %p 圆周长 s=pi*r*r; p=2*pi*r; 例 15 利用函数文件,实现直角坐标(x,y)与极坐标(ρ ,θ )之间的转换。 函数文件 tran.m: function [rho,theta]=tran(x,y) rho=sqrt(x*x+y*y); theta=atan(y/x); 调用 tran.m 的命令文件 main1.m: x=input('Please input x=:'); y=input('Please input y=:'); [rho,the]=tran(x,y); rho the 在 MATLAB 中,函数可以嵌套调用,即一个函数可以调用别的函数,甚至调用它自 身。一个函数调用它自身称为函数的递归调用。 例 16 利用函数的递归调用,求 n! 。 n!本身就是以递归的形式定义的:

显然,求 n!需要求(n-1)!,这时可采用递归调用。递归调用函数文件 factor.m 如下: function f=factor(n) if n<=1 f=1; else f=factor(n-1)*n; End %递归调用求(n-1)!

例 17 nargin 用法示例。 函数文件 examp.m: function fout=charray(a,b,c) if nargin==1 fout=a; elseif nargin==2 fout=a+b; elseif nargin==3 fout=(a*b*c)/2; end 命令文件 mydemo.m: x=[1:3]; y=[1;2;3]; examp(x) examp(x,y') examp(x,y,3)


相关文章:
程序设计仿真练习题-答案
8086 程序设计仿真练习题 1、 数组 STRAING 中存放着多个 8 位有符号数,以“$”结束,要求 分成正数组和负数组分别存放,并统计两个数组的个数,分别存 于正、...
仿真练习题
仿真练习题_工学_高等教育_教育专区。系统仿真导论练习题 教材:齐欢、王小平编 清化大学《系统建模与仿真》 填空 1. 理发馆作为一个人工系统,该系统中的实体有...
仿真训练题
2010级高考仿真训练题 暂无评价 13页 免费仿​真​训​练​题 暂无评价|0人阅读|0次下载|举报文档例1-1 绘制正弦曲线和余弦曲线。 x=[0:0.5:360]...
函数仿真练习试题
函数仿真练习试题_高三数学_数学_高中教育_教育专区。函数经典试题,源自高三一模二模以及高考真题 函数仿真训练 1. 已知函数 f ( x) ? x ? 4 ? 9 ( x ?...
仿真训练题集
仿真训练题集_资格考试/认证_教育专区。成功建设工程造价管理基础知识仿真训练题集一、单项选择题(选择唯一正确答案的字母填入答题纸对应的( )内。 1.建设工程合同...
控制系统仿真训练作业题
控制系统仿真训练作业题_工学_高等教育_教育专区。过程控制系统仿真训练作业题,自己好不容易弄出来的,完整版 控制系统仿真训练 专 业 学生姓名 班学级号 2015.9...
PLC仿真训练题目
PLC仿真训练题目_工学_高等教育_教育专区。PLC 仿真训练题目 1. 编写一控制电动机起动和停止程序, 要求: 按下启动按钮 10 秒后,电动机 M1 起动,20 秒后,...
2016高考仿真训练理科综合试题
2016高考仿真训练理科综合试题_高三理化生_理化生_高中教育_教育专区。2016 年高考仿真训练理科综合试题本试卷分为第Ⅰ卷(选择题)和第Ⅱ卷(非选择题)两部分。其中...
《经济生活》期末考试仿真训练题
《经济生活》期末考试仿真训练题 隐藏>> 2013 年中央经济工作会议确定了稳中求进,改革创新的总基调,继续施行积极的财政 政策和稳健的货币政策,并提出 2014 年经济...
仿真套题练习二(文)
仿真题练习二(文)_语文_高中教育_教育专区。仿真题练习二(文) 一、选择题:本大题共 10 小题,每小题 5 分,共 50 分.在每小题给出的四个选项中,只...
更多相关标签:
虚拟手术仿真训练系统 | 军事仿真训练 | 电工仿真训练软件 | 用仿真数据做训练集 | 军事仿真训练网 | 仿真模拟腹腔镜训练台 | 仿真彩弹训练冲锋枪 | 仿真训练 |