第4章例题源程序

第4章例题源程序
第4章例题源程序

例4.1 建立一个命令文件将变量a,b 的值互换,然后运行该命令文件。

程序1:

首先建立命令文件并以文件名exch.m 存盘:

clear;

a=1:10;

b=[11,12,13,14;15,16,17,18];

c=a;a=b;b=c;

a

b

然后在MA TLAB 的命令窗口中输入exch ,将会执行该命令文件。

程序2:

首先建立函数文件fexch.m :

function [a,b]=exch(a,b)

c=a;a=b;b=c;

然后在MA TLAB 的命令窗口调用该函数文件:

clear;

x=1:10;

y=[11,12,13,14;15,16,17,18];

[x,y]=fexch(x,y)

例4.2 求一元二次方程ax 2+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.3 计算分段函数:

cos(1)1010x x y x ?++=?=??≠?

x=input('请输入x 的值:');

if x==10

y=cos(x+1)+sqrt(x*x+1);

else

y=x*sqrt(x+sqrt(x));

end

y

也可以用单分支if 语句来实现:

x=input('请输入x 的值:');

y=cos(x+1)+sqrt(x*x+1);

if x~=10

y=x*sqrt(x+sqrt(x));

end

y

或用以下程序:

x=input('请输入x的值:');

if x==10

y=cos(x+1)+sqrt(x*x+1);

end

if x~=10

y=x*sqrt(x+sqrt(x));

end

y

例4.4输入一个字符,若为大写字母,则输出其对应的小写字母;若为小写字母,则输出其对应的大写字母;若为数字字符则输出其对应的数值,若为其他字符则原样输出。

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

例4.5某商场对顾客所购买的商品实行打折销售,标准如下(商品价格用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} %价格大于等于200但小于500

rate=3/100;

case num2cell(5:9) %价格大于等于500但小于1000

rate=5/100;

case num2cell(10:24) %价格大于等于1000但小于2500

rate=8/100;

case num2cell(25:49) %价格大于等于2500但小于5000

rate=10/100;

otherwise %价格大于等于5000

rate=14/100;

end

price=price*(1-rate) %输出商品实际销售价格

例 4.6 矩阵乘法运算要求两矩阵的维数相容,否则会出错。先求两矩阵的乘积,若出错,则自动转去求两矩阵的点乘。

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 %显示出错原因

例 4.7 一个三位整数各位数字的立方和等于该数本身则称该数为水仙花数。输出全部水仙花数。

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

例4.8 已知 2

2221312111n y ++++= ,当n=100时,求y 的值。 y=0;n=100;

for i=1:n

y=y+1/i/i;

end

y

在实际MA TLAB 编程中,为提高程序的执行速度,常用向量运算来代替循环操作,所以上述程序通常由下面的程序来代替:

n=100;

i=1:n;

f=1./i.^2;

y=sum(f)

