MATLAB结构化程序设计

这篇具有很好参考价值的文章主要介绍了MATLAB结构化程序设计。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、实验目的:

1)巩固并加深对MATLAB语言程序设计知识的理解;

2)掌握和提高MATLAB语言编程和程序调试的基本技能;

3)进一步理解和运用结构化程序设计的思想和方法;

4)提高运用MATLAB语言解决实际问题的能力。


2-1)、分别使用for语句和while语句求1~100的和。

clear all

sum = 0;
for i = 1:100   %for 循环求和
    sum = sum + i;
end
sum

clear all
i = 1;
sum = 0;
while (i <= 100)    % while循环求和
    sum = sum + i;
    i = i+1;
end
sum

while语句可以用来实现“当”型的循环结构,它的一般形式如下:

while(表达式)

        MATLAB循环语句体

end

使用for语句循环需要预先知道循环体的执行次数,这种循环一般交确定循环

for循环的基本结构形式如下:

for 循环变量 = 变量初值:步长值:变量终值

        MATLAB循环语句体

end

在MATLAB语句之后必须使用关键字end作为整个循环结构的结束

注意MATLAB中没有类似C语言中 ++、+=等运算操作符


2-2)、编写分段函数

MATLAB结构化程序设计

的M函数文件,存放于文件ff.m中,并计算出

MATLAB结构化程序设计

的值。

根据题目要求,我们先新建一个M函数文件,将分段函数表达式,用if elseif else 选择结构的形式描述出来即可

function y = ff(x)
%分段函数表达式
if (x>=0 & x<1)
    y = x;
elseif (x>=1 & x<=2)
    y = 2*x-1;
else
    y = 0;
end

在命令文件中调用这个函数

y = ff(-3)
y = ff(1/2)
y = ff(sqrt(2))

输出结果如下:

MATLAB结构化程序设计


 2-3)、编程实现将百分数的分数转化为五级制分数,如:90~100:优、80~89:良、70~79:中、60~69:及格、59以下为不及格,并可将屏幕上任意输入的百分制成绩转换为五分制成绩。

grade = input('请输入百分制成绩');
switch fix (grade / 10)    %fix向下取整
    case{9,10}
        grade = '优';
    case{8}
        grade = '良';
    case{7}
        grade = '中';
    case{6}
        grade = '及格';
    otherwise   %其他
        grade = '不及格';
end
grade

先用input语句输入成绩,如果想将百分制成绩转换为五分制成绩,用switch case结构更好一点,可以先将成绩范围缩小 fix (grade / 10),将成绩除以10再向下取整,就可以实现60~69的成绩段用6代替,80~89的成绩用8来代替…… switch case最后也要加end

最后将grade输出看结果


2-4)、使用嵌套for语句求矩阵A的所有元素之和,要求矩阵A由向量变形而来(使用reshape函数)。

MATLAB结构化程序设计

clear all
A = [1:25];  %生成1~25的行向量
A = reshape(A, [5,5])';  %使用reshape函数,重构成5*5的矩阵,这里需要转置
[m, n] = size(A);
sum = 0;
for i = (1:m)   %嵌套for循环语句 求矩阵所有元素之和
    for j = (1:n)
        sum = sum + A(i,j);
    end
end
sum

这里用到了双重for循环嵌套,遍历每一个元素求和,注意MATLAB中循环语句的写法和C语言略有不同~_~

MATLAB结构化程序设计文章来源地址https://www.toymoban.com/news/detail-402432.html

