重复循环计数变量的公式?

时间:2018-02-09 20:35:46

标签: counter

我正在寻找一个公式来为我的代码实现特定类型的计数。这个问题可能已经解决了,但我似乎无法找到它,可能是因为我不确定我是否使用正确的术语来描述我的问题。

但实质上,我正在寻找一个循环通过以下数字的变量计数器的公式: 1 1 1 2 2 2 3 3 3 1 1 1 2 2 2 3 3 3 1 1 1 ....

每个数字重复3次,增量为1,循环从3日开始。或者更一般地,是否存在允许重复数字的通用公式,例如,x次数,最小值和最大值,增量为y?

1 个答案:

答案 0 :(得分:0)

这是一个可以做你想要的功能:

function repeatToX (x) {
  for (let i=1; i<=x; i++) {
    for (let j=0; j<3; j++) {
      console.log(i);
    }
  }
}

repeatToX(3);

该功能将重复从1开始到作为参数提供的数字的数字(本例中为3)。它通过记录外部for循环变量(i)来完成此操作,而内部for循环运行的次数与您希望重复的数字一样多。我们可以通过这样运行来使其更加灵活:

function repeatToXYTimes (x, y) {
  for (let i=1; i<=x; i++) {
    for (let j=0; j<=y; j++) {
      console.log(i);
    }
  }
}

repeatToXYTimes(3, 3)

现在数字将从1到x。这个数字将重复y次。

最后我们有这个:

function repeatXTimes (x, min, max) {
  for (let i=min; i<=max; i++) {
    for (let j=0; j<=x; j++) {
      console.log(i);
    }
  }
}

repeatXTimes(3, 3, 5)

这个从最小到最大重复x次