Skip to content

Latest commit

 

History

History
133 lines (89 loc) · 3.1 KB

364-1075090-除法运算_整除运算_商_余数.sy.md

File metadata and controls

133 lines (89 loc) · 3.1 KB
show version enable_checker
step
1.0
true

负数表示

回忆

  • 上次了解了divmod函数
    • 函数的返回值是一个元组
      • 前面的是 整除运算的结果
      • 后面的是 取余运算的结果
  • 除数不能为零
    • 那如果除数是小数呢?🤪

动手

图片描述

  • 除法 / 运算肯定是可以的
  • 如果 // 运算呢?

整数除法 的 含义

  • // 是整数除法

  • 回忆

    • 整数乘法的 本质 是连加

图片描述

  • 除法的 本质 是连减
    • 47 减去 3 得 44
    • 44 减去 3 ...
    • 一共可以减15轮

图片描述

  • 也就是 说
    • 47个 分 3组
    • 每个 可以分 15个

莱布尼茨 计算器

图片描述

  • 莱布尼茨计算器 就是 用这种方式
    • 47 - 3 - 3 ...
    • 最后 剩下 2

四则运算

图片描述

图片描述

  • 论文中 提到了 二进制的四则运算
  • 计算机是如何完成加减乘除的呢?

计算机的指令

  • 计算机的cpu
    • 将 四则运算 设置为 内部电路的通断模式
    • 再将 内部通断模式 编码为 字节状态
  • 接到 某个字节状态 比如BA
    • 将内部模式调整为加法器模式
    • 然后 根据寄存器中的 数字
    • 得到加法结果 放到寄存器里

图片描述

  • 接到了 另外的字节状态 比如DD
    • 将内部模式调整为除法器模式
  • 除了 整数除法 之外
    • 小数 可以做 除法吗?

小数整除

  • 小数整除也是可以的
    • 3里面有13个0.23
      • 就是2.99

图片描述

  • 结果是小数 float 类型的数字
  • 数字是可以转化为整数的
  • 小数除法可以取余么?

小数取余

  • 小数取余 逻辑
    • 和整数 差不多

被除数 / 除数 = 商.....余数

余数 = 被除数 - 除数 * 商

被除数 = 除数 * 商 + 余数

图片描述

  • 那负数呢?
  • 负数可以整除取余数么?

负数整除取余数

图片描述

  • 好像可以回去
  • 貌似能说通
  • 可是为什么是-14.0
  • 而不是-13.0

总结

  • 这次 除法

    • 总共两种除法
    • / 普通除法
    • // 整数除法
  • 整除的时候遇到一个问题

    • 为什么 3 // -0.23
      • 得到 -14.0 呢? 🤪

图片描述

  • 下次再说 👋