Matlab学习02-matlab中的数据显示格式及符号变量

目录

一,关系运算和逻辑运算

二,变量

三,数据显示格式 

四,符号运算

1,创建符号变量

2,数值矩阵转换成符号矩阵


一,关系运算和逻辑运算

在matlab中,只要数值不是 0 ,都可以当作真(即正确),把 0 当作假(即错误) 

 对于关系运算符其实是相伴我们时间最长的运算符,从小学就开始学习大于(>),小于(<),大于等于 (\geq ),小于等于 (\leq ),等于 (==),不等于(~=)等运算符,关系运算符基本上搭配着逻辑运算符:与(&),或(|)和非(  ~)一起使用。

例如,从下面的一串数中

找到大于3小于10的数字

二,变量

通过上面的例子可以看到,在matlab中,不需要事先定义一个变量(变量的大小和类型),就可以直接对某变量进行赋值和运算。 在python编程中也是一样,极其方便。

 数值的表示主要有两种:

  1. 十进制法:10,11,12
     
  2. 科学计数法:

    1.024e3(对应十进制法中的 1.024 \times 10^{3}=1024),

    1.024e-3=1.024 \times 10^{-3}=0.001024
  3. 如果数值是虚数,就需要考虑到虚部单位 i 或 j。例如,一个虚数可以如下表示:

    24j

    复数如下表示 ↓

    10+24j   % 10是实数,24j 是虚数,合在一起就是复数

在matlab中,当遇到某个新变量时,会自动产生一个变量并配备一个适当的存储空间,如果变量已存在,则自动进行相应的替换。如下,a的初始值为10,但是后面又重新赋值,变成了24。

 matlab的变量命名规则如下:

  1. 变量名区分大小写,例如A 和 a 是两个不同的变量名,如下,a 依旧是24,并不会变成66。
  2. 变量名的第一个字符必须是英文字母(个人ps:这个就有点严格了,不像其他的编程语言像c++那样还可以是下划线开头),并且变量的长度不能超过31个字符(个人ps:这个可以理解,毕竟起那么长的变量名完全无意义)
  3. 变量名可以包含下划线,数字,但不能包含空格符,标点。
  4. 还有最关键的就是不能和保留字重名,不然就作为保留字来使用,不能进行赋值及运算等操作。在matlab中具体有哪些保留字(关键字),可以在matlab命令行窗口输入"iskeyword"查看,下面选取一部分进行展示:

系统中还有一些特殊的变量,既不是自定义变量也不是保留字(关键字),只是指代了特定的意思,如下:

matlab系统中的特殊变量
ans

默认变量名。如下

pi圆周率
realmin最小的正实浮点数
realmax最大的正实浮点数
bitmax最大正整浮点数
inf无穷大
eps浮点运算相对精度
nan非数,结果不确定。

三,数据显示格式 

当我输入数值 0.3 后,命令行窗口中显示的数据形式和我输入的不同:

这是因为在matlab内部,每一个数据元素都是用双精度数来表示和存储。

如果我想要命令行窗口中显示的数据形式和我输入的数据形式一样,我就可以用format(格式)命令来设置或者是改变数据输出格式。如下👇

接下来通过以下表格来认识不同种类的数据显示格式:
 

matlab中的数据显示格式
格式说明
format短格式(缺省显示格式),只显示5位。例如我输入0.3这两位数,最后只输出0.3000这五位数。↓ ↓ ↓ ↓ ↓
format short和 format一样的作用和效果:
虽然看起来format  short多了个short效果还跟format一样显得很多余,但是这个搭配主要是为了后面的短格式e方式和短格式g方式。format 后面不能直接接上 e 或 g。而format short 可以。
format short e

短格式e方式,数值将以科学计数法的形式进行显示,且保留 4 位小数。这种输出特别适用于很大或很小的数字,使得数字更易于阅读和理解。例如我输入圆周率pi,对应的输出如下:

但它并不强制使用科学计数法。如下👇

总而言之,短格式e方式 在表示数字时,采用了小数点后保留 4 位的科学计数法,非常适合显示数据范围广泛的数值。

format short g

短格式g方式(自动选择最佳表示格式),用于以短格式显示数值,具体来说,它会根据数值的大小自动选择最合适的格式(科学记数法或固定小数点格式),并保留大约 5 位有效数字。就像我之前的例子那样,我就想要输入是0.3,输出也是也是0.3的效果。

format long

长格式,默认双精度数输出可以显示16位,例如我输入圆周率pi,对应的输出如下:

如果想要单精度数输出8位,可以在将数值传给single函数

format long e

长格式e方式。将本来显示16位的数,使用科学计数法的方式表示,如下,还是以圆周率pi为例:

format long g

长格式g方式,例如如下显示

因为数值比较大,所以自动选择了最佳的表示格式:科学计数法。

format compact

压缩格式。变量与数据之间在显示时留空行。它主要影响命令窗口中输出的文本格式,尤其是数组和矩阵的显示方式。

例如,我使用默认的format格式,显示一个矩阵:

接着使用format compact命令,切换成压缩格式:

