QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 7401|回复: 6
打印 上一主题 下一主题

[其他经验] 取模(mod)与取余(rem)的区别——Matlab学习笔记

[复制链接]
字体大小: 正常 放大

13

主题

4

听众

433

积分

升级  44.33%

  • TA的每日心情
    开心
    2013-10-20 20:29
  • 签到天数: 103 天

    [LV.6]常住居民II

    自我介绍
    建模编程方向

    群组学术交流A

    跳转到指定楼层
    1#
    发表于 2012-4-14 16:30 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    取模(mod)与取余(rem)的区别——Matlab学习笔记【09-11-15】
    2 Q* G0 {$ T8 U: [本帖来自:数学中国 作者: 木长春 日期: 2009-11-15 19:51 您是本帖第535个浏览者5 o. L, [9 C" d6 T- ~* P
    昨天在学习Matlab的数学函数时,教程中提到取模(mod)与取余(rem)是不同的,今天在网上具体查了一下:
    2 B5 t( O9 f  h" _9 }! k
    0 ^# g1 Q: O7 T% G$ ^* `通常取模运算也叫取余运算,它们返回结果都是余数.rem和mod唯一的区别在于:
    6 D/ {& `. l5 O) \8 z( U2 ]9 D    当x和y的正负号一样的时候,两个函数结果是等同的;当x和y的符号不同时,rem函数结果的符号和x的一样,而mod和y一样。
    & A3 V6 K8 _& L/ J+ z    这是由于这两个函数的生成机制不同,rem函数采用fix函数,而mod函数采用了floor函数(这两个函数是用来取整的,fix函数向0方向舍入,floor函数向无穷小方向舍入)。* `" z' V7 z) Q
        rem(x,y)命令返回的是x-n.*y,如果y不等于0,其中的n = fix(x./y),而mod(x,y)返回的是x-n.*y,当y不等于0时,n=floor(x./y)5 w4 R3 ?6 g4 N- s
    . A* F% B3 U3 e: U1 y  A
    # d* P' u' w' B, l6 e9 _, }4 h9 x
    两个异号整数取模取值规律            (当是小数时也是这个运算规律,这一点好像与C语言的不太一样)
    ; i' P& e/ M+ \, Y! @) ]/ E4 P" p% U9 Z4 w* P
    先将两个整数看作是正数,再作除法运算
    . V3 C% d( r4 K6 @4 _! \①能整除时,其值为0
    , {/ U+ }" e/ H( {②不能整除时,其值=除数×(整商+1)-被除数$ r! f& ?9 A% ^4 S( f6 x, U
    * ?7 j# {/ ~& @0 W  ^
    例:mod(36,-10)=-42 a4 H' d% Y8 y9 l, W+ l4 ?
    即:36除以10的整数商为3,加1后为4;其与除数之积为40;再与被数之差为(40-36=4);取除数的符号。所以值为-4。
    , a! r" ]2 k* D例:mod(9,1.2)=0.6
    ) K3 w( ~1 d& Z, q例:
    ; R) k  S- s8 R& |' m>> mod(5,2)
    / ^9 h! m! N9 Xans =1                   %“除数”是正,“余数”就是正
    7 Y' u% H8 j3 X& j- N9 O6 ~" |9 V>> mod(-5,2)6 W) u1 ?! W$ s1 o8 J) @7 k- b; g
    ans =1& S- l* C4 m8 I: R- I9 z
    >> mod(5,-2)+ D/ Y, U. d- o; O! `
    ans =-1                  %“除数”是负,“余数‘就是负0 p% T* O2 L  L6 L6 Q$ I
    >> mod(-5,-2)
    9 e' ]  U( F! v! J/ ~ans =-1                  %用rem时,不管“除数”是正是负,“余数”的符号与“被除数”的符号相同
    1 {3 ]' v; w* F0 P& ]' Y+ O4 c! Z>> rem(5,2)
    : K) S3 k! R3 {: t& B. |' b8 S/ Eans =1                   %“被除数”是正,“余数”就是正
    7 v3 j% y9 U0 X( L: |>> rem(5,-2)
    / u7 n& k& P  s  S7 Y$ P2 y) t9 ^ans =1
    ! i3 j" F1 n; @9 x5 H>> rem(-5,2)9 s! b/ G+ B. U5 m  f3 U
    ans =-1                 %“被除数”是负,“余数”就是负% w3 w! V+ [1 h2 i3 i
    >> rem(-5,-2)
    8 Z  c# R  p9 {4 E% Rans =-18 r% e6 B4 O3 w, e) \
    5 s6 x) @) v' \; E9 A/ r# x
    $ E4 [/ U9 U, x  p0 ?
    慢慢体会,两者确实不一样
    $ G9 K1 p/ g6 t6 A: G
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏1 支持支持1 反对反对0 微信微信

    13

    主题

    4

    听众

    433

    积分

    升级  44.33%

  • TA的每日心情
    开心
    2013-10-20 20:29
  • 签到天数: 103 天

    [LV.6]常住居民II

    自我介绍
    建模编程方向

    群组学术交流A

    回复

    使用道具 举报

    13

    主题

    4

    听众

    433

    积分

    升级  44.33%

  • TA的每日心情
    开心
    2013-10-20 20:29
  • 签到天数: 103 天

    [LV.6]常住居民II

    自我介绍
    建模编程方向

    群组学术交流A

    回复

    使用道具 举报

    13

    主题

    4

    听众

    433

    积分

    升级  44.33%

  • TA的每日心情
    开心
    2013-10-20 20:29
  • 签到天数: 103 天

    [LV.6]常住居民II

    自我介绍
    建模编程方向

    群组学术交流A

    回复

    使用道具 举报

    lyj658 实名认证      会长俱乐部认证 

    0

    主题

    4

    听众

    193

    积分

    升级  46.5%

  • TA的每日心情
    开心
    2014-2-14 13:56
  • 签到天数: 56 天

    [LV.5]常住居民I

    回复

    使用道具 举报

    13

    主题

    4

    听众

    433

    积分

    升级  44.33%

  • TA的每日心情
    开心
    2013-10-20 20:29
  • 签到天数: 103 天

    [LV.6]常住居民II

    自我介绍
    建模编程方向

    群组学术交流A

    lyj658 发表于 2012-4-14 21:01
    4 b# N1 _9 }% H- B2 h' V帮你顶一下

    . q( @: M% J9 Q$ L. D谢谢啦 哈哈
    回复

    使用道具 举报

    挣未来        

    1

    主题

    4

    听众

    71

    积分

    升级  69.47%

  • TA的每日心情

    2012-9-8 11:56
  • 签到天数: 14 天

    [LV.3]偶尔看看II

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-7-9 05:46 , Processed in 0.456770 second(s), 85 queries .

    回顶部