例4.9 设)6sin()(5.0π

+=-x e x f x ,求s=?π

dx x f 30)(。

a=0;b=3*pi;

n=1000; h=(b-a)/n;

x=a; s=0;

f0=exp(-0.5*x)*sin(x+pi/6);

for i=1:n

x=x+h;

f1=exp(-0.5*x)*sin(x+pi/6);

s=s+(f0+f1)*h/2;

f0=f1;

end

s

上述程序来源于传统的编程思想。也可以利用向量运算,从而使得程序更加简洁,更赋有MATLAB 的特点。程序如下:

a=0;b=3*pi;

n=1000; h=(b-a)/n;

x=a:h:b;

f=exp(-0.5*x).*sin(x+pi/6);

for i=1:n

s(i)= (f(i)+f(i+1))*h/2;

end

s=sum(s)

例4.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');

例4.11 从键盘输入若干个数,当输入0时结束输入,求这些数的平均值和它们之和。

sum=0;

n=0;

x=input('Enter a number (end in 0):');

while (x~=0)

sum=sum+x;

n=n+1;

x=input('Enter a number (end in 0):');

end

if (n>0)

sum

mean=sum/n

end

例4.12 根据矩阵指数的幂级数展开式求矩阵指数。

++++++I =!!3!232n X X X X e n

X

X=input('Enter X:');

E=zeros(size(X));

F=eye(size(X));

n=1;

while norm(F,1)>0

E=E+F;

F=F*X/n;

n=n+1;

end

E

expm(X) %调用MATLAB矩阵指数函数求矩阵指数

例4.13求[100,200]之间第一个能被21整除的整数。

for n=100:200

if rem(n,21)~=0

continue

end

break

end

n

例4.14若一个数等于它的各个真因子之和,则称该数为完数,如6=1+2+3,所以6是完数。求[1,500]之间的全部完数。

例4.15 用筛选法求某自然数范围内的全部素数。

m=input('m=');

p=1:m; p(1)=0;

for i=2:sqrt(m)

for j=2*i:i:m

p(j)=0;

end

end

n=find(p~=0);

p(n)

关于在p中划去i的倍数(不包括i),可利用矩阵运算一步完成,从而得到更为简洁的程序:

m=input('m=');

p=2:m;

for i=2:sqrt(m)

n=find(rem(p,i)==0&p~=i);

p(n)=[];

end

p

例4.16编写函数文件求半径为r的圆的面积和周长。

函数文件如下:

function [s,p]=fcircle(r)

%CIRCLE calculate the area and perimeter of a circle of radii r

%r 圆半径

%s 圆面积

%p 圆周长

%2006年2月30日编

s=pi*r*r;

p=2*pi*r;

将以上函数文件以文件名fcircle.m存盘,然后在MA TLAB命令窗口调用该函数:[s,p]=fcircle(10)

例4.17利用函数文件,实现直角坐标(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

例4.18利用函数的递归调用,求n!。

function f=factor(n)

if n<=1

f=1;

else

f=factor(n-1)*n; %递归调用求(n-1)!

end

在命令文件main2.m中调用函数文件factor.m求s=1!+2!+3!+4!+5!。

s=0;

for i=1:5

s=s+factor(i);

end

s

例4.19 任意排列问题。MATLAB提供的函数randperm(n),可以产生一个从整数1到整数n的任意排列。编写一个函数来实现randperm(n)函数的功能,即给出一个由任意数组成的行向量,然后产生这个行向量元素的任意排列。

function Y=rndprm1(X)

%RNDPRM1 用for循环产生一个行向量的任意排列

%RNDPRM1(X)产生行向量X的任意排列

[m,n]=size(X);

if m>1

error('RNDPRM1 accepts as inputs only vectors');

end

Y=[]; %从一个空矩阵开始

l=n; %X的元素个数

for i=1:n

k=1+fix(l*rand); %随机选择Y的下一个元素的位置

x=X(k); %被选择的元素

Y=[Y,x]; %将X添加到Y中

X(k)=[]; %从X中删除x元素

l=l-1 ; %更新X的元素个数

end

第二个程序用函数的递归调用:

function Y=rndprm2(X)

%RNDPRM2 用递归调用产生一个行向量的任意排列

%RNDPRM2(X)产生一个X的任意排列

[m,n]=size(X);

l=n;

if m>1

error('RNDPRM2 accepts as inputs only vectors') end

if n<=1

Y=X;

else

k=1+fix(l*rand); %随机选择Y的下一个元素的位置

x=X(k); %被选择的元素

X(k)=[]; %从X中删除x元素 Z=rndprm2(X); %将剩下的元素随机排列

Y=[Z,x]; %构造输出向量

l=l-1;

end

例4.20nargin用法示例。

函数文件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)

例4.21全局变量应用示例。

先建立函数文件wadd.m,该函数将输入的参数加权相加。

function f=wadd(x,y)

global ALPHA BETA

f=ALPHA*x+BETA*y;

在命令窗口中输入:

global ALPHA BETA

ALPHA=1;

BETA=2;

s=wadd(1,2)

北京交通大学信号与系统第四章典型例题

第四章 典型例题 【例4-1-1】写出下图所示周期矩形脉冲信号的Fourier 级数。 t 周期矩形信号 分析: 周期矩形信号)(~t x 是实信号,其在一个周期[-T 0/2,T 0/2]内的定义为 ???>≤=2/ 02/ )(~ττt t A t x 满足Dirichlet 条件,可分别用指数形式和三角形式Fourier 级数表示。 解: 根据Fourier 级数系数C n 的计算公式,有 t t x T C t n T T n d e )(~ 1000j 2/2/0ω--?=== --? t A T t n d e 10j 2/2 /0ωττ 2/2/j 000e )j (ττωω=-=--t t t n n T A 2/)2/sin(00τωτωτTn n A =)2 (Sa 00τωτn T A = 故周期矩形信号)(~ t x 的指数形式Fourier 级数表示式为 t n n t n n n n T A C t x 00j 00j e )2(Sa )(e )(~ωωτωτ∑∑∞ -∞ =∞-∞=== 利用欧拉公式 2 e e )cos(00j j 0t n t n t n ωωω-+= 可由指数形式Fourier 级数写出三角形式的Fourier 级数,其为 ()t n n T A T A t x n 0001 0cos )2(Sa )2()(~ωτωττ∑ ∞ =+= 结论: 实偶对称的周期矩形信号)(~ t x 中只含有余弦信号分量。 【例4-1-2】写出下图所示周期三角波信号的Fourier 级数。 t 周期三角波信号 分析: 周期矩形信号)(~ t x 是实信号,其在一个周期 [-1/2,3/2]的表达式为

第8章 微机原理习题库

一.填空题 1.类型码为()的中断所对应的中断向量存放在0000H:0058H开始的4个连续单元中,若这4个单元的内容分别为(),则相应的中断服务程序入口地址为5060H:7080H。 2.CPU在指令的最后一个时钟周期检测INTR引脚,若测得INTR为()且IF为(),则CPU在结束当前指令后响应中断请求。 3.从CPU的NMI引脚产生的中断叫做(),它的响应不受()的影响。 4.中断类型码为15H的中断,其服务程序的入口地址一定存放在()四个连续的单元中,若这四个单元的的内容为:66H、50H、88H、30H,则其服务程序的入口地址为()。5.中断控制器8259A中的中断屏蔽寄存器IMR的作用是()。 6.CPU响应可屏蔽中断的条件是()、()和()。 7.在8086/8088微机系统中,INT20H指令中断向量存放在()中。 8.CPU在响应中断时,首先是保护(),然后将中断服务程序入口地址送入()。9.在8086/8088微机中,实现CPU关中断的指令是(),实现开中断的指令是()。10.如果CPU同时接收到中断请求和总线请求,则CPU应先响应()。 11.当用8259A管理INTR中断时,要发出EOI命令结束中断是操作()命令字。12.执行INTn指令时,其中断类型号由()提供,响应INTR时,中断类型号由()提供,响应NMI时,中断类型号由()提供,执行BOUND指令时,中断类型号由( )提供。 13.INTR、NMI均属于外中断,其中INTR被称为()中断,NMI被称为()中断。 14.80486在实模式下,当某中断源的中断类型码为70H时,中断服务程序的偏移地址和段基址将分别填入()单元和()单元。 15.CUP复位时,由于()被清零,使从INTR输入的可屏蔽中断不被响应。 16.2片8259A级联可管理()个可屏蔽中断。 17.INTR输入是()有效。 18.级连系统中,从8259A中的INT引脚应与主8259A的()连接。 19.()时,使用8259A的CS2~CS0引脚。 20.用二片8259A级连后,CPU的可屏蔽方式硬中断可扩充到()级。

初中化学第四章化学方程式(中)典型例题

第四章 化学方程式?中? ?根据化学方程式的计算? 唐荣德 典型例题 1.实验室用 g 锌跟足量的盐酸反应,可制氢气和氯化锌各多少克? 分析:在化学反应中,反应物与生成物之间的质量比是成正比关系,因此,利用正比例关系,根据化学方程式和已知的一种反应物(或生成物)的质量,可求生成物(或反应物)的质量。 解:设制得氢气的质量为x ,制得氯化锌的质量为y ………设未知量, Zn +2HCl = ZnCl 2+H 2? …………写出正确的化学方程式 65 136 2 …………写出有关物质的质量比, g y x …………写出已知量和未知数 g 7.365=y 136,y =65 g 7.3136?=7?7g …………列比例式,求解 g 7.365=x 2, x =65 g 7.32?=0?1 g 答:制得氢气 g ,氯化锌 g ,………写出简要答案。 2.对于反应:X 2+3Y 2=2Z ,可根据质量守恒定律推知下列说法一定错误的是? AD ? A ? 若X 2的式量为m ,Y 2相对分子质量为n ,则Z 的相对分子质量为?m +3n ? B ? 若m g X 2和n g Y 2恰好完全反应,则生成?m +n ? g Z C ? 若m g X 2完全反应生成n g Z ,则同时消耗?m -n ? g Y 2 D ? Z 的化学式为XY 2 解析:根据质量守恒定律,B 、C 正确。由原子守恒,可得出Z 的化学式为XY 3,故D 错。由题意知,反应物的总质量为m +3n ,而生成物的总质量为2?m +3n ?,显然违背了质量守恒定律,故A 是错的。 答案:AD 。 3.反应:A +3B =2C ,若7 g A 和一定量B 完全反应生成 g C ,则A 、B 、C 的相对分子质量之比为 ( B ) A. 14∶3∶7 B. 28∶2∶17 C. 1∶3∶2 D. 无法确定 解析:由质量守恒定律可知:B 为 g -7 g = g 。再根据化学方程式中各物质的化学计量数之比为粒子数之比,可得出它们的相对分子质量之比为:M A ∶M B ∶M C =715852 13∶∶..=7∶∶=28∶2∶17。 答案:B 。 4.将金属镁和氢氧化镁的混合物在空气中灼烧,混合物的质量在冷却后没有变化,求原混合物中镁元素的质量分数。[已知:Mg(OH)2MgO +H 2O] 解析:根据质量守恒定律,反应前后镁元素的质量不变,混合物总质量不变。剩余物为MgO ,故MgO 中Mg 元素的质量分数即为原混合物中镁元素的质量分数。

第四章:基本平面图形知识点及经典例题

第四章:基本平面图形知识点 一、寻找规律: (1) 2 n n - ◆ 数线段条数:线段上有n 个点(包括线段两个端点)时,共有(1) 2 n n -条线段 ◆ 数角的个数:以0为端点引n 条射线,当∠AOD<180°时, 则(如图)?小于平角的角个数为(1) 2 n n -. ◆ 数直线条数:过任三点不在同一直线上的n 点一共可画(1) 2 n n -条直线. ◆ 数交点个数:n 条直线最多有(1) 2 n n -个交点. ◆ 握手问题:数n 个人两两握手能握(1) 2 n n -次. 二、基本概念 1.线段、射线、直线 (1)线段:绷紧的琴弦、人行道横线都可以近似地看做线段. 线段的特点:是直的,它有两个端点. (2)射线:将线段向一方无限延伸就形成了射线. 射线的特点:是直的,有一个端点,向一方无限延伸. (3)直线:将线段向两个方向无限延长就形成了直线. 直线的特点:是直的,没有端点,向两方无限延伸. 2.线段的中点 把一条线段分成两条相等的线段的点,叫做线段的中点. 利用线段的中点定义,可以得到下面的结论: (1)因为AM=BM=12 AB ,所以M 是线段AB 的中点. (2)因为M 是线段AB 的中点,所以AM=BM=12 AB 或AB=2AM=2BM . 3.角 由两条具有公共端点的射线组成的图形叫做角,公共端点叫做角的顶点,两条射线叫做角的边. 角也可以看成是由一条射线绕着它的端点旋转而成的. 一条射线绕着它的端点旋转,当终边和始边成一条直线时,所成的角叫做平角.终边继续旋转,当它又和始边重合时,所成的角叫做周角. 4.角平分线 从一个角的顶点引出的一条射线,把这个角分成两个相等的角,这条射线叫做这个角的平分线. 5.两点之间的距离 两点之间的线段的长度,叫做这两点之间的距离. 6.直线的性质 经过两点有且只有一条直线,其中“有”表示“存在性”,“只有”表示“惟一性”. 7.线段的性质 两点之间的所有连线中,线段最短. 三、线段、角的表示方法 线段的记法: ①用两个端点的字母来表示 ②用一个小写英文字母表示 射线的记法: 用端点及射线上一点来表示,注意端点的字母写在前面 直线的记法: ①用直线上两个点来表示 ②用一个小写字母来表示 角的表示:①用三个大写字母表示,表示顶点的字母写在中间:∠AOB ; ②用一个大写字母表示:∠O ; ③用一个希腊字母表示:∠a; ④用一个阿拉伯数学表示:∠1。 四、线段、角的比较 度量法 叠合法 1.作一条线段等于已知线段 作法: O A 顶点 边 边 B a 1 O A 射线OA A B a 直线AB 直线a

c语言程序设计-向艳-书上例题源代码教学提纲

第五章函数 1.定义一个求两个整数和的函数 int sum(x,y) int x,y; { int z; z=x+y; return(z); } 2.编写函数求两个数的最大值 #include float max(float x,float y) { float z; if(x>y) z=x; else z=y; return (z); } void main() { float a,b,c; scanf("%f%f",&a,&b); c=max(a,b); printf("max=&f\n",c); } 3.计算并输出一个圆台两底面积之和 #include float area(float x,float y) { float s; s=3.1415*(x*x+y*y); return s; } void printstar() { int i; for(i=0;i<30;i++) printf("*"); printf("\n"); } void main() {

float r1,r2,s; printstar(); scanf("%f,%f",&r1,&r2); s=area(r1,r2); printf("s=%.2f\n",s); printstar(); } 4.实参求值顺序的例子 #include int fun(int a,int b) { if (a>b) return 1; else if (a==b) return 0; else return -1; } void main() { int k=3,s; s=fun(k,++k); printf("s=%d\n",s); } 5.计算Σn i=1 i #include void main() { void s(int); int n; printf("input number\n"); scanf("%d",&n); s(n); printf("n=%d\n",n); } void s(int n) { int i; for(i=n-1;i>=1;i--) n=n+i; printf("n=%d\n",n); } 6.全局变量被“屏蔽” #include

