zoukankan      html  css  js  c++  java
  • 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   

  • 相关阅读:
    python和matlab
    进程和线程的主要区别
    如何理解卷积
    Leetcode 961. N-Repeated Element in Size 2N Array
    Leetcode 387. First Unique Character in a String
    Python ord()与chr()函数
    Leetcode 709. To Lower Case
    python 字符串大小写相关函数
    Leetcode 367. Valid Perfect Square
    Leetcode 1014. Capacity To Ship Packages Within D Days
  • 原文地址:https://www.cnblogs.com/yuling520/p/12738857.html
Copyright © 2011-2022 走看看