实验五 M文件和MATLAB程序设计

第 PAGE \* Arabic \* MERGEFORMAT 10 页

实验五 M文件和MATLAB程序设计

一、实验目的

matlab作为一种高级计算机语言,不仅可以命令行方式完成操作,也具有数据结构、控制流、输入输出等能力,本次实验通过熟悉和掌握m文件的建立与使用方法,以及函数与控制程序流程语句的使用,使学生具备一定的编程和程序调试能力。

1.掌握M文件的使用方法。

2.掌握if语句和switch语句的使用

3. 掌握循环语句的使用

4. 通过练习理解MATLAB编程方法。

二、实验原理

1.m文件

用matlab语言编写的程序,称为m文件。M文件根据调用方式的不同分为两类,命令文件(Script file)和函数文件(Function file)。区别?

2.程序控制结构

顺序结构

选择结构

if语句 a) 单分支if语句 b) 双分支if语句 c) 多分支if语句

switch 语句

try语句

循环结构

for 语句

while语句

break语句、continue语句、return使用,区别?

3.函数文件

function 输出形参表=函数名(输入形参表)

注释说明部分

函数体语句

三、实验要求

1.首先上机练习PPT中各种流程控制语句的有关实例。

2.然后上机练习下面的实验习题。

四、实验习题

1.数论中一个有趣的题目:任意一个正整数,若为偶数,则用2除之,若为奇数,则与3相乘再加上1。重复此过程,最终得到的结果为1。如:

2?1

3?10?5?16?8?4?2?1

6?3?10?5?16?8?4?2?1

运行下面的程序,按程序提示输入n=1,2,3,5,7等数来验证这一结论。

%classic "3n+1" problem from number theory.

while 1

n=input('Enter n,negative quits:');

if n<=0

break

end

a=n;

while n>1

if rem(n,2)==0

n=n/2;

else

n=3*n+1;

end

a=[a,n];

end

a

end

Enter n,negative quits:3

a =

3 10 5 16 8 4 2 1

2. 编程求满足的最小m值。

a=0;

i=1;

while (a<10000)

a=a+pow2(i);

i=i+1;

end

m=i-1;

m

13

3. 编写一个函数,计算下面函数的值,给出x的值,调用该函数后,返回y的值。

function [y]=myfun1(x)

选择一些数据测试你编写的函数。

function y=myfun1(x)

if x<=0

y=sin(x);

elseif x>0&x<=3

y=x;

elseif x>3

y=-x+6;

end

运行结果:

>> y=myfun1(-pi/2)

y =

-1

>> y=myfun1(0)y =

0

>> y=myfun1(2)

y =

2

>> y=myfun1(4)

y =

2

4. 用如下迭代公式求,a的值分别为:3,17,113。迭代的终止条件为,迭代初值,迭代次数不超过100次。分别对迭代结果和准确值进行比较,并统计迭代次数。迭代公式:

function [x, n]=sqrt_a(a)

x=1.0;

for k=1:100

m=x;

x=x/2+a/(2*x);

if abs(x-m)<=10^(-5)

break

end

end

x;

n=k;

s=(x-sqrt(a));

if s<=10^(-5)

disp('正确');

else

disp('错误');

end

下面调用举例:

运行结果:

>> [x ,n]=sqrt_a(3)

正确

x =

1.7321

n =

5

>> [x, n]=sqrt_a(17)

正确

x =

4.1231

n =

6

>> [x,n]=sqrt_a(113)

正确

x =

10.6301

n =

8

5.定义一个函数文件,求给定复数的指数、对数、正弦和余弦,并在命令文件中调用该函数文件。

程序设计:

f

