(转载)从0开始学matlab(第1天)—变量和数组

MATLAB 程序的基本数据单元是数组。一个数组是以行和列组织起来的数据集合,并且拥有一个数组名。数组中的单个数据是可以被访问的,访问的方法是数组名后带一个括号,括号内是这个数据所对应行标和列标。标量在 MATLAB 中也被当作数组来处理——它被看作只有一行一列的数组。
数组可以定义为向量或矩阵。向量一般来描述一维数组,而矩阵往往来描述二维或多维数组。在本书中,当我们讨论一维数组时用向量表示,当我们讨论二维或多维向量时用矩阵。如果在特殊情况下,同时遇到这两种数组,我们就把他们通称为“数组”。数组的大小(size)由数组的行数和列数共同决定,注意行数在前。一个数组所包含的数据多少可由行数乘列数得到。例如,下列数组的大小为:
fe1c3de7141644ac812d330add9480ae.png c56c437e1515402bbc8649ea186a3c6b.png
数组中的单个数据是可以被访问的,访问的方法是数组名后带一个括号,括号内是这个数据所对应的行标和列标。如果这个数组是一个行向量或列向量,则只需要一个下标。例如上面的数组 A(2 1)为 3,C(2)为 2。一个 MATLAB 变量是一段包含一个数组的内存区, 并且拥有一个用户指定的变量名。通过适当的命令和它的变量名随时可以就调用它和修改 它。
MATLAB 的变量名必须以字母开头,后面可以跟字母,数字和下划线(_).只有前 31个字符是有效的;如果超过了 31 个字符,基余的字符将被忽略。如果声明两个变量,两变量名只有第 32 个字符不同,那么 MATLAB 将它们当作同一变量对待。
常见编程错误
确保你所声明的变量名前 31 个字符是独一无二的。否则,MATLAB 将无法辨认出它们
的不同。
当你编写程序时,给变量起一个有意义的名字非常的重要。有意义的名字极大的提高了程序的可读性和可维护性。像 day,month 和 year 这样的名字意义非常明确,即使第一次看到也能理解。尽管空格不能用在 MATLAB 变量名中,但是可以用下划线代替空格创造出有意义的变量名。比如,changerate 可以写成 change_rate.
好的编程习惯
给你的变量起一个描述性的且易于记忆的变量名。例如,货币汇率可以 exchange_rate
为变量名。这种方法将使得你的程序更加明确且易于理解。
在你所写的程序的开头列出一数据字典(data dictionary)十分的重要.数据字典列举了你在本程序中用到的所有变量的定义。它的定义应包括本条目的所要描述的内容和它在执行时所在的单元。当编写程序时,编定数据字典看似没有必要。但是设想一下,在过了一段时间后,你或其他人要对此程序修改,这时数据字典就显得十分的有用。
好的编程习惯
给每个程序创建一个数据字典以增强程序的可维护性。
在 MATLAB 语言中是区分字母大小的,也就是说,大写字母和小写字母代表的东西是不同的。所以变量 NAME,Name,name 在 MATLAB 中是不同的。所以已用过的小写变量名与一个新建大写的变量名重名,这时使用时要特别地小心。在一般情况下,我们一律用小写字母来表示。
好的编程习惯
在每次用到一个变量时,我们要确保变量名的大小写的精确匹配。在变量名中只使用小写字母是一个好的编程习惯。
两个最常见的变量类型是 char 型和 double 型。double 型的变量包括由 64 位双精度浮点数构成的标量或数组。这种变量可以代表实数,虚数和复数。每个值的实部和虚部的变化范围为正负 10­308~10308,拥有 15 到 16 位有效数字。这是基本的数字数据类型。无论什么时侯,你将一个数值赋值于一个变量名,那么 MATLAB 将自动建立一个 double 型变量。例如,下面语句创建了一个以 var 为变量名的 double 型变量,包含了一个 double 型的单个元素,存储了复数值(1+i);
var=1+i;
char 型的变量包括由 16 位数值构成的标量或数组,每一个 16 位数代表一个字符。这个类型的经常用于字符串操作,当一个字符或字符串赋值于一个变量名时,系统会自动建立一个 char 型变量。例如,下面的这个语句创建了一个 char 型变量 comment,并存储了一个字符串在其内。当这个语执行后,系统将会建立一个 1×26 的字符串数组。
comment='this is a character string';
像 C 语言这样的语言中,变量类型和变量在使用之前必须强制声明。这种语言我们叫它 强类型语言。相对地,像 MATLAB 这样的叫做 弱类型语言。通过简单的赋值形式就可以创建变量,变量类型取决于创建时的类型。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/22839.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

