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数值数据和变量名的更多相关文章

  1. matlab调用规则变量名eval函数

    eval 函数运用!! 经常会遇到matlab里面有些变量命名其实有一样的规律,,但是不像矩阵这些是可以通过循环来获取的,这个时候就可以利用eval语句了:   首先,假设现在有10个名称类似的变量, ...

  2. Matlab中的变量名

    在Matlab中使用save和load命令时,可能会出现变量名出错的问题. 如: save('A1.mat', 'A1'); load('A1.mat', 'A1'); 如果程序中还有名为a1的变量名 ...

  3. matlab批量修改变量的名称

    使用matlab做实验的时候,保存的文件里面的变量名都是一样的 ,所以希望能够把变量名全部都重命名.我举个个例子,假设我一堆文件,文件名分别是gds1,gds2,gds2,-.. 但是实际上load进 ...

  4. JavaScript:声明变量名的语法规则

    一.语法规则 1.变量必须使用字母.下划线(_)或者美元符($)开始. 2.然后可以使用任意多个英文字母.数字.下划线(_)或者美元符($)组成. 3.不能使用JS关键词与保留字. 二.示例 var ...

  5. JS中变量名和函数名重名

    今天骚凯问了一道变量名冲突的题目,感觉很有意思,顺便也复习一下预解析的一些知识,有不对的地方忘前辈大神指正,题目是这样的: var a=100; function a(){ console.log(a ...

  6. 使用 v-cloak 防止页面加载时出现 vuejs 的变量名

    使用 vuejs 做了一个简单的功能页面,逻辑是,页面加载后获取当前的经纬度,然后通过 ajax 从后台拉取附近的小区列表.但是 bug 出现了,在显示小区列表之前,会闪现小区名对应的 vuejs 变 ...

  7. C#中根据变量获取变量名字符串

    /// <summary>         /// 获取当前变量的变量名 字符串         /// 调用:GetVarName(p=>test.str1); 返回 " ...

  8. C/C++变量名与值的问题

    首先说明变量名是不占空间的. 变量:用来标识一块内存空间,这块内存区域的值一般是可以被该的. 而const常量通常限定这一块内存区域的值是不可被更改的. 变量名:只是一个标识符,并不占内存空间.在c的 ...

  9. JS中变量名作为if条件的 true/flase

    在Javascript中,可以直接将变量名放到if条件中, var a;//甚至不定义 if (a){ //... } 以下情况被认为是flase: 1.''空的字符串 2.数字0 3.对象null ...

随机推荐

  1. 数据结构和算法(Golang实现)(2)简单入门Golang-包、变量和函数

    包.变量和函数 一.举个例子 现在我们来建立一个完整的程序main.go: // Golang程序入口的包名必须为 main package main // import "golang&q ...

  2. SVG案例:动态去创建元素createElementNS

    案例一: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <titl ...

  3. Django中HttpRequest常用参数介绍

    HttpRequest对象常用参数介绍,以及前端不同请求方式(http方法/Content-Type类型)对应的参数获取方式. 一.HttpRequest对象 django请求对象的详细参数以及实现方 ...

  4. 刷题记录:[V&N2020 公开赛]TimeTravel

    题目复现链接:https://buuoj.cn/challenges 参考链接:2020 年 V&N 内部考核赛 WriteUp V&N公开赛2020 writeup httpoxy ...

  5. [YII2] 自带分页调整

    在search Model的search()方法里有一个$dataProvider 属性 ,在这个属性数组里添加 'pagination' => ['pageSize' => 10,],设 ...

  6. HTTP Request和Response

    一.Servlet 1:实现Servlet接口 servlet生命周期: init方法:tomcat启动时 调用此方法 service方法:访问servlet时默认执行此方法 destroy方法:to ...

  7. Shelve:对象的持久化存储

    目的:Shelve模块为任意能够pickle的Python对象实现持久化存储,并提供一个类似字典的接口. 在关系型数据库还过于复杂的情境中,Shelve为你提供了Python对象持久化的另一种方案. ...

  8. python-Django与Apache整合wsgi模块

    1.安装wsgi模块 yum search mod_wsgi yum install -y mod_wsgi 2.会在httpd下有配置文件 cd /etc/httpd/conf.d/wsgi.con ...

  9. 不停机还能替换代码?6年的 Java程序员表示不可思议

    相信很多人都有这样一种感受,自己写的代码在开发.测试环境跑的稳得一笔,可一到线上就抽风,不是缺这个就是少那个反正就是一顿报错,而线上调试代码又很麻烦,让人头疼得很.不过, 阿里巴巴出了一款名叫Arth ...

  10. 关于ubuntu安装vmware报错问题解决

    命令行中报错 首先报错内容为:(vmware-installer.py:3847): Gtk-WARNING **: 无法在模块路径中找到主题引擎:“murrine”, 以上的内容: sudo apt ...