因此,用此命令后,MATLAB 会减少输出之间的空行,使得输出更加紧凑,节省屏幕空间。这在处理较大数据集时尤其有用,因为它可以更容易地查看输出。

format loose

自由格式,变量与数据之间在显示时留空格。和format  compact相反。

format hex

十六进制格式显示。用于以十六进制格式查看数值在计算机内存中的实际表示,例如我输入圆周率pi,显示如下:

这个命令对于调试和查看浮点数的内部表示非常有用。

如果想要恢复成十进制格式的显示方法,可以在matlab命令行窗口输入format,之后回车即可。

四,符号运算

 在matlab中,符号数学工具箱(Symbolic Math Toolbox)用于实现符号运算。和别的工具箱不同点在于,该工具箱不是基于矩阵的数值分析,而是使用字符串来进行符号分析和运算。

1,创建符号变量

 只要是参与了符号运算的变量都是符号变量,即使是在符号运算中出现的数字也按照符号变量来处理。在matlab中  一般使用 syms 函数建立符号变量。

符号变量不像之前的变量那样,使用符号变量之前需要先声明:

可以看到,syms后面接着的是一个变量列表,并且每个变量之间都是用空格分割(不能使用逗号分隔,不然下一个变量就无法被识别到)

通过 syms 函数创建的变量都是符号变量。

不管是在matlab中,还是在数学中,表达式和方程的区别就在于右边是否有等号“=”,例如:

  • ax+b:是一个表达式
  • ax+b=0:是一个方程式(自变量的值固定)

有符号变量,自然也就有符号表达式和符号方程式,只是在计算机编程中符号“=”表示赋值,如果要表示相等的意思,就需要使用两个等号,即“==”。

  • 符号表达式:f=sin(x)   % 需要注意,自变量必须要提前声明为符号变量
  • 符号方程式:f=sin(x)^2==0

2,数值矩阵转换成符号矩阵

在matlab中,如果要对矩阵进行符·号运算,就必须事先定义符号矩阵。将数值矩阵转换成符号矩阵的调用格式为:sym(矩阵名)

例如,我有一个数值矩阵

现在将其转换成符号矩阵:

明天再学习接下来的部分,有问题请在评论区留言或者是私信我,回复时间不超过一天。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

jenkins下拉参数联动

需要安装Active Choices插件&#xff0c;官网地址&#xff1a; https://plugins.jenkins.io/uno-choice/ 安装完插件以后会出现Active Choices选项&#xff1a; 第一个参数&#xff1a; return ["dubbo-op-all-deployment1", "dubbo-op-all-deployment2",…

合并数组的两种常用方法比较

在 JavaScript 中&#xff0c;合并数组的两种常用方法是使用扩展运算符 (...) 和使用 push 方法。 使用扩展运算符 this.items [...this.items, ...data.items]; 优点&#xff1a; 易于理解&#xff1a;使用扩展运算符的语法非常直观&#xff0c;表达了“将两个数组合并成一个…