centos 配置好网络后无法ping 通百度

问题: ping 自己配置的ip地址能够ping通,ping 连接的WiFi (可以上外网)地址也能ping通,但是ping www.baidu.com 却ping不同; 配置 处理方法: 我的虚拟机开通了三张网卡,150段…

GB35114双向身份认证(A级)学习笔记

GB35114双向身份验证学习笔记 温故而知新 SSL单向认证 摘录自:https://blog.csdn.net/qq_45759354/article/details/128672828 SSL协议用到了对称加密和非对称加密,在建立连接时,SSL首先对对称加密密钥使用非对称加密。连接建立好后&…

【量化课程】02_1.宏观经济学基础概念

2.1_宏观经济学基础概念 文章目录 2.1_宏观经济学基础概念1. 宏观经济简单背景1.1 微观经济学时期1.2 宏观经济学开端1.3 宏观经济学研究的问题1.4 宏观经济与理财的联系 2. 宏观经济分析及关键指标2.1 教材中的宏观经济分析框架和指标2.1.1 国内生产总值GDP2.1.2 边际消费倾向…

Docker:overlay2浅析以及解决overlay2 文件过大的问题

最近在学习docker的实现时看到这么一个概念:Union File System,先让我们来介绍介绍它。 Union File System 定义:联合文件系统(UnionFS)是一种分层、轻量级并且高性能的文件系统,它支持对文件系统的修改作…

微信小程序音频播放失败:TypeError: Cannot read property ‘duration‘ of undefined

报错截图 最下面这个this.setData()报错可不用理会,是this取值的问题 解决 需要播放和暂停功能时,需要把audio以及他的src放在Page外面。不能缺少 audioCtx.onPlay() 和 audioCtx.onError()两个方法,且需要放在play()方法之前如果在wx.crea…

Bash 有效电话号码

193 有效电话号码 给定一个包含电话号码列表(一行一个电话号码)的文本文件 file.txt,写一个单行 bash 脚本输出所有有效的电话号码。 你可以假设一个有效的电话号码必须满足以下两种格式: (xxx) xxx-xxxx 或 xxx-xxx-xxxx。&…

apple pencil一代的平替有哪些品牌?苹果平板的触控笔

随着苹果Pencil系列的推出,平替电容笔在国内市场得到了较好的发展,随之的销量,也开始暴涨,苹果pencil因为价格太高,导致很多人买不起。目前市场上,有不少的平替电容笔,可以替代苹果的Pencil&…

StringBuffer类 StringBuilder 类

StringBuffer类 介绍 StringBuffer是一个容器,代表可变的字符序列,可以对字符串内容进行增删。 StringBuffer是可变长度的。 实现了序列化接口,可实现串行化(可以将内容保存至文件或者网络传输): Serial…

webpack项目和vue项目发布,浏览器存在缓存

项目是webpack搭建的每次发步到线上,经常需要手动清楚浏览器缓存才能有效果。vue项目设置在最下面 项目打包的js(css也是一致)名称都采用哈希值 问题:哈希值在有些情况下打包会不变,导致浏览器使用自己缓存的资源 解…

wordpress主题zibll子比主题v7.2.2绕授权+教程

1、先说一下要准备的东西 一份子比7.1正式包,一台服务器,wp6.2.2正式包(wordpress),一个域名 2、首先把wp上传服务器的域名根目录下,然后打开前台按要求填写数据库和管理员邮箱账号密码,php版本…

Sql 语句小课堂8:求特定字段平均值的问题

Sql 语句小课堂8:求特定字段平均值的问题 问题来源初始数据超标条件方案一:得出汇总结果方案二:在原有数据上附加其结果 小结 问题来源 最近老顾变得原来越咸鱼了,好久没去逛 CSDN 问答了,于是灵感枯竭,不…

云计算——云计算关键技术

作者简介:一名云计算网络运维人员、每天分享网络与运维的技术与干货。 座右铭:低头赶路,敬事如仪 个人主页:网络豆的主页​​​​​ 目录 前言 一.云计算关键技术 1.虚拟化技术 2.分布式数据存储技术 (1&…