Matlab编程基础I脚本.PPT

  1. 1、本文档共42页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Matlab编程基础I脚本

数学软件 Matlab 本讲主要内容 Matlab 编程 M 文件 M 文件 编程示例 编程示例 本讲主要内容 关系运算 关系运算举例 逻辑运算 逻辑运算 逻辑运算 一些测试函数 运算优先级 本讲主要内容 input disp fprintf fprintf 举例 fprintf fprintf 举例 本讲主要内容 M文件控制流 选择结构 if 条件语句 if 条件语句 switch 语句 switch 举例 循环结构 for 循环 for 循环 while 循环 while 循环 while编程示例 循环的终止 pause 编程示例 上机作业 上机作业 上机作业 上机要求 for 循环变量 = 取值列表 循环体 end 取值列表 通常是一个向量 将取值列表中的值依次赋给循环变量,直到全部取完, 循环结束 不要在循环体内改变循环变量的值 为提高代码的运行效率,应尽可能提高代码的向量化程度 for 循环 y=0; n=100; for k=1:n y=y+1/(2*k-1); end 例: 已知 ,当 n=100 时,求 y 的值 例:计算 s = 1 + 3 + 10 - 28 + 30 + 50 - 12 - 8 s=0; x=[1, 3, 10, -28, 30, 50, -12,-8]; for k=x % 将 x 的分量依次赋值给循环变量 s=s+k; end 循环语句可以嵌套使用 如果预先知道循环的次数,可采用 for 循环 如果预先无法确定循环次数,则可使用 while 循环 while 条件表达式 循环体语句 end 当条件表达式的值为真(非 0)时, 执行循环体语句, 直到条件表达式的值是假为止 while 循环 表达式 循环体语句 真 假 例:数论中的一个有趣问题:3n+1 问题 任取一个正整数,如果是偶数,用 2 除,如果是奇数,用 3 乘再加 1,反复这个过程,直到所得到的数为 1。 问:是否存在使该过程永不中止的整数? n=input(请输入一个正整数 n: ); x=n; while x1 if mod(x,2)==0 x=x/2; else x=3*x+1; end fprintf( x=%d \n, x); end ex4while01.m 这个例子给出了计算 eps 的一种方法。 这里我们用大写 EPS,因此系统中 eps 的值不会被覆盖。当 EPS=eps 时,条件仍成立;而当 EPS=eps/2 时,条件不成立,退出循环,所以最后应有 EPS=eps/2。k 用来记录循环次数。 计算 Matlab 中 eps 值 k=0; EPS=1; while (1+EPS) 1 EPS = EPS/2; k = k+1; end 例: ex4while02.m 循环的中断 跳出循环体,终止循环 break 只能跳出一层循环 结束本轮循环,执行下一轮循环 break continue break 和 continue 通常需要与 if 语句配合使用 若想强行终止运行中的程序,可以使用 Ctrl+c pause % 暂停程序的运行,按任意键后继续 pause(x) % 暂停程序 x 秒 这里的 x 可以是小数 pause off 屏蔽程序中所有 pause 的作用 pause on 打开 pause 的作用 程序暂停 返回/退出 退出正在运行的脚本或函数,通常用在函数文件中 return 首先由计算机随机产生一个 [1,100] 之间的一个整数,然后由用户猜测所产生的这个数。 根据用户猜测的情况给出不同的提示,如果猜测的数大于产生的数,则显示 Higher,小于则显示 Lower,等于则显示 You won!同时退出游戏。用户最多有 7 次机会 猜数游戏 例: ex4for.m 产生 1~T 间满足均匀分布的随机整数矩阵 m=n 时简写为 randi(T,n) randi(T,m,n) randi(T,n) 1、已知程序: 2、已知 sin(x) 的幂级数展开公式为 试利用该公式计算 sin(?/2)和 sin(31?/2) 的值(直到级数某项的绝对值小于 10-16 为止),并与 Matlab 自带的 sin 函数比较,误差分别多大?为什么? (程序取名 m52.m) (在程序中将最后两个值输出来,程序取名 m51.m 中) 试说明程序运行结束后,最后得到的 x 和倒数第二个 x 值分别为多少? 若将程序改为下面的

文档评论(0)

wumanduo11 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档