我一直在苦苦挣扎几个小时,是否有人知道如何创建一个增加1的一系列数字,并且在达到最大数量时,它会减少一个到最小值并再次重复。例如,
1 2 3 2 1 2 3 2 1或
1 2 3 4 3 2 1 2 3 4 3 2 1.
要创建它,只使用一个循环
答案 0 :(得分:1)
您可以循环并检查产品的每一步的最大值和最小值,然后旋转子/添加的方向。
function alg(length, max) {
var min = 1;
var direction = 1;
var product = 1;
for (var i = 0; i < length; i++) {
if (product >= max) { direction = -1; }
else if (product <= min) { direction = 1; }
console.log(product);
product += direction;
}
}
答案 1 :(得分:1)
# Assume max, min & count defined
for ( n=min, delta=1, i=0; i<count; i++ ) {
Print n;
If ( n==max )
delta=-1;
Else if ( n==min )
delta=1;
n+=delta;
}