matlab数值数据

1、数值数据类型的分类:

(1)整型

  ①无符号整数:无符号8位整数、无符号16位整数、无符号32位整数、无符号64位整数。
           无符号8位整数的数据范围为:00000000~11111111,即十进制数0~2^8-1。
           uint8()函数将数值数据转换为无符号8位整数
           uint8(555)=255       uint8(244)=244
  ②有符号整数:有符号8位整数、有符号16位整数、有符号32位整数、有符号64位整数。
           有符号8位整数的数据范围为:10000000~01111111,即十进制数-2^7~2^7-1。
           int8()函数将数值数据转换为带符号8位整数
           int8(155)=127         int8(-18118)=-128          int8(15)=15

(2)浮点型

  ①单精度型,占4个字节
           single()函数:将其他类型数据转换为单精度型
  ②双精度型,占8个字节(默认为双精度)
           double()函数:将其他类型数据转换为双精度型

           使用class()函数显示数据类型
           >>class(8)        ans=double            >>class(singe(8))        ans=single

(3)复型

   复型数据包括实部和虚部两个部分,实部和虚部默认为双精度型,虚部单位用i或j来表示
   >>6+5i            ans =6.0000+5.0000i                  >>6+5j           ans =6.0000+5.0000i
   real()函数求复数的实部           >>real(1+2j)      ans=1
   imag()函数求复数的虚部         >>imag(1+2i)    ans=2

2、数值数据的输出格式
format命令的格式:format格式符
>>format long
>>50/3
ans=16.666666666666668 //共15位精度
>>format //再次输入,将格式恢复到默认
>>50/3
ans=16.6667 //回到4位精度

   format命令只影响数据输出格式,而不影响数据的计算和存储

3、常用数学函数

 (1)函数的调用格式:
          函数名(函数自变量的值)
                    函数的自变量规定为矩阵变量,当然也可以是标量,标量本身就是矩阵的一种特例。
                    函数在运算时,是将函数逐项作用于矩阵的每一个元素上,所以最后运算的结果就是一个与自变量同型的矩阵。
                   >> a=[4,2;3,6]        //定义一个矩阵a
                   a =
                          4     2
                          3     6
                   >> b=exp(a)           //调用exp()函数,(自然指数e^x)
                   b =
                          54.5982    7.3891
                          20.0855  403.4288
 (2)常用函数的应用
 
         ①三角函数有以弧度为单位的函数和以角度为单位的函数,以角度为单位的函数要在函数前面加上‘d’,以示区别。
                >> sin(pi/2)
                ans =
                     1
                >> sind(90)
                ans =
                     1
                     
         ②abs()函数可以求实数的绝对值、复数的模、字符串的ASCll码值。
                >> abs(-45)
                ans =
                    45
                >> abs(3+4j)
                ans =
                     5
                >> abs('a')
                ans =
                    97
                    
         ③用于取整的函数有fix()、floor()、ceil()、round()。
                round()函数按照四舍五入的规则取整
                ceil()函数是取大于等于这个数的第一个整数(根据英文释义,天花板,即向上取整)
                floor()函数是取小于等于这个数的第一个整数(根据英文释义,地板,即向下取整)
                fix()函数是固定取靠近0的那个整数,即直接舍去小数点
                >> round(4.5)                    >> fix(-5.2)
                ans =                                  ans =
                     5                                        -5
                >> floor(-3.6)                    >> ceil(3.1)
                ans =                                  ans =
                    -4                                        4
                    
         ④函数应用举例。
         
                 (i)rem(m1,m2)函数:求m1除以m2的余数
                 
                 可以用rem()函数以及fix()函数分别求出三位正整数的个位数、十位数、百位数。
                 >> m=345
                 m =
                     345    //三位数字
                 >> m1=rem(m,10)    //对10求余数得出个位数
                 m1 =
                     5
                 >> m2=rem(fix(m/10),10)    //先用fix()函数求出三位数除以10后的整数位,在对10求余数得出十位数
                 m2 =
                     4
                 >> m3=fix(m/100)   //直接用fix()函数求三位数除以100后的整数位即为百位数
                 m3 =
                     3
                 (ii)求[1,100]区间的所有素数
                 
                     matlab提供了一个判断n是否为素数的函数isprime(n),当n是素数时返回1,否则返回0
                         >> x=1:100;        //生成1到100区间所有整数组成的向量x,注意,此处要加;不然会直接输出1~100所有的整数
                         >> k=isprime(x);          //调用isprime()函数,生成k向量,向量中元素要么为1要么为0
                         >> k1=find(k);             //调用find()函数生成k1向量,k1向量中的元素为k向量中不为0元素的序号,即为x向量中素数元素的序号
                         >> p=x(k1)                  //输出x中的全部素数
                         p =
                           列 1 至 19
                              2     3     5     7    11    13    17    19    23    29    31    37    41    43    47    53    59    61    67
                           列 20 至 25
                             71    73    79    83    89    97    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值