第06章_MATLAB数值计算_例题源程序汇总

第6章 MATLAB 数值计算 例6.1 求矩阵A 的每行及每列的最大和最小元素,并求整个矩阵的最大和最小元素。 1356 78256323578255631 01-???? -? ?=???? -??A A=[13,-56,78;25,63,-235;78,25,563;1,0,-1]; max(A,[],2) %求每行最大元素 min(A,[],2) %求每行最小元素 max(A) %求每列最大元素 min(A) %求每列最小元素 max(max(A)) %求整个矩阵的最大元素。也可使用命令:max(A(:)) min(min(A)) %求整个矩阵的最小元素。也可使用命令:min(A(:)) 例6.2 求矩阵A 的每行元素的乘积和全部元素的乘积。 A=[1,2,3,4;5,6,7,8;9,10,11,12]; S=prod(A,2) prod(S) %求A 的全部元素的乘积。也可以使用命令prod(A(:)) 例6.3 求向量X =(1!,2!,3!,…,10!)。 X=cumprod(1:10) 例6.4 对二维矩阵x ,从不同维方向求出其标准方差。 x=[4,5,6;1,4,8] %产生一个二维矩阵x y1=std(x,0,1) y2=std(x,1,1) y3=std(x,0,2) y4=std(x,1,2) 例6.5 生成满足正态分布的10000×5随机矩阵,然后求各列元素的均值和标准方差,再求这5列随机数据的相关系数矩阵。 X=randn(10000,5); M=mean(X) D=std(X) R=corrcoef(X)