基于vue框架的的高校消防设施管理系统06y99(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。

系统程序文件列表 项目功能&#xff1a;设备分类,设备信息,维修人员,报修信息,维修进度,院系,消防知识,培训记录,培训信息,备件信息,备件申请,派发信息,采购信息 开题报告内容 基于Vue框架的高校消防设施管理系统开题报告 一、项目背景与意义 随着高校规模的不断扩大和校园建…

基于Django+Python的房屋信息可视化及价格预测系统设计与实现(带文档)

项目运行 需要先安装Python的相关依赖&#xff1a;pymysql&#xff0c;Django3.2.8&#xff0c;pillow 使用pip install 安装 第一步&#xff1a;创建数据库 第二步&#xff1a;执行SQL语句&#xff0c;.sql文件&#xff0c;运行该文件中的SQL语句 第三步&#xff1a;修改源…

无人机喊话器详解!

喊话器材料 外壳常采用尼龙纤维增强材料&#xff0c;这种材料具有抗摔、抗震、轻便、灵活、质量稳定、操作简单等优点&#xff0c;能够满足不同场景的需求。 喊话范围 无人机喊话器的喊话范围主要取决于设备的型号、环境条件以及喊话器的性能参数。一般来说&#xff0c;无人…

【334】基于springboot的仓库管理系统

本科毕业设计论文 题目&#xff1a;仓库管理系统设计与实现 摘 要 信息内容数据从传统到当今&#xff0c;一直在改变&#xff0c;忽然互联网技术让传统信息内容管理见到划时代的黎明&#xff0c;由于传统信息内容管理从时效性、安全系数、可执行性等多个方面&#xff0c;碰到…

rsync算法原理

1. 简介 rsync是一种文件同步的工具&#xff0c;也是一种算法。 2. 算法原理 背景&#xff1a;计算机 α \alpha α 上有文件 a, 计算机 β \beta β上有文件b。要对这两个文件进行同步。 β \beta β将文件b分成大小为S字节的若干块&#xff0c;最后一份可能不足S字节对于b…

中小企业设备维护新策略:Spring Boot系统设计与实现

2相关技术 2.1 MYSQL数据库 MySQL是一个真正的多用户、多线程SQL数据库服务器。 是基于SQL的客户/服务器模式的关系数据库管理系统&#xff0c;它的有点有有功能强大、使用简单、管理方便、安全可靠性高、运行速度快、多线程、跨平台性、完全网络化、稳定性等&#xff0c;非常…

安灯系统助力汽车零部件工厂快速解决生产异常

在汽车零部件制造领域&#xff0c;高效的生产管理和快速解决异常情况是确保产品质量和生产进度的关键。而安灯系统的应用&#xff0c;正为汽车零部件工厂带来了全新的变革&#xff0c;助力其快速解决生产异常。 汽车零部件工厂的生产报工产线看板直观地反映出生产的各项关键数据…

Redis的RDB执行原理

引入‘页表’的概念 Linux里面每个进程都是无法直接操作物理内存的&#xff0c;每个进程只能用页表映射本进程的虚拟内存到物理内存的映射。 bgsave的时候&#xff0c;主进程会fork&#xff08;复制&#xff09;一个子进程&#xff0c;然后该过程仅仅复制了页表。复制页表的过程…

使用 ASP.NET Core 8.0 创建最小 API

构建最小 API&#xff0c;以创建具有最小依赖项的 HTTP API。 它们非常适合需要在 ASP.NET Core 中仅包括最少文件、功能和依赖项的微服务和应用。 本教程介绍使用 ASP.NET Core 生成最小 API 的基础知识。 在 ASP.NET Core 中创建 API 的另一种方法是使用控制器。 有关在最小 …

使用 pydub 的 AudioSegment 获取音频时长 - python 实现

通过使用 pydub 的 AudioSegment 获取音频时长&#xff0c;音频常用格式如 m4a,wav等。 安装 python 库&#xff1a; pip install pydub 获取 m4a 格式的音频时长代码如下&#xff0c;代码如下&#xff1a; #-*-coding:utf-8-*- # date:2024-10 # Author: DataBall - XIAN #…

【云效】阿里云云效:一站式DevOps平台介绍与使用教程(图文)附PPT

【云效】阿里云云效:一站式DevOps平台介绍与使用教程(图文) 云效费用企业管理项目协作代码管理自动流水线测试管理扩展资料附:PPT版文件下载参考资料: https://devops.aliyun.com/ 云效 阿里云一站式DevOps(持续交付)平台,项目数字化协作能效工具。 官方介绍: 云效,一…

bindService 流程学习总结

Context.bindServiceContextImpl.bindServiceCommonActivityManagerService.bindIsolatedService ActiveServices.bindIsolatedServiceretrieveServiceLocked 获取服务信息&#xff1b;bringUpServiceLocked 拉起服务startProcessLocked创建进程 (进程不存在时)realStartServi…

【Android】MVP架构

MVP架构简介 MVP&#xff08;Model-View-Presenter&#xff09;是一种常见的软件架构模式&#xff0c;尤其在Android应用开发中被广泛使用。它将应用程序分为三层&#xff1a;Model、View 和 Presenter&#xff0c;以实现职责分离&#xff0c;提高代码的可维护性和可测试性。 …

ant design vue树选择器实现部分层级禁用(指定层级或依据字段判断)

1、依据字段判断是否禁用 const handData (array, level?) > {array.forEach((item) > {if (level 0) {//获取一级菜单item.title item.levelName;item.value item.code;if (item.type LAYER) {item.disabled true;} else if (item.type JOB) {item.disabled f…

分享几个办公类常用的AI工具

办公类 WPS AI讯飞智文iSlideProcessOn亿图脑图ChatPPT WPS AI 金山办公推出的协同办公 AI 应用&#xff0c;具有文本生成、多轮对话、润色改写等多种功能&#xff0c;可以辅助用户进行文档编辑、表格处理、演示文稿制作等办公操作。 https://ai.wps.cn/ 讯飞智文 科大讯飞推…

OceanBase 首席科学家阳振坤:大模型时代的数据库思考

2024年 OceanBase 年度大会 即将于10月23日&#xff0c;在北京举行。 欢迎到现场了解更多“SQL AI ” 的探讨与分享&#xff01; 近期&#xff0c;2024年金融业数据库技术大会在北京圆满举行&#xff0c;聚焦“大模型时代下数据库的创新发展”议题&#xff0c;汇聚了国内外众多…

85.【C语言】数据结构之顺序表的中间插入和删除及遍历查找

目录 3.操作顺序表 1.分析中间插入函数 函数的参数 代码示例 图片分析 main.c部分改为 在SeqList.h添加SLInsert函数的声明 运行结果 2.分析中间删除函数 函数的参数 代码示例 图片分析 main.c部分改为 在SeqList.h添加SLErase函数的声明 运行结果 承接84.【C语…

前端开发:Vue中数据绑定原理

Vue 中最大的一个特征就是数据的双向绑定&#xff0c;而这种双向绑定的形式&#xff0c;一方面表现在元数据与衍生数据之间的响应&#xff0c;另一方面表现在元数据与视图之间的响应&#xff0c;而这些响应的实现方式&#xff0c;依赖的是数据链&#xff0c;因此&#xff0c;要…