matlab程序设计基础m文件,实验五 M文件和MATLAB程序设计.doc相关推荐

  1. matlab实验5函数文件,实验五M文件和MATLAB设计技术总结.doc

    实验五 M文件和MATLAB程序设计 一.实验目的matlab作为一种高级计算机语言,不仅可以命令行方式完成操作,也具有数据结构.控制流.输入输出等能力,本次实验通过熟悉和掌握m文件的建立与使用方法, ...

  2. 【C语言入门】SDUT《程序设计基础I 》实验1-顺序结构程序设计题解 c语言入门语法讲解

    SDUT<程序设计基础I >实验1-顺序结构程序设计题解 && c语言语法讲解 链接 前言: 为方便更多同学入门C语言, 特在此编写SDUT OJ c语言入门150题题解即 ...

  3. matlab中if语句多个_科学计算 | MATLAB程序设计基础

    点击"蓝字"关注我们 科学计算 | MATLAB程序设计基础 引言 在前面的学习中,我们都是在命令行窗口逐条输入命令,然后由matlab解释执行,这种交互式的命令执行方式,操作简单 ...

  4. matlab程序设计基础教程 刘国良,MATLAB程序设计基础教程 刘国良 西安电子科技大学出版社...

    商品描述: [图书描述]: 本书以MATLABR2010a为基础,较全面.系统地介绍了MATLAB的理论和应用,内容包括MArLAB的基本知识和基本程序设计.数值分析.科学计算.符号运算和图形绘制等. ...

  5. python实验目的_实验五 Python文件操作实验

    实验五 Python文件操作实验 一.实验目的与要求 1.掌握文件的打开和关闭. 2.掌握文件的不同操作,如读写.重命名.删除. 3.熟悉闭包.装饰器以及常见内置函数的使用. 二.实验原理 在pyth ...

  6. 2018-2019-1 《信息安全系统设计基础》 20165235 实验五 通信协议设计

    2018-2019-1 <信息安全系统设计基础> 20165235 实验五 通信协议设计 博客连接如下: 20165235 实验五 通信协议设计 转载于:https://www.cnblo ...

  7. c语言选择循环实验报告,C语言程序设计实验报告选择与循环结构程序设计.doc

    C语言程序设计实验报告选择与循环结构程序设计.doc 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我们的 ...

  8. 南邮软件设计matlab,通信软件设计基础,南邮,实验报告(共10篇).doc

    通信软件设计基础,南邮,实验报告(共10篇) 通信软件设计基础,南邮,实验报告(共10篇) 南邮matlab软件设计实验报告 通信与信息工程学院 2014 /2015 学年 第2学期 软件设计 实验报 ...

  9. 基于matlab fir数字滤波器设计 程序流程图,实验五:FIR数字滤波器设计与软件实现...

    实验五:FIR 数字滤波器设计与软件实现 一.实验目的 (1)掌握用窗函数法设计FIR 数字滤波器的原理和方法. (2)掌握用等波纹最佳逼近法设计FIR 数字滤波器的原理和方法. (3)掌握FIR 滤 ...

最新文章

  1. 把DXF导入到Altium Designer的完美方法
  2. stm32入门c语言下载,STM32入门C语言详解.docx
  3. C语言十个字母用冒泡法排序,冒泡排序法(C语言) - osc_wq8j2a9a的个人空间 - OSCHINA - 中文开源技术交流社区...
  4. 怎么查看端口占用情况?
  5. 【资源】学 AI 该学哪些斯坦福 CS 课程,这个清单安排得明明白白
  6. Mybatis 高级结果映射 ResultMap Association Collection
  7. C#匿名对象在其它方法体内怎么取到相应的值(不想建立对应的类并转化的情况下)?...
  8. 【转】Mysql行转换为列
  9. eclipse 调试nodejs 发生Failed to connect to standalone V8 VM错误的解决方案
  10. bp神经网络matlab代码_基于Matlab的BP神经网络识别26个英文字母
  11. Swashbuckle Swagger组件扩展
  12. 如何让php支持mysql的,怎么让php支持MySql
  13. 电力拖动计算机控制系统讲什么,电力拖动自动控制系统
  14. 第三章——Lyapunov理论基础
  15. 自己实现的promise
  16. 美团外卖uml流程图_以美团外卖为例,区别业务流程图和页面流程图
  17. HTML+CSS静态网页设计:(房地产网站设计与实现6页)
  18. RocketMq 启动报错错误: 找不到或无法加载主类 Files\Java\jdk1.8.0_301\jre\lib\ext
  19. 计算机配件地区限制,原来电脑配件包含这么多信息,不懂可以看看!以后再也不怕被坑...
  20. 【突发】Telsa致命车祸细节报告:人为设定超速15%(下载)

热门文章

  1. 了解维客模式wiki,联想《集思广益系统》
  2. 手机显示网关服务器未开,小森生活无可用网关服务器怎么回事?无可用网关服务器解决方法[多图]...
  3. 佰钧成的危城抗“疫”日记
  4. apache配置支持php
  5. 百度跨平台AI推理加速引擎:Anakin
  6. GreatSQL项目捉虫活动(第一期)重磅来袭!
  7. 智能循迹避障小车的红外模块
  8. Hive的4种导入和3种导出方式
  9. css 的基本选择器,复合选择器,后代选择器
  10. 做网工还是运维好?求解