zoukankan      html  css  js  c++  java
  • 负数取余/整除,Python和C语言的不同

    总结一句:Python中负数整除,是向负无穷取整,所以导致负数取余不对

    在数学公式中,两种语言的表示算法都是一样的,都是:

    r=a-n*[a/n]

    以上,r是余数,a是被除数,n是除数。

    唯一不同点,就是商向0或负无穷方向取整的选择,c从c99开始规定向0取整,python则规定向负无穷取整,选择而已。

    向零取值的含义是:9/7=1 .29----向0取值-->1;-9/7=-1.29----向0取值------>-1

    向负无穷取值的含义是:9/7=1 .29----向0取值-->1;-9/7=-1.29----向0取值------>-2

    所以套用上述公式为:

    C 语言:(a%n的符号与a相同)

                -9%7=-9 - 7*[-1]=-2;

                9%-7=9 - -7*[-1]=2;

    Python语言::(a%n的符号与n相同)

                -9%7=-9 - 7*[-2]=5

                9%-7=-9 - -7*[-2]=-5

    原文:https://blog.csdn.net/tao546377318/article/details/53183245

    ---------------------------------------------------------------------------------

    关注微信公众号即可在手机上查阅,并可接收更多测试分享~

  • 相关阅读:
    win_tc使用感受
    10进制转8进制(栈操作)
    动态栈
    数组
    单链表学习
    static用法
    基础2
    linux c first
    linux net command /uboot command
    opencv
  • 原文地址:https://www.cnblogs.com/songzhenhua/p/10504778.html
Copyright © 2011-2022 走看看