matlab使用invfreqs出错,MATLAB实验2016剖析.doc

MATLAB实验2016剖析

实验一 MATLAB基本运算

(五)矩阵的运算

运算符:+(加)、-(减)、*(乘)、/(右除)、\(左除)、^(乘方)、’(转置)等;

常用函数:det(行列式)、inv(逆矩阵)、rank(秩)、eig(特征值、特征向量)、rref(化矩阵为行最简形)

例5:

>> A=[2 0 –1;1 3 2]; B=[1 7 –1;4 2 3;2 0 1];

>> M = A*B % 矩阵A与B按矩阵运算相乘

>> det_B = det(B) % 矩阵A的行列式

>> rank_A = rank(A) % 矩阵A的秩

>> inv_B = inv(B) % 矩阵B的逆矩阵

>> [V,D] = eig(B) % 矩阵B的特征值矩阵V与特征向量构成的矩阵D

>> X = A/B % A/B = A*B-1,即XB=A,求X

>> Y = B\A % B\A = B-1*A,即BY=A,求Y

(六)上机练习

1.练习数据和符号的输入方式,将前面的命令在命令窗口中执行通过;

2.输入A=[7 1 5;2 5 6;3 1 5],B=[1 1 1; 2 2 2; 3 3 3],在命令窗口中执行下列表达式,掌握其含义:

A(2, 3) A(:,2) A(3,:) A(:,1:2:3) A(:,3).*B(:,2) A(:,3)*B(2,:) A*B A.*B A^2 A.^2 B/A B./A

3.输入C=1:2:20,则C(i)表示什么?其中i=1,2,3,…,10;>> c=1:2:20

>> i=1:10

>> c(i)

4.查找已创建变量的信息,删除无用的变量;

5.创建如下变量:

在0-3 均匀的产生10个点值,形成10维向量>> A=linspace(0,3,10))

3*3阶单位距阵>> B=eye(3),随机距阵 >> randn(3,3),魔方距阵>> magic(3),全0距阵>> zeros(3,3),全1距阵>> E=ones(3,3),

求方程组的解 >> A=[1 2 2;2 1 2;3 4 5];

B=[2 5 6];

x=A/B

x =

0.3692

0.3231

0.8615

实验二 MATLAB程序设计?

?三、实验内容:

??1、熟悉MATLAB程序编辑与设计环境

2、用for循环语句实现求1~100的和。>> sum=0;

for i=1:100

sum=sum+i;

end

>> sum

?3、用for循环语句实现编写一个求n阶乘的函数文件。function y=a(n)

y=1;

for i=1:n

y=y*i;

end

?4、?利用for循环求1!+2!+3!+?…?+5!的值>> sum=0;y=1;

for i=1:5

y=y*i;

sum=sum+y;

end

>> sum

sum =

153

>>

?5、已知一维数组A=[2,4,5,8,10],B=[4,6,9,3,4],用for循环语句实现,

求和函数可用sum()。>> A=[2 4 5 8 10];

B=[4 6 9 3 4];

sum=0;

for i=1:5

C(i)=(A(i)*B(5-i+1));

sum=sum+C(i);

end

>> sum

sum =

153

>>

6、编写程序,计算1+3+5+7+…+(2n+1)的值(用input语句输入n 值)。>> sum=0;

n=input('Please input a number:');

t=2*n+1;

for i=1:2:t

sum=sum+i;

end

四 运行下列参考例题程序,观察运行结果:

用for循环计算100!和

解:

s=0;

p=1;

for m=1:100

s=s+m;

p=p*m;

end

disp(['100!=',num2str(p)])

disp(['sigma(1-100)=',num2str(s)])

编程计算函数y=|x|+|x-2|,x从屏幕输入

解:

x=input('x=')

if x<0

y=-x-(x+2);

elseif 0

y=2;

else y=2*x-2;

end

disp(['y=',num2str(y)])

分别用for循环和while循环求1000以内所有奇数之和。

解:方法一用for循环

s=0;

for m=1:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值