欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    第七讲 matlab编程.ppt

    • 资源ID:70019965       资源大小:587KB        全文页数:21页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第七讲 matlab编程.ppt

    3/21MatlabMatlab实验实验实验实验(七)(七)(七)(七)一、循环语句:一、循环语句:forfor循环语句循环语句计数循环方式:计数循环方式:调用格式为:调用格式为:for for 循环变量循环变量=初值初值:步长:终值步长:终值 循环体语句循环体语句 endend执行过程:将初值赋给循环变量,执行循环体语句;执行过程:将初值赋给循环变量,执行循环体语句;执行完一次循环之后,循环变量自增一个步长的值,执行完一次循环之后,循环变量自增一个步长的值,然后再判断循环变量的值是否介于初值和终值之间,然后再判断循环变量的值是否介于初值和终值之间,如果满足仍然执行循环体,直至不满足为止。如果满足仍然执行循环体,直至不满足为止。MATLAB提供了两种循环方式提供了两种循环方式(1 1)for-end 循环(循环(2 2)while-end循环。循环。4/21MatlabMatlab实验实验实验实验(七)(七)(七)(七)循环的嵌套调用格式为:循环的嵌套调用格式为:for for 循环变量循环变量1=1=初值初值1:1:步长步长1:1:终值终值1 1 for for 循环变量循环变量2=2=初值初值2:2:步长步长2:2:终值终值2 2 循环体语句循环体语句 endend end end例例1.矩阵矩阵 计算各行的长度计算各行的长度.解:输入:解:输入:A=1,3,0;2,6,2;3,6,4;for i=1:3,d=norm(A(i,:)end5/21MatlabMatlab实验实验实验实验(七)(七)(七)(七)例例1.矩阵矩阵 计算各行的长度计算各行的长度.结果为:结果为:d=3.1623 d=6.6332 d=7.8102不是矩阵,若继续运算就麻烦不是矩阵,若继续运算就麻烦.若为矩阵只需将若为矩阵只需将d=norm(A(i,:)改成改成 d(i)=norm(A(i,:)6/21MatlabMatlab实验实验实验实验(七)(七)(七)(七)执执行行过过程程:若若表表达达式式的的值值为为真真时时,则则执执行行循循环环体体语语句句,执执行行后后再再判判断断表表达达式式的的值值是是否否为为真真,直直到到表达式的值为假则跳出循环。表达式的值为假则跳出循环。whilewhile循环语句循环语句条件循环方式条件循环方式注注意意:1.while1.while语语句句一一般般用用于于事事先先不不能能确确定定循循环环次次数的情况。数的情况。2.while2.while语句以语句以endend作为结束标志作为结束标志.whilewhile语句的一般调用格式为:语句的一般调用格式为:while while 表达式表达式 循环体语句循环体语句 endend7/21MatlabMatlab实验实验实验实验(七)(七)(七)(七)例例2.2.用用while-end while-end 循环求循环求 11001100之间的和之间的和.解:输入:解:输入:sum=0;i=1;while i=100 sum=sum+i;i=i+1;e end sum8/21MatlabMatlab实验实验实验实验(七)(七)(七)(七)二、条件控制语句:二、条件控制语句:if 表达式(表达式(logical expression)执行语句执行语句(statement)end 注意:在注意:在if和和logical expression(逻辑表达式逻辑表达式)之间要有之间要有一个空格。一个空格。statement(程序语句程序语句)可以是一个命令可以是一个命令,也可也可以是由逗号以是由逗号,分号隔开的若干命令或者是分号隔开的若干命令或者是 r e t u r n s。MATLAB提供了两种条件控制方式:提供了两种条件控制方式:if分支语句分支语句和和 switch分支语句。分支语句。if分支语句:分支语句:在在MATLAB中,中,if语句有语句有3种调用格式种调用格式(a)(a)单分支单分支ifif语句调用格式为语句调用格式为 9/21MatlabMatlab实验实验实验实验(七)(七)(七)(七)其执行过程为:当表达式的值为真时,则执行语句其执行过程为:当表达式的值为真时,则执行语句体,执行完之后继续执行体,执行完之后继续执行if语句的后继语句;否则跳语句的后继语句;否则跳过语句体直接执行过语句体直接执行if语句的后继语句。语句的后继语句。(b)双分支双分支if语句调用格式语句调用格式(if-else-end if-else-end 语句语句)if if 表达式表达式 语句体语句体1 1;elseelse 语句体语句体2 2;endend其执行过程为:当表达式的值为真时,执行语句体其执行过程为:当表达式的值为真时,执行语句体1,否则执行语句体,否则执行语句体2;语句体;语句体1或语句体或语句体2执行后,再执行后,再执行执行if语句的后继语句。语句的后继语句。10/21MatlabMatlab实验实验实验实验(七)(七)(七)(七)(c)(c)多分支多分支ifif语句调用格式语句调用格式if if 表达式表达式1 1语句体语句体1 1;else if else if 表达式表达式2 2语句体语句体2 2;elseelse语句体语句体3 3;endend其执行过程为:当表达式其执行过程为:当表达式1的值为真时,执行语句体的值为真时,执行语句体1,然后跳出继续执行,然后跳出继续执行if语句的后继语句;否则判断表语句的后继语句;否则判断表达式达式2的值,为真则执行语句体的值,为真则执行语句体2然后跳出继续执行然后跳出继续执行if语句的后继语句;再否则语句的后继语句;再否则 11/21MatlabMatlab实验实验实验实验(七)(七)(七)(七)例例3.计算例计算例1中矩阵的第一列的和,若等于中矩阵的第一列的和,若等于6,则从,则从矩阵矩阵A中删除该列。中删除该列。解:解:A=1,3,0;2,6,2;3,6,4;if sum(A(:,1)=6,A=A(:,2:3)end结果为结果为A=3 0 6 2 6 4例例4.对例对例1中的矩阵计算第二行的长度,若小于中的矩阵计算第二行的长度,若小于20,则从矩阵,则从矩阵A中删除该行中删除该行.解:解:if norm(A(2,:)=20,A=A(1,:);A(3,:)else A=A(1,:);ones(1,3);A(3,:)end14/21MatlabMatlab实验实验实验实验(七)(七)(七)(七)switchswitch分支结构语句分支结构语句switch语句调用格式为:语句调用格式为:switch switch 表达式表达式 case case 表达式表达式1 1 语句体语句体1 1 case case 表达式表达式2 2 语句体语句体2 2 case case 表达式表达式m m 语句体语句体m m otherwise otherwise 语句体语句体m+1m+1 end end其其执执行行过过程程为为:控控制制表表达达式式的的值值与与每每一一个个case后后面面表表达达式式的的值值比比较较,若若与与第第k(k的的取取值值为为1m)个个case后后面面的的表表达达式式k的的值值相相等等,就就执执行行语语句句体体k;若若都都不不相相同同,则则执执行行otherwise下下的的语句体语句体m+1。15/21MatlabMatlab实验实验实验实验(七)(七)(七)(七)练习练习1:计算例计算例1矩阵各列的长度,所得结果左乘矩阵矩阵各列的长度,所得结果左乘矩阵A.解:解:for i=1:3,d(i)=norm(A(:,i);endB=d*A,B=35.1581 92.0578 35.8885d能否右乘矩阵能否右乘矩阵A,为什么?为什么?练习练习2:计算例计算例1矩阵各列的长度,然后构造一个矩阵矩阵各列的长度,然后构造一个矩阵D,使得使得D各行元素都是各行元素都是A对应列的长度,再右乘矩阵对应列的长度,再右乘矩阵A.解:解:for i=1:3,D(i,:)=norm(A(:,i),endC=A*D,D=3.7417 3.7417 3.7417 9.0000 9.0000 9.0000 4.4721 4.4721 4.472116/21MatlabMatlab实验实验实验实验(七)(七)(七)(七)我们学过我们学过dist(A,B)计算计算A中每个行向量与中每个行向量与B中每个列向量之间欧氏距离,中每个列向量之间欧氏距离,A的行向量维的行向量维数必须等于数必须等于B的列向量维数的列向量维数.下面我们通过编下面我们通过编程计算并与程计算并与dist(A,B)进行比较进行比较.例例6 :A=1.14,1.78;1.18,1.96;1.20,1.86;1.26,2.00;1.28,2.00;1.30,1.96;B=1.24,1.72;1.36,1.74;1.38,1.64;1.38,1.82;1.38,1.90;1.40,1.70;1.48,1.82;1.54,1.82;1.56,2.08;计算计算A的每个行向量与的每个行向量与B的每个行向量之间距离的每个行向量之间距离.17/21MatlabMatlab实验实验实验实验(七)(七)(七)(七)解法一:解法一:dist(A,B),结果是结果是6by9的矩阵第的矩阵第i行元素行元素是是A中第中第i行分别与行分别与B中各行的距离中各行的距离.(i=1,2,6)解法二解法二.B1=B;for i=1:6,d1(i)=dist(A(i,:),B1(:,1);d5(i)=dist(A(i,:),B1(:,5);d2(i)=dist(A(i,:),B1(:,2);d6(i)=dist(A(i,:),B1(:,6);d3(i)=dist(A(i,:),B1(:,3);d7(i)=dist(A(i,:),B1(:,7);d4(i)=dist(A(i,:),B1(:,4);d8(i)=dist(A(i,:),B1(:,8);d9(i)=dist(A(i,:),B1(:,9);end d=d1;d2;d3;d4;d5;d6;d7;d8;d9 从上面的例子可知:直接利用从上面的例子可知:直接利用dist(A,B1)进进行计算简单,但是当难以简单计算时,应该知行计算简单,但是当难以简单计算时,应该知道如何利用编程实现复杂计算道如何利用编程实现复杂计算.18/21MatlabMatlab实验实验实验实验(七)(七)(七)(七)解法二:解法二:A=1.14,1.78;1.18,1.96;1.20,1.86;1.26,2.00;1.28,2.00;1.30,1.96;B=1.24,1.72;1.36,1.74;1.38,1.64;1.38,1.82;1.38,1.90;1.40,1.70;1.48,1.82;1.54,1.82;1.56,2.08;for i=1:6,na(i,:)=norm(A(i,:);end%求求A中各行范数中各行范数for k=1:9,nb(k,:)=norm(B(k,:);end%求求B中各行范数中各行范数a=A./na(:,1:2);将矩阵将矩阵A各行向量单位化各行向量单位化 b=B./nb(:,1:2);将矩阵将矩阵B各行向量单位化各行向量单位化解法一解法一:直接调用命令直接调用命令:da=normr(A);db=normr(B)例例7.将例将例6中中A的各行向量与的各行向量与B的每个行向量单位化的每个行向量单位化19/21MatlabMatlab实验实验实验实验(七)(七)(七)(七)基本的关系运算符逻辑运算 (大于)与(&)=(大于等于)非()0.A=2,1,-2;1,4,-1;-2,-1,5;u,v=eig(A)v=0.9264 0 0 0 3.3931 0 0 0 6.6805(2)n阶实对称矩阵阶实对称矩阵A为正定矩阵的充要条件是:为正定矩阵的充要条件是:A=2,1,-2;1,4,-1;-2,-1,5;rref(A)ans=1 0 0 0 1 0 0 0 1解:我们用三种方法解题:解:我们用三种方法解题:21/21MatlabMatlab实验实验实验实验(七)(七)(七)(七)(3)n阶实对称矩阵阶实对称矩阵A为正定矩阵的充要条件是:为正定矩阵的充要条件是:A的顺序主子式大于零的顺序主子式大于零A=2,1,-2;1,4,-1;-2,-1,5;m,n=size(A);for i=1:3,B=A(1:i,1:i);h(i)=det(B);endhh=2 7 21由于矩阵由于矩阵A的三个顺序主子式的三个顺序主子式的值分别为:的值分别为:2 7 21故矩阵故矩阵A为正定矩阵为正定矩阵.今后,在判别某矩阵是否为正定矩今后,在判别某矩阵是否为正定矩阵,可根据情况选择方法阵,可根据情况选择方法.

    注意事项

    本文(第七讲 matlab编程.ppt)为本站会员(qwe****56)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开