例6.6 对下列矩阵做各种排序。 185412613713-?? ??=?? ??-?? A A=[1,-8,5;4,12,6;13,7,-13]; sort(A) %对A 的每列按升序排序 -sort(-A,2) %对A 的每行按降序排序 [X,I]=sort(A) %对A 按列排序,并将每个元素所在行号送矩阵I 例6.7 给出概率积分 2 (d x x f x x -? e 的数据表如表6.1所示,用不同的插值方法计算f (0.472)。 x=0.46:0.01:0.49; %给出x ,f(x) f=[0.4846555,0.4937542,0.5027498,0.5116683]; format long interp1(x,f,0.472) %用默认方法,即线性插值方法计算f(x) interp1(x,f,0.472,'nearest') %用最近点插值方法计算f(x) interp1(x,f,0.472,'spline') %用3次样条插值方法计算f(x) interp1(x,f,0.472,'cubic') %用3次多项式插值方法计算f(x) format short 例6.8 某检测参数f 随时间t 的采样结果如表6.2,用数据插值法计算t =2,7,12,17,22,17,32,37,42,47,52,57时的f 值。 T=0:5:65; X=2:5:57;

最新新浙教版七年级上册数学第四章《代数式》知识点及典型例题.docx

新浙教版七年级上册数学第四章《代数式》知识点及典型例题 意义:能把数和数量关系一般化地、简明地表示出来 用字母表示数 举例如用“ a+b=b+a”表示加法的交换律就非常地简洁明了 代数式概念:由数、表示数的字母和运算符号组成的数学表达式称为代数式,这里的运算是指 加、减、乘、除、乘方和开方。特别规定:单独一个数或者一个字母也称为代数式 意义:代数式可以简明地、具有普遍意义地表示实际问题中的量 列代数式:特别注意找规律这种类型的题目 直接代入法 代数式的值 整体代入法 定义:由数与字母或字母与字母相乘组成的代数式叫做单项式。特别规定:单 独一个数或一个字母也叫单项式 代数式 单项式系数:单项式中的数字因数叫做这个单项式的系数 次数:一个单项式中,所有字母的指数的和叫做这个单项式的的次数 整式多项式定义:由几个单项式相加组成的代数式叫做多项式 多项式的项:在多项式中,每个单项式叫做多项式的项 多项式多项式的次数:次数最高的项的次数就是这个多项式的次数 常数项:不含字母的项叫做常数项 多项式的命名:几次几项式 同类项:多项式中,所含字母相同,并且相同字母的指数也相同的项叫做同类项 合并同类项:把多项式中的同类项合并为一项的过程叫做合并同类项 合并同类项 合并同类项的法则:把同类项的系数相加,所得的结果作为系数,字母与字母的指 数不变 去括号法则:括号前面是“+”号,把括号和它前面的“+”号去掉,括号里各项都不变; 括号前是“—” ,把括号和它前面的“—”号去掉,括号里各项都改变符号 整式的加减 整式加减的步骤:先去括号,再合并同类项 关于整式加减的简单应用:如求图形的面积等 单项式 整式 关于代数式分类的拓展代数式 有理式 多项式 分式 无理式 (被开方数含有字母 )

第2章例题源程序

例2.1 计算表达式 i 27147cos 5-++? 的值,并将结果赋给变量x ,然 后显示出结果。 x=(5+cos(47*pi/180))/(1+sqrt(7)-2*i) %计算表达式的值 例2.2 利用M 文件建立MYMAT 矩阵。 (1)启动有关编辑程序或MATLAB 文本编辑器(见第4章),并输 入待建矩阵: MYMAT=[101,102,103,104,105,106,107,108,109 ; 201,202,203,204,205,206,207,208,209; 301,302,303,304,305,306,307,308,309]; (2)把输入的内容存盘(设文件名为mymatrix.m)。 (3)在MATLAB 命令窗口中输入mymatrix ,即运行该M 文件,就会自动建立一个名为MYMAT 的矩阵,可供以后使用。 例2.3 建立5阶方阵A ,判断A 的元素是否能被3整除。 A =[24,35,13,22,63;23,39,47,80,80; ... 90,41,80,29,10;45,57,85,62,21;37,19,3 1,88,76] P=rem(A,3)==0 %判断A 的元素是否可以被3整 除 例2.4 在[0,3π]区间,求y=sin(x)的值。要求: (1)消去负半波,即(π,2π)区间内的函数值置0。

2 (2) (3π,32π)和(37π,38π)区间内取值均为sin 3 π。 方法1: x=0:pi/100:3*pi; y=sin(x); y1=(x2*pi).*y; %消去负半波 q=(x>pi/3&x<2*pi/3)|(x>7*pi/3&x<8*pi/3); qn=~q; y2=q*sin(pi/3)+qn.*y1; %按要求处理第 (2)步 方法2: x=0:pi/100:3*pi; y=sin(x); y1=(y>=0).*y; %消去负半波 p=sin(pi/3); y2=(y>=p)*p+(y=10 & A<=20) ans = 3 6 7 例2.6 建立一个字符串向量,然后对该向量做如下处理:

第四章基本平面图形典型例题

第四章基本平面图形练习题 典型考题一: 线段的中点问题 1.已知线段AB=10cm,在AB的延长线上取一点C,使AC=16cm,则线段AB的中点与AC的中点的距离为 2.如果A,B,C三点在同一条直线上,且线段AB=4cm, BC=2cm,则那么A,C两点之间的距离为 3.已知线段AB=20cm,在直线AB上有一点C,且BC=10cm,M是线段AC的中点,求线段AM的长. 4.如图,点C在线段AB上,AC=8cm,CB=6cm,点M,N分别是AC,BC的中点. (1)求线段MN的长; (2)若C为线段AB上任一点,满足AC+CB=acm,其它条件不变,你能猜想MN的长度吗并说明理由;(3)若C在线段AB的延长线上,且满足AC﹣BC=bcm,M、N分别为AC、BC 的中点,你能猜想MN的长度吗?请画出图形,写出你的结论,并说明理由;(4)你能用一句简洁的话,描述你发现的结论吗? 典型考题二: 角的平分线问题 1.已知:OC是∠AOB的平分线,若∠AOB=58°,则∠AOC= 2.如图,OC是∠AOB的平分线,OD平分∠AOC,若∠COD=25°,则∠AOB的度数为 3.如图,∠AOB=90°,∠BOC=30°,OM平分∠AOC,ON平分∠BOC, (1)求∠MON的度数。 (2)如果(1)中∠AOB=α,其他条件不变,求∠MON的度数。 (3)如果(1)中∠BOC=β(β为锐角),其他条件不变,求∠MON的度数。 (4)从(1)(2)(3)的结果你能看出什么规律? 4.已知∠AOB=120°,∠AOC=30°,OM平分∠AOC,ON平分∠AOB, (1)求∠MON的度数; (2)通过(1)题的解法,你可得出什么规律? 5.已知∠AOB是一个直角,作射线OC,再分别∠AOC和∠BOC的平分线OD、OE.(1)如图①,当∠BOC =70°时,求∠DOE的度数;

第十章 输入输出系统习题

第十章输入输出系统习题 一、单项选择题: 1、“总线忙”信号是由__ __建立的。 A.获得总线控制权的设备B.发出“总线请求”的设备 C.总线控制器D.CPU 2、在不同速度的设备之间传送数据__ __。 A.必须采用同步控制方式B.必须采用异步控制方式 C.可以选用同步方式,也可选用异步方式D.必须采用应答方式 3、挂接在总线上的多个部件___ _。 A.只能分时向总线发送数据,并只能分时从总线接收数据 B.只能分时向总线发送数据,但可同时从总线接收数据 C.可同时向总线发送数据,并同时从总线接收数据 D.可同时向总线发送数据,但只能分时从总线接收数据 4、总线从设备是____。 A.掌握总线控制权的设备 B.申请作为从设备的设备 C.被主设备访问的设备D.总线裁决部件 5、假设某系统总线在一个总线周期中传输4个字节信息,一个总线周期占用2个时钟周期,总线时钟频率为10MHz,则总线带宽是__ __。 A.10 MB/s B.20 MB/s C.40 MB/s D.80 MB/s 6、波特率表示传输线路上____。 A.信号的传输速率B.有效数据的传输速率 C.校验信号的传输速率D.干扰信号的传输速率 7、中断系统中的断点是指____。 A.子程序入口地址B.中断服务子程序入口地址 C.中断服务程序入口地址表D.中断返回地址 8、显示器的主要参数之一是分辨率,其含义是____。 A.显示屏幕的水平和垂直扫描频率 B.显示屏幕上光栅的列数和行数 C.可显示不同颜色的总线 D.同一个画面允许显示不同颜色的最大数目 9、下列选项中,能引起外部中断的事件是____。 A.键盘输入B.除数为0 C.浮点运算下溢D.访存缺页 10.CPU响应中断时,最先完成的两个步骤是_ __和保护现场信息。 A.开中断 B.恢复现场 C.关中断 D.不可屏蔽中断 11、在独立编址方式下,存储单元和I/O设备是靠来区分的。 A.不同的地址代码B.不同的地址总线 C.不同的指令和不同的控制信号D.上述都不同 12、计算机系统的输入/输出接口通常是__ __。 A.CPU与存储器之间的交界面B.存储器与打印机之间的交界面 C.主机与外围设备之间的交界面D.CPU与系统总线之间的交界面 13.根据连线的数量,总线可分为串行总线和_____ ___总线

第3章例题源程序

例3.1分别建立3×3、3×2和与矩阵A同样大小的零矩阵。 (1) 建立一个3×3零矩阵。 zeros(3) ans = 0 0 0 0 0 0 0 0 0 (2) 建立一个3×2零矩阵。 zeros(3,2) ans = 0 0 0 0 0 0 (3) 设A为2×3矩阵,则可以用zeros(size(A))建立一个与矩阵A同样大小零矩阵。 A=[1 2 3;4 5 6]; %产生一个2×3阶矩阵A zeros(size(A)) %产生一个与矩阵A同样大小的零矩阵 ans = 0 0 0 0 0 0 例3.2建立随机矩阵: (1) 在区间[20,50]内均匀分布的5阶随机矩阵。 (2) 均值为0.6、方差为0.1的5阶正态分布随机矩阵。 x=20+(50-20)*rand(5) y=0.6+sqrt(0.1)*randn(5) 例3.3将101~125等25个数填入一个5行5列的表格中,使其每行每列及对角线的和均为565。 M=100+magic(5) 例3.4求4阶希尔伯特矩阵及其逆矩阵。 命令如下: format rat %以有理形式输出 H=hilb(4) H=invhilb(4) format short %恢复默认输出格式 例3.5求(x+y)5的展开式。 pascal(6) 例3.6先建立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的每行乘以一个指定常数 例3.7 求方阵A的逆矩阵,且验证A与A-1是互逆的。

第10章例题源程序

例10.1 设系统的微分方程为: ?????==-t e x x t x x 5.02'22'1 试建立系统仿真模型。 例10.2 利用Simulink 构建函数曲线y=5t 2+16。 例10.3 利用Simulink 仿真求I=? +10)1ln(dx x x 。 例10.4 有初始状态为0的二阶微分方程x"+0.2x'+0.4x=0.2u (t), 其中u(t)是单位阶跃函数,试建立系统模型并仿真。 例10.5 PID 控制器是在自动控制中经常使用的模块,在工程应用中其标准的数学模型为 )()/11()(s E N s T s T s T K s U d d i p ++= 其中采用了一阶环节来近似纯微分动作,为保证有良好的微分近似的效果,一般选N ≥10。试建立PID 控制器的模型并建立子系统。 例10.6 利用使能子系统构成一个正弦半波整流器。 例10.7 利用触发子系统将一锯齿波转换成方波。 例10.8 采用S 函数实现模块y=nx ,即模块的功能是把一个输入信号n 倍以后再输出。 (1) 利用MATLAB 语言编写S 函数。程序如下: %************************************************* %S 函数timesn.m ,其输出是输入的n 倍 %************************************************* function [sys,x0,str,ts]=timesn(t,x,u,flag,n) switch flag, case 0 %初始化 [sys,x0,str,ts]=mdlInitializeSizes; case 3 %计算输出量 sys=mdlOutputs(t,x,u,n); case {1,2,4,9} %未使用的flag 值 sys=[]; otherwise %出错处理 error(['Unhandle flag=',num2str(flag)]); end %************************************************* %mdlInitializeSizes :当flag 为0 时进行整个系统的初始化 %************************************************* function [sys,x0,str,ts]=mdlInitializeSizes(T) %调用函数simsizes 以创建结构体sizes

高三数学典型例题解析:第四章 数列

第四章 数列 §4.1等差数列的通项与求和 一、知识导学 1.数列:按一定次序排成的一列数叫做数列. 2.项:数列中的每一个数都叫做这个数列的项,各项依次叫做这个数列的第1项(或首项),第2项,…,第n 项,…. 3.通项公式:一般地,如果数列{a n }的第n项与序号n之间的关系可以用一个公式来表示,那么这个公式叫做这个数列的通项公式. 4. 有穷数列:项数有限的数列叫做有穷数列. 5. 无穷数列:项数无限的数列叫做无穷数列 6.数列的递推公式:如果已知数列的第一项(或前几项)及相邻两项(或几项)间关系可以用一个公式来表示,则这个公式就叫做这个数列的递推公式.递推公式是给出数列的一种重要方法,其关健是先求出a 1,a 2,然后用递推关系逐一写出数列中的项. 7.等差数列:一般地,如果一个数列从第二项起,每一项减去它的前一项所得的差都等于同一个常数,那么这个数列就叫做等差数列,这个常数叫做等差数列的公差,公差通常用d表示. 8.等差中项:如果a,A,b这三个数成等差数列,那么A= 2b a +.我们把A=2 b a +叫做a和b的等差中项. 二、疑难知识导析 1.数列的概念应注意几点:(1)数列中的数是按一定的次序排列的,如果组成的数相同而排列次序不同,则就是不同的数列;(2)同一数列中可以出现多个相同的数;(3)数列看做一个定义域为正整数集或其有限子集({1,2,3,…,n })的函数. 2.一个数列的通项公式通常不是唯一的. 3.数列{a n }的前n 项的和S n 与a n 之间的关系:?? ?≥-==-). 2(),1(1 1 n S S n S a n n n 若a 1适合 a n (n>2),则n a 不用分段形式表示,切不可不求a 1而直接求a n . 4.从函数的角度考查等差数列的通项公式:a n = a 1+(n-1)d=d ·n+ a 1-d, a n 是关于n 的一次式;从图像上看,表示等差数列的各点(n,n a )均匀排列在一条直线上,由两点确定一条直线的性质,不难得出,任两项可以确定一个等差数列. 5、对等差数列的前n 项之和公式的理解:等差数列的前n 项之和公式可变形为 n d a n d S n )2(212-+= ,若令A =2d ,B =a 1-2 d ,则n S =An 2+Bn.6、在解决等差数列问题时,如已知,a 1,a n ,d ,n S ,n 中任意三个,可求其余两个。 三、经典例题导讲 [例1]已知数列1,4,7,10,…,3n+7,其中后一项比前一项大3.(1)指出这个数列的通项公式;(2)指出1+4+…+(3n -5)是该数列的前几项之和.

verilog源代码第8.9章例题

第八章语法概念总复习练习 1)以下给出了一个填空练习,请将所给各个选项根据电路图,填入程序中的适当位置。 a s s i g n m o d u l e;~| &i n p u t o u t p u t i n p u t s o u t p u t s e n d m o d u l e A , B , C , D AOI ( A, B, C, D, F ) input A,B,C,D; output F; assign F = ((A&B)&(C&D)); endmodule

