QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 7426|回复: 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】
    / Y  n' G, Z% M0 l本帖来自:数学中国 作者: 木长春 日期: 2009-11-15 19:51 您是本帖第535个浏览者
    & c" e* a1 ]3 O& }' `昨天在学习Matlab的数学函数时,教程中提到取模(mod)与取余(rem)是不同的,今天在网上具体查了一下:& T  o4 e9 K* s6 i
    / M* _8 T% o$ R% |
    通常取模运算也叫取余运算,它们返回结果都是余数.rem和mod唯一的区别在于:9 E. Q/ I& @' M0 x; t  @& M
        当x和y的正负号一样的时候,两个函数结果是等同的;当x和y的符号不同时,rem函数结果的符号和x的一样,而mod和y一样。- V1 X- d7 [1 O2 `  ]
        这是由于这两个函数的生成机制不同,rem函数采用fix函数,而mod函数采用了floor函数(这两个函数是用来取整的,fix函数向0方向舍入,floor函数向无穷小方向舍入)。9 i! E/ x% M( y1 E+ E! g  o
        rem(x,y)命令返回的是x-n.*y,如果y不等于0,其中的n = fix(x./y),而mod(x,y)返回的是x-n.*y,当y不等于0时,n=floor(x./y)
    $ P" Y, l; r, E
      j5 L! y2 B! D2 x7 z
    ) t+ \9 Y  u2 \; @8 D两个异号整数取模取值规律            (当是小数时也是这个运算规律,这一点好像与C语言的不太一样)
    * q( X4 A. z7 B& Y# l1 Y+ C% x: O% \0 f2 }; i  ~! ?
    先将两个整数看作是正数,再作除法运算
    . Q. X( R% S; o8 m①能整除时,其值为02 p' V  Z* t& O  I1 X# L, I
    ②不能整除时,其值=除数×(整商+1)-被除数
    / m6 |% e/ |! }! M9 t  m% V. G6 f: {6 c9 ^. P4 c
    例:mod(36,-10)=-4* B1 z2 X. T7 R& u+ I% R$ ?& W3 @: q. z
    即:36除以10的整数商为3,加1后为4;其与除数之积为40;再与被数之差为(40-36=4);取除数的符号。所以值为-4。
    6 P" h% e7 O, @  J, s3 y1 q例:mod(9,1.2)=0.6
    8 T; m  Y* ]3 w) ^& h例:
    8 m, `6 m* j# A+ e' a( v# D>> mod(5,2), K2 i! W* h" S" l% H
    ans =1                   %“除数”是正,“余数”就是正! U; u; Z7 ]  o2 k, H
    >> mod(-5,2)
    # F8 o8 q5 E3 U0 F- hans =1
    0 P9 y9 G! j! _! O8 K9 l>> mod(5,-2)
    7 q( s# n0 ~; V$ Z( N8 z) B4 S/ Uans =-1                  %“除数”是负,“余数‘就是负
    9 v4 m% t; R+ n/ N9 H1 _>> mod(-5,-2)3 E- V5 v0 {5 N4 Y  Z2 i
    ans =-1                  %用rem时,不管“除数”是正是负,“余数”的符号与“被除数”的符号相同5 V/ q1 q- v; f
    >> rem(5,2)0 t. }5 X5 V2 s( }) \7 m
    ans =1                   %“被除数”是正,“余数”就是正
    3 Q3 V2 q0 w% H. f: c>> rem(5,-2); @7 t' V8 a1 P. r
    ans =1
    7 G9 _. Z) T4 L- f9 P. X# t9 v>> rem(-5,2)
    . P2 e( m- M* K7 Vans =-1                 %“被除数”是负,“余数”就是负1 t- Z  R* r, M
    >> rem(-5,-2)& V. F' \1 W; I
    ans =-1
    3 L! T4 [* X9 C$ h: P4 u
    ( F4 V( m4 ^( E6 L: g9 L! l1 V7 k8 F0 ^( t7 n6 b2 c# k) X
    慢慢体会,两者确实不一样; u7 Z) ^0 w/ B+ z6 q5 q
    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
    9 N6 f# S" J7 a5 D帮你顶一下
    - C/ L  M4 }* R2 u0 S3 a
    谢谢啦 哈哈
    回复

    使用道具 举报

    挣未来        

    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-30 02:19 , Processed in 0.286135 second(s), 87 queries .

    回顶部