首页 > 解决方案 > 如何使用此代码找到下一个级别所需的进度?

问题描述

寻找这样的东西,我处理进度的方式不同。

const curLevel = Math.floor(0.2 * Math.sqrt(number));

例如,如果数字是271,我会得到 271 ( ) 的平方根,16.462然后乘以0.2给我3.292,然后我们将其四舍五入以形成水平3

我需要计算的是从 3 级到 4 级所需的数量,我该怎么做呢?

标签: javascriptmath

解决方案


使用代数反演规则得到numbercurLevel

curLevel === 0.2 * Math.sqrt(number) // Multiply by 5
5 * curLevel === Math.sqrt(number) // Square
(5 * curLevel) ** 2 === number

4级需要(5 * 4) ** 2 === 400进度点。

从 3 级到 4 级,您需要(5 * 4) ** 2 - (5 * 3) ** 2 === 175积分。

当拥有 271 点时,达到 4 级需要(5 * 4) ** 2 - 271 === 129点数。


推荐阅读