2〕 在这一题中,我们将作有关层次电路的练习,通过这个练习,你将加深对模块间调 用时,管脚间连接的理解。假设已有全加器模块FullAdder,若有一个顶层模块调用此全加器,连接线分别为W4,W5,W3,W1和W2。请在调用时正确地填入I/O 的对应信号。 module FullAdder(A,B,Cin,Sum,Cout); input A, B, Cin; output Sum, Cout; endmodule 3) initial begin end initial SEL=0; A=0; B=0; #10 A=1; #10 SEL=1; #10 B=1; $monitor (SEL , A ,B , ,F) ; reg A, B , SEL; wire F; A Sum W1 W2 W3 W4 W5 B Cin Count

endmodule 标准答案: module TestFixture reg A,B,SEL; wire F; MUX2M(SEL,A,B,F); initial begin SEL=0; A=0; B=0; #10 A=1; #10 SEL=1; #10 B=1; end initial $monitor(SEL,A,B,,F); endmodule 4)指出下面几个信号的最高位和最低位。 reg [1:0] SEL; input [0:2] IP; wire [16:23] A; 标准答案: MSB:SEL[1] MSB:IP[0] MSB:A[16] LSB:SEL[0] LSB:IP[2] LSB:A[23] 5)P,Q,R都是4bit的输入矢量,下面哪一种表达形式是正确的。 1)input P[3:0],Q,R; 2)input P,Q,R[3:0]; 3)input P[3:0],Q[3:0],R[3:0]; 4)input [3:0] P,[3:0]Q,[0:3]R; 5)input [3:0] P,Q,R; 标准答案:5) 6)请将下面选项中的正确答案填人空的方括号中。 1. (0:2) 2. (P:0) 3. (Op1:Op2) 4.(7:7) 5. (2:0) 6. (7:0) reg [7:0] A; reg [2:0] Sum, Op1, Op2; reg P, OneBit; initial begin Sum=Op1+Op2; P=1; A[ ]=Sum; .....

