算法-计算范围上的缺口值
Algorithm - Calculating notch values on a range
给定这些输入:起始,结束,缺口数
start = a number;
end = a larger number;
numberOfNotches = a number; // includes start and end values
如何计算显示范围上的中间值?
,
start = 100;
end = 200;
numberOfNotches = 6; // includes start and end values
输出:100 ----- 120 ----- 140 ----- 160 ----- 180 ----- 200
这是目前为止我在JavaScript
中的内容function getNotchValues(from, to, numberOfNotches){
var step = Math.floor( ( (to - from) / (numberOfNotches-2) ));
from = Math.floor(from/step)*step;
to = Math.ceil(to/step)*step;
var arr = [];
for(var i=from; i<=to; i=i+step){
arr.push(i);
}
return arr;
}
这是我到目前为止的逻辑,但它不适合我:http://jsfiddle.net/w8vwG/
看起来像是一个off-by-one/fencepost问题。只要做一个小改动就可以了:
(numberOfNotches-1)
这一行:
var step = Math.floor( ( (to - from) / (numberOfNotches-1) ));
编辑:我认为这是一个完整的解决方案,在我下面的评论中处理这个问题:
http://jsfiddle.net/RKx87/function getNotchValues(from, to, numberOfNotches) {
var step = Math.floor(((to - from) / (numberOfNotches - 1)));
var arr = [];
for (var i = from; i <= to; i = i + step) {
arr.push(i);
}
arr[arr.length - 1] = to
return arr;
}
相关文章:
- 正在全局范围中查找JavaScript函数
- 如何通过数组更新角度子范围
- 砌体不能填补小缺口
- 如何使用ngrepeat和双向绑定获得指令的隔离范围
- HTML范围:动态设置值属性
- "实例范围”;TypeScript类的getter/setter
- jquery日期选择器年份范围默认值
- Jpgraph:如何手动设置X轴和Y轴的范围
- 在对象数组中查找多个值的d3范围
- 动态加载angularjs并生成控制器和范围
- 如何通过谷歌应用程序脚本从谷歌文档中的位置确定命名范围
- 在Materialize Calendar中设置年份范围
- 在MVVM视图模型中处理应用程序范围的元素
- setInterval游戏循环的范围问题
- AngularJS获取范围中的选定项目
- 从指定范围创建字符数组
- ES6是否引入了一种机制来生成块范围的函数语句(而不是表达式)
- Angularjs无法将单选按钮与嵌套范围内的模型绑定
- ngDialog-弹出窗口未更新范围变量
- 算法-计算范围上的缺口值