我开始制作一个能够执行以下操作的函数:计算你可以用数字 0、1、2、3、4 和 5 组成多少个 6 位数字,可以除以 6?
我目前如何尝试开始,是我制作一个包含所有可能数字的数组,然后取出其中包含任何numbers
' 数组元素的每个数字,然后删除不能被 6 整除的数字。
我在第二部分卡住了。我尝试制作 2 个循环以在 的数组中numbers
循环,然后在该循环内,为数组的长度创建另一个循环allnumbers
以删除所有匹配项。
然后我会%
以同样的方式使用运算符来取出每个不返回 0 的元素。
代码需要灵活。如果用户要求例如。数字 6 也是如此,那么代码应该仍然有效。我有什么办法可以完成这个?
我的代码是:
var allnumbers = [],j;
var biggestnumber = "999999999999999999999999999999999999999999999999999999999999";
function howmanynumbers(digits,numbers,divideWith){
if (digits && numbers && divideWith){
for (var i = 0; i < 1+Number(biggestnumber.substring(0,digits)); i++ ){
allnumbers.push(i);
}
for (j = 0; j < numbers.length; j++ ){
var matchit = new RegExp(numbers[j]);
}
//not expected to work, I just had this in for reference
if ( String(allnumbers[i]).match(matchit) != [""]){
j = 0;
allnumbers.splice(i,1);
var matchit = new RegExp(numbers[j])
}
}
else {
return false;
}
}