You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何判断两个数值是否属于同一个十位数区间(Decade)?

判断两个数是否处于同一十位数区间(不拆分数字实现)

嘿,这个问题其实用简单的数学运算就能轻松解决,完全不用拆分数字或者转字符串哦~

核心思路

因为你的数值范围被限定在11到89之间,且不含整十数,所以每个数所属的十位数区间,本质就是十位数字相同的一组数(比如11-19是十位为1的区间,21-29是十位为2的区间,以此类推)。

要判断两个数是否在同一区间,我们不需要拆分数字取十位,只需要通过整数除法获取每个数的十位等价值,再比较这两个值是否相等即可——整数除法会自动舍去小数部分,正好对应十位数字。

示例验证

  • 当actual = 23,next = 17时:
    23 ÷ 10取整为2,17 ÷ 10取整为1,两者不等,所以不属于同一区间;
  • 当actual = 23,next = 27时:
    23 ÷ 10和27 ÷ 10取整都为2,两者相等,所以属于同一区间。

代码实现

JavaScript版本

const actual = 23;
const next = 27;

// 核心判断逻辑
const isSameDecade = Math.floor(actual / 10) === Math.floor(next / 10);

console.log(isSameDecade); // 输出 true

Python版本

actual = 23
next_num = 27  # 避免使用Python关键字"next"

# 核心判断逻辑
is_same_decade = actual // 10 == next_num // 10

print(is_same_decade)  # 输出 True

补充说明

这个方法之所以可靠,是因为题目已经排除了整十数(比如20、30这类),所以整数除法的结果完全对应十位数字,不会出现混淆的情况。如果后续范围扩展到包含整十数,这个逻辑依然适用,因为整十数的十位数字本身就是它所属的区间标识。

内容的提问来源于stack exchange,提问作者mge

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 06:35:09