概率论典型例题第4章

第四章 大数定律与中心极限定理 例1.设随机变量X 和Y 的数学期望分别为-2和2,方差分别为1和4,而相关系数为-0.5,则根据切比雪夫不等式有≤≥+}6{Y X P 。 分析:切比雪夫不等式:2{}DX P X EX εε?≥≤或2{}1DX P X EX εε?<≥?, 显然需用到前一不等式,则只需算出()E X Y +与()D X Y +即可。 解:由于 0)(=+Y X E , ()2(,)2XY D X Y DX DY Cov X Y DX DY ρ+=++=++14212(0.5)3=++×××?=, 故由切比雪夫不等式 1216 )(}6{2=+≤≥+Y X D Y X P 。 注:还是用到第三章数字特征的一些性质。 除了切比雪夫不等式本身,这也是另外的知识点。 例2.设()0(0)g x x ><<+∞,且为非降函数。 设X 为连续型随机变量且[()]E g X EX ?存在。 试证对任意0ε>,有 [()] {}()E g X EX P X EX g εε??≥≤。 分析:证明的结论形式与切比雪夫不等式非常相似,利用切比雪夫不等式的证明思想试试看。 证明:设随机变量X 的概率密度为()f x ,则有 {}()x EX P X EX f x dx εε?≥?≥= ∫ 由于()0g x >,且非降,故当X EX ε?≥时,有 ()()g X EX g ε?≥,() 1()g X EX g ε?≥, 所以

(){}()()()x EX x EX g X EX P X EX f x dx f x dx g εεεε?≥?≥??≥= ≤∫∫ 1()()()g X EX f x dx g ε+∞?∞ ≤?∫ [()] ()E g X EX g ε?=。 注:这是切比雪夫不等式的推广。 当2()g x x =时,即为切比雪夫不等式。 例3.设随机变量序列12,,,n X X X L 相互独立,且都服从参数为2的指数分 布,则当n →∞时,21 1n n i i Y X n ==∑依概率收敛于 。 (A ) 0 (B ) 12 (C ) 14 (D ) 1 分析:出现依概率收敛就要考虑应用大数定律,题设给出的是一列独立同分布的随机变量序列,自然会想到辛钦大数定律。 解:由题设12,,,n X X X L 独立同分布于参数为2的指数分布,因此22212,,,n X X X L 也都独立同分布,且它们共同的期望值为 2 22111()422i i i EX DX EX ??=+=+=????。 根据辛钦大数定律,当n →∞时,21 1n n i i Y X n ==∑依概率收敛于其期望值12,故应选择选项B 。 注:几个大数定律条件、结论都非常相似,下面对其条件进行一下比较: 伯努利大数定律和辛钦大数定律都要求随机变量序列有独立性、同分布和有限数学期望。 切比雪夫大数定律对条件有所放宽,不要求同分布,但要求有某种独立性。 但是只有辛钦大数定律不要求方差存在。 同时要注意大数定律中所给的假设条件都是大数定律成立的充分条件,切不

第4章例题源程序

例4.1 建立一个命令文件将变量a,b 的值互换,然后运行该命令文件。 程序1: 首先建立命令文件并以文件名exch.m 存盘: clear; a=1:10; b=[11,12,13,14;15,16,17,18]; c=a;a=b;b=c; a b 然后在MA TLAB 的命令窗口中输入exch ,将会执行该命令文件。 程序2: 首先建立函数文件fexch.m : function [a,b]=exch(a,b) c=a;a=b;b=c; 然后在MA TLAB 的命令窗口调用该函数文件: clear; x=1:10; y=[11,12,13,14;15,16,17,18]; [x,y]=fexch(x,y) 例4.2 求一元二次方程ax 2+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.3 计算分段函数: cos(1)1010x x y x ?++=?=??≠? x=input('请输入x 的值:'); if x==10 y=cos(x+1)+sqrt(x*x+1); else y=x*sqrt(x+sqrt(x)); end y 也可以用单分支if 语句来实现: x=input('请输入x 的值:'); y=cos(x+1)+sqrt(x*x+1); if x~=10 y=x*sqrt(x+sqrt(x)); end

第6章软件编码一、填空题(20小题)1、源程序中加注释是帮助理解程序

第6章软件编码 一、填空题(20小题) 1、源程序中加注释是帮助理解程序的重要手段,注释分为( )、( )两类。答案:序言性注释、功能性注释 2、通常考虑选用语言的因素有( )、( )、( )、( )和( )。 答案:项目的应用领域、软件开发的方法、软件执行环境、算法与数据结构的复杂性、软件开发人员的知识 3、从软件工程的观点,语言的工程特性是指( )、( )、( )和( )。 答案:可移植性、开发工具的可利用性、软件的可重用性、可维护性 4、编写操作系统、编译系统等系统软件时,可选用( )、( )、( )和( )等。 答案:汇编语言、C语言、Pascal语言、Ada语言 5、效率是一个( )要求,目标在( )给出。 答案:性能、需求分析 6、提高程序效率的根本途径在于选择良好的( )、良好的( ),而不是靠编程时对程序语句做调整。 答案:设计方法、数据结构与算法 7、语句构造的原则是( ),不能为了追求效率而使代码( )。 答案:简单直接、复杂化 8、程序设计语言的心理特性在语言中的表现形式为( )、( )、( )、( )和( )。 答案:歧义性、简洁性、局部性、顺序性、传统性 9、语言的心理特性在语言中的表现形式有:( )、( )、( )、( )和( )。 答案:歧义性、简洁性、局部性、顺序性、传统性 10、程序设计语言的简洁性是指人们必须记住的( )的数量。人们要掌握一种语言,需要记住的成分数量越多,简洁性越( )。 答案:语言成分、差 11、在软件的设计中占有极其重要地位的是软件功能结构,它是联系( )跟开发者的规格说明。 答案:用户 12、贯穿于软件生存期中的一个极为重要的问题是( )。 答案:软件质量 13、为了做好软件质量评价,必须在( )定义其质量需求。 答案:开发前

第四章典型例题计算

典型例题计算 例1 20℃时,当HCl 的分压力为1.013×105Pa ,它在苯中的平衡组成(以摩尔分数表示)为0.0425。若20℃时纯苯的蒸气压为0.100×105Pa ,问苯与HCl 的总压力为1.013×105 Pa 时,100g 苯中至多可以溶解HCl 多少克?(已知HCl 的M = 36.46,C 6H 6的M = 78.11。) 分析:可按理想稀溶液处理,理想稀溶液中溶剂(苯)遵守拉乌尔定律,溶质(HCl )遵守亨利定律。 解: p HCl =k x ·x HCl 根据,()()*** HCl HCl HCl HCl 1x x p p p k x p x p k p x =+=+-=+-苯苯 苯 苯 因为 解得:n HCl = 0.0513mol 则m HCl = n HC l·M HCl = 0.0513mol×36.46g·mol - 1=1.87g 例2 在330.3K ,丙酮(A)和甲醇的液态混合物在101325Pa 下平衡,平衡组成为液相x A =0.400,气相y A =0.519。已知330.3K 纯组分的蒸气压力 *A p =104791Pa ,*B p =73460Pa 。试说明该液态混合物是否为理想液态混合物,为什么?若不是理想液态混合物,计算各组分的活度和活度因子。(均以纯液态为标准态) 分析:要说明该液态混合物是否为理想液态混合物,就要看此液态混合物中的任一组分是否符合拉乌尔定律。真实液态混合物活度的计算是将拉乌尔定律中的浓度用活度来代替。 解:A 在气相中的分压力为:p A =py A =(101325Pa×0.519)=52588Pa 而根据拉乌尔定律,* A A p p =x A =104791Pa×0.400=41916Pa 两者不相等,说明不符合拉乌尔定律,因此不是理想液态混合物

c++书中例题源代码第13章

【例13.1】使用预定义的插入符进行屏幕输出。 #include #include void main( ) { cout<<"The length of \"This a string\" is: " < void main( ) { int x=90; int *px=&x; cout<<"x="< void main( ) { cout<<'B'<<'E'<<'I'<<'J'<<'I'<<'N'<<'G'<<'\n'; cout.put('B').put('E').put('I').put('J').put('I').put('N').put('G').put('\n'); char c1='A',c2='B',c3='C'; cout.put(c1).put(c2).put(c3).put('\n'); } 【例13.5】分析下列程序的输出结果,注意该程序中write( )函数的用法。

相关文档
最新文档