到了这里,关于MATLAB结构化程序设计的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 5、MATLAB程序设计与应用刘卫国(第三版)课后实验五:循环结构程序设计

    目录 一、  二、  三、  四、  五、 已知 求 y的近似值。当n分别取100、1 000、10 000时,结果是多少? 要求 :分别用循环结构和向量运算(使用sum 函数)来实现。 --------------------------------------- 示例代码 --------------------------------------------- --------------------------------------- 运行结果

    2023年04月26日
    浏览(49)
  • 第五章 结构化设计

    一种软件开发活动,定义实现需求规约所需的软件结构。 结构化设计分为: (1)总体设计:确定系统的整体模块结构,即系统实现所需要的软件模块以及这些模块之间的调用关系。 (2)详细设计:详细描述模块。 体系结构设计(MSD) 接口设计 数据设计 实现软件设计的目标对结

    2024年02月08日
    浏览(60)
  • 系统架构设计专业技能 ·结构化需求分析 - 数据流图

    现在的一切都是为将来的梦想编织翅膀,让梦想在现实中展翅高飞。 Now everything is for the future of dream weaving wings, let the dream fly in reality. 点击进入系列文章目录 实体 实体可能是: (1)人物角色: 如客户、管理员、主管、经理、老师、学生 (2)组织机构 :如银行、供应商、募捐机

    2024年02月09日
    浏览(53)
  • 指令模板:技术文档设计与结构化内容架构 | AIGC实践

    【题外话】 在上一篇文章中,有朋友反馈说,【见睿思齐】的字号设置得太小了,读起来有点儿费劲。 首先,特别感谢这位热心读者,开诚布公地与我分享感受,提出宝贵意见,帮助我做得更好。 因此在这篇文章中,我尝试将字号调大1号。大家看看是否还有其他问题,欢迎

    2024年02月09日
    浏览(49)
  • Prompt进阶系列1:LangGPT(从编程语言反思LLM的结构化可复用提示设计框架)

    大语言模型 (Large Language Models, LLMs) 在不同领域都表现出了优异的性能。然而,对于非AI专家来说,制定高质量的提示来引导 LLMs 是目前AI应用领域的一项重要挑战。现有的提示工程研究已经提出了一些零散的优化原则,也有些研究设计了基于经验的提示优化器。然而,这些研

    2024年03月11日
    浏览(122)
  • 结构化数据、非结构化数据、半结构化数据

    结构化的数据一般是指可以使用关系型数据库表示和存储,可以用二维表来逻辑表达实现的数据。例如:需要多少个属性,每个属性什么类型,每个属性的取值范围等等,类似下图所示, 提前定义好了一个二维矩阵的元数据 ,包含有列名称、列的类型、列的约束等:   可见

    2024年02月09日
    浏览(67)
  • 【numpy基础】--结构化

    目前为止,介绍的 numpy 数组基本都是关于数值的,其实, numpy 本身就是一个用于数值计算的基础库。 不过,除了数值计算之外, numpy 也能够支持 结构化数组 。 numpy 的数组为了提高计算性能,要求数组的数据类型要一致。 但是现实情况下,我们经常遇到不是纯数值的数组

    2024年02月12日
    浏览(45)
  • elasticsearch结构化查询

    在上一篇中我们介绍了DSL相关的知识,接下来我们将会学习elasticsearch的结构化查询,同时也实践一下上一篇的DSL的查询用法 从《Elasticsearch权威指南》上摘取部分解释如下: 从上面的定义我们可以看出来结构化查询最重要的就是是否匹配么人并不是很关心相关性和分值计算。

    2024年02月01日
    浏览(49)
  • elasticsearch结构化查询(一)

    在上一篇中我们介绍了DSL相关的知识,接下来我们将会学习elasticsearch的结构化查询,同时也实践一下上一篇的DSL的查询用法 从《Elasticsearch权威指南》上摘取部分解释如下: 从上面的定义我们可以看出来结构化查询最重要的就是是否匹配么人并不是很关心相关性和分值计算。

    2024年02月05日
    浏览(63)
  • 结构化流的介绍

    目录 有界数据和无界数据 有界数据  无界数据  结构化流 基本介绍 入门案例 结构化流的编程模型 数据结构 数据源(Source) File Source Kafka Source(Spark 和 Kafka 整合) 整合Kafka准备工作 从kafka中读取数据 流式处理 批处理  数据写入Kafka中 流式处理 批处理 有界数据 数据有固定的开

    2024年01月15日
    浏览(64)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包