C++,Java 取余都是向0取整
而Python是向下取整, 数学上通用的也是向下取整.
向0取整时,余数符号看被除数; 向下取整时,余数符号看除数.
取个例子
整数/整数 取余
c++/Java: 10/3=3...1
Python: 10/3=3...1
c++/java: 10/-3=-3...1
Python: 10/-3=-4...-2
可能有人比较懵, 取余的算法是 被除数-(被除数整除除数的结果)*除数=余数
c++/java向0取整, 10整除-3 ,取比-3.3333更靠近0为-3, 10-(-3*-3)=1
python向下取整,10 整除-3, 取比-3.3333小的整数为-4, 10-(-3*-4)=-2
本文深入解析了C++、Java与Python三种编程语言中取余运算的不同行为。C++与Java采用向0取整的方式,余数符号取决于被除数;而Python遵循数学通用规则,向下取整,余数符号由除数决定。通过具体实例展示了不同场景下取余运算的具体计算过程。
189

被折叠的 条评论
为什么被折叠?



