matlab数值数据和变量名
1.2MATLAB数值数据
l 数值数据类型的分类
l 数值数据的输出格式
l 常用数学函数内部函数
1.数值数据类型的分类
l 整型
l 浮点型
l 复数型
(1)整型
1.数值数据类型的分类
无符号整数:无符号8位整数、无符号16位整数、无符号32位整数、
无符号64位整数。 (按分配字节数)
带符号整数:带符号8位整数、带符号16位整数、带符号32位整数、
带符号64位整数。
无符号8位整数数据范围:00000000~11111111(0~2^8-1)。
带符号8位整数数据范围:10000000~01111111(-2^7~2^7-1)。(最左边为符号位,0表示正数,1表示负数)
Matlab提供数据类型转换函数来实现数据类型的转换。例如uint8函数将数值数据转换为无符号8位整数,int8函数将数值数据转换为有符号8位整数
>> x=int8(129) //带符号8位整型数据的最大值是127
x = 127
>> x=uint8(129) //无符号最大为255
x = 129
(2)浮点型
分为单精度型型和双精度类型,单精度型实数在内存中占用4个字节,双精度型实数在内存中占用8个字节。双精度型数据进度更高。MATLAB中默认为双精度型。
single函数:将其他类型的数据转换为单精度型。
double函数:将其他类型的数据转换为双精度型。
>> class(4) //调用class函数,得到数据类型
ans = double
>> class(single(4))
ans = single
>> class(double(4))
ans = double
(3)复型
复型数据包括实部和虚部两个部分,实部和虚部默认为双精度型,虚数单位用i或j来表示。
real函数:求复数的实部
imag函数:求复数的虚部
>> 6+5i
ans = 6.0000 + 5.0000i
>> 6+5j
ans = 6.0000 + 5.0000j //表示同一个复数
2.数据的输出格式
可以采用日常计数法和科学技术法两种方法。
日常计数法:3.14159、-9.359i、3+5i
科学技术法:用字母小写e或大写E表示以10为底的指数。1.78029e2、6.732E2i(纯虚数)、
format命令的格式:
format 格式符 //格式符决定了输出格式
>> format long
>> 50/3
ans = 16.666666666666668 15位
>> format
>> 50/3
ans = 16.6667 4位
TIP:注意:format命令只影响数据输出格式 ,而不影响数据的计算和存储。
3.常用数学函数
(1)函数的调用格式为:
函数名(函数自变量的值)
函数的自变量规定为矩阵变量,当然也可以是标量,标量本身是矩阵的一种特例。
函数在运算时是将函数逐项作用于矩阵的每个元素上,所以最后运算的结果就是一个与自变量同型的矩阵。
>> A=[4,2;3,6]
A = 4 2
3 6
>> B=exp(A) //调用exp函数求自然指数 自变量为A赋值给B
B = 54.5982 7.3891
20.0855 403.4288
TIP:MATLAB中和数学中自然对数表示不一样。数学中ln表示。
(2)常用函数的应用
① 三角函数有以弧度为单位的函数和以角度为单位的函数,如果是以角度为单位的函数就在函数名后面加“d”,以示区别。
>> sin(pi/2)
ans = 1
>> sind(90)
ans = 1
② abs函数可以求实数的绝对值、复数的模、字符串的ASCII码值。
>> abs(-4)
ans = 4
>> abs(3+4i)
ans = 5
>> abs('a')
ans = 97
③用于取整的函数有fix、floor、ceil、round。
>> round(4.7)
ans = 5
>> fix(-3.2)
ans = -3
>> floor(3.6)
ans = 3
>> ceil(-3.8)
ans = -3
round函数是按照四舍五入的规则来取整。
ceil是向上取整,取大于等于这个数的第一个整数。
floor是向下取整,取小于等于这个数的第一个整数。
fix是固定取靠近0的那个整数,也就是舍去小数取整。
④函数应用举例。
例1:分别求一个三位正整数的个位数字、十位数字和百位数字。
数学上:三位正整数处于10的余数为该数的个位数字。除以10 取整后就去掉了这个数的个位数字,得到的数在除以10 取余数,余数就是新得到的数的个位数字,也就原来数字的十位数字。正整数除以100取整后就去掉了这个数的个位和十位数字,得到百位数字。
>> m=345; //建立变量m,并赋值
>> m1=rem(m,10) //调用rem函数,求余数并赋值
m1 = 5
>> m2=rem(fix(m/10),10) //先调用fix函数取整,在调用rem函数求余数
m2 = 4
>> m3=fix(m/100)
m3 = 3
例2:求[1,100]区间的所有素数。
一般程序利用循环结构实现。MATLAB提供了一个判断n是否素数的函数isprime(n),当n是素数时,返回1,否则返回0。
>> x=1:100; //生成1-100全部整数组成的向量x
>> k=isprime(x); //调用isprime函数 结果为1/0
>> k1=find(k); //调用find函数生成k1向量 k1为k非0元素的序号,x的素数序号
>> p=x(k1) //输出全部素数
p =
1 至 13 列
2 3 5 7 11 13 17 19 23 29 31 37 41
14 至 25 列
43 47 53 59 61 67 71 73 79 83 89 97
1.3变量及其操作
计算机所处理的数据都是存放在内存单元中的,每个内存单元都有个唯一的地址。程序通过地址来访问内存单元。
高级语言中,是通过名字访问内存单元的。取了名的内存单元就叫变量。
1.变量与赋值语句
在MATLAB中,变量名是以字母开头,后接字母、数字或下画线的字符序列, 最多63个字符。

TIP:
(1)变量名区分字母的大小写。
(2)标准函数名以及命令名一般用小写字母。
如何给变量赋值呢?
赋值语句两种格式:
(1)变量=表达式
(2)表达式 //赋值给matlab的预定义变量ans
如果在赋值语句的最后加分号,则仅仅执行赋值操作,不会显示执行运算结果。
例子:

>> x=sqrt(7)-2i; //调用了求平方根函数
>> y=exp(pi/2); //调用了自然指数函数exp 不可以写成乘方的形式
>> z=(5+cosd(47))/(1+abs(x-y))
Z = 1.4395
2.预定义变量
预定义变量是在MATLAB工作空间中驻留,由系统本身定义的变量。
ans是默认赋值变量
i和j代表虚数单位
pi代表圆周率
NaN代表非数(重要)
使用的时候避免对预定义变量重新赋值。
3.变量的管理
(1)内存变量的删除与修改
在工作区中修改。右击,选择对应命令。
who命令与whos命令 显示在工作空间中已经驻留的变量名清单

(2)内存变量文件
用于保存MATLAB工作区变量的文件叫做内存变量文件,其扩展名为.mat
,也叫MAT文件。
save命令:创建内存变量文件。
load命令:装入内存变量文件。
>> save mydata a x //将变量a和x保存在mydata文件中
>> load mydata
matlab数值数据和变量名的更多相关文章
- matlab调用规则变量名eval函数
eval 函数运用!! 经常会遇到matlab里面有些变量命名其实有一样的规律,,但是不像矩阵这些是可以通过循环来获取的,这个时候就可以利用eval语句了: 首先,假设现在有10个名称类似的变量, ...
- Matlab中的变量名
在Matlab中使用save和load命令时,可能会出现变量名出错的问题. 如: save('A1.mat', 'A1'); load('A1.mat', 'A1'); 如果程序中还有名为a1的变量名 ...
- matlab批量修改变量的名称
使用matlab做实验的时候,保存的文件里面的变量名都是一样的 ,所以希望能够把变量名全部都重命名.我举个个例子,假设我一堆文件,文件名分别是gds1,gds2,gds2,-.. 但是实际上load进 ...
- JavaScript:声明变量名的语法规则
一.语法规则 1.变量必须使用字母.下划线(_)或者美元符($)开始. 2.然后可以使用任意多个英文字母.数字.下划线(_)或者美元符($)组成. 3.不能使用JS关键词与保留字. 二.示例 var ...
- JS中变量名和函数名重名
今天骚凯问了一道变量名冲突的题目,感觉很有意思,顺便也复习一下预解析的一些知识,有不对的地方忘前辈大神指正,题目是这样的: var a=100; function a(){ console.log(a ...
- 使用 v-cloak 防止页面加载时出现 vuejs 的变量名
使用 vuejs 做了一个简单的功能页面,逻辑是,页面加载后获取当前的经纬度,然后通过 ajax 从后台拉取附近的小区列表.但是 bug 出现了,在显示小区列表之前,会闪现小区名对应的 vuejs 变 ...
- C#中根据变量获取变量名字符串
/// <summary> /// 获取当前变量的变量名 字符串 /// 调用:GetVarName(p=>test.str1); 返回 " ...
- C/C++变量名与值的问题
首先说明变量名是不占空间的. 变量:用来标识一块内存空间,这块内存区域的值一般是可以被该的. 而const常量通常限定这一块内存区域的值是不可被更改的. 变量名:只是一个标识符,并不占内存空间.在c的 ...
- JS中变量名作为if条件的 true/flase
在Javascript中,可以直接将变量名放到if条件中, var a;//甚至不定义 if (a){ //... } 以下情况被认为是flase: 1.''空的字符串 2.数字0 3.对象null ...
随机推荐
- java web之Filter详解
java web之Filter详解 2012-10-20 0 个评论 作者:chenshufei2 收藏 我要投稿 .概念: Filter也称之为过滤器,它是Servlet技术中比较激动人心的技术,W ...
- loadrunner post请求
注意:loadrunner参数中的引号,需要自己加"\" post 请求,分为header 和body两个部分处理 header部分比较容易处理,使用函数实现,如web_add_h ...
- 基于 Njmon + InfluxDB + Grafana 实现性能指标实时可视监控
引言 最近逛 nmon 官网时,发现了一个新工具 njmon,功能与 nmon 类似,但输出为 JSON 格式,可以用于服务器性能统计. 可以使用 njmon 来向 InfluxDB 存储服务器性能统 ...
- Python程序设计实验报告三:分支结构程序设计
安徽工程大学 Python程序设计 实验报告 班级 物流191 姓名 姚彩琴 学号3190505129 成绩 日期 2020.4.5 指导老师 修宇 [实验目的 ...
- NCTF2019 小部分题解
前言 礼拜五领航杯打的比较累,做不出WEB,D3CTF没用,做了NJCTF的一些题目(懒,睡觉到12点起) Misc 第一次比赛先去做misc,以前一直做WEB,以后要WEB+MISC做.礼拜六下午做 ...
- shiro:加密及密码比对器(三)
基于[自定义remle(二)]项目增加加密功能 1:数据库t_user表增加一列(盐) 增加字段:salt CREATE TABLE `t_user` ( `id` int(11) NOT NULL ...
- 网站防止sql注入
防止sql注入代码:(1)修改php.ini magic_quotes_gpc=Off,打开开关,不常用: (2)获取到参数后,调用$username = addslashes($username); ...
- ajax后台返回指定的错误码
js: $.ajax({ type: "POST", url: 'post.php', data: serialNumber + "&getSerialNumbe ...
- Spring Boot JPA中java 8 的应用
文章目录 Optional Stream API CompletableFuture Spring Boot JPA中java 8 的应用 上篇文章中我们讲到了如何在Spring Boot中使用JPA ...
- Libra教程之:Libra协议的关键概念
文章目录 Libra协议 交易和状态 交易详解 账本状态详解 版本数据库 账户 账户地址 Proof 验证节点 存储 Libra协议 Libra协议是Libra区块链的基础,本文主要讲解Libra协议 ...