实验五 函数文件

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验五函数文件

一、实验目的

1、理解函数文件的概念。

2、掌握定义和调用MATLAB函数的方法。

二、实验内容

1、定义一个函数文件,求给定复数的指数、对数、正弦和余弦,

并在命令文件中调用该函数文件。

function[a,b,c,d]=num(x)

a=exp(x)

b=log(x)

c=sin(x)

d=cos(x)

end

> num(8i)

a =

-0.1455 + 0.9894i

b =

2.0794 + 1.5708i

c =

0 +1.4905e+003i

d =

1.4905e+003

ans =

-0.1455 + 0.9894i

2、一个物理系统可用下列方程组来表示:

111211

12

220cos sin 0sin 0cos 000sin 000cos 1a m m a m g m N m N m g θθθθθθ--⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥=⎢⎥⎢⎥⎢⎥-⎢⎥⎢⎥⎢⎥-⎣⎦⎣⎦⎣⎦

从键盘输入m 1、m 2和θ的值,求a 1、a 2、N 1、N 2的值。其中g 取’

9.8,输入θ时以角度为单位。

要求:定义一个求解线性方程组AX=B 的函数文件,然后在命令

文件中调用该函数文件。

function[a1,a2,N1,N2]=num(m1,m2,x)

g=9.8

A=[m1cos(x) -m1 -sin(x) 0;m1sin(x) 0 cos(x) 0;0 m2 -sin(x) 0;0 0 -cos(x) 1]

C=[m1*g;0;m2*g;0]

B=inv(A).*C

a1=B(1)

a2=B(2)

N1=B(3)

N2=B(4)

end

3、一个自然数是素数,且它的数字位置经过任意对换后仍为素数,则称是绝对素数。例如13是绝对素数。试求所有两位绝对素数。

要求:定义一个判断素数的函数文件。

function absolute_prime(n)

a=perms(num2str(n))

a=str2num(a)

b=zeros(1,length(a))

for i=1:length(a)

if isprime(a(i))

b(i)=1

end

end

c=find(b~=1)

if isempty(c)

for i=1:length(a),a(i)

end

else

disp('no')

end

for i=10:99

absolute_prime(i)

end

4、设()()()241

1

20.130.01f x x x =+-+-+,编写一个MATLAB 函数文件fx.m,

使得调用f(x)时,x 可用矩阵代入,得出的f(x)为同阶矩阵。 function a=fx(x)

a=1./((x-2).^2+0.1)+1./((x-3).^4+0.01)

end

>> fx([1 2 3;4 5 6 ;7 8 9])

a =

0.9716 10.9901 100.9091

1.2340 0.1724 0.0745

0.0437 0.0293 0.0211

ans =

0.9716 10.9901 100.9091

1.2340 0.1724 0.0745

0.0437 0.0293 0.0211

5、已知()()()

403020f y f f =+ (1)当f(n)=n+10ln ()25n +时,求y 的值。

function y =f(n)

y=n+10.*log(n.^2+5)

end

y =

0.6390

ans =

0.6390

(2)当()()

f n n n

=⨯+⨯+⨯+⋅⋅⋅++时,求y的值。

1223341

function x=f(n)

if n<=0

x=0

else

x=n.*(n+1)+f(n-1)

end

end

ans =

1.7662

相关文档
最新文档