+---+---+---+
| 1 | 0 | 0 |
+---+---+---+
| 2 | 1 | 0 |
+---+---+---+
| 3 | 2 | 0 |
+---+---+---+
| 4 | 0 | 1 |
+---+---+---+
| 5 | 1 | 1 |
+---+---+---+
| 6 | 2 | 1 |
+---+---+---+
| 7 | 0 | 2 |
+---+---+---+
| 8 | 1 | 2 |
+---+---+---+
| 9 | 2 | 2 |
+---+---+---+
我正在尝试的代码
var loop = 1;
while(loop < 10) {
console.log(loop, loop%3, "I can't calculate this")
loop++;
}
我有一个循环增量变量loop
,其计数为1,2,3,4,5 ....
我需要根据增量变量计算2个数字:一个可以舍入0,1,2 (loop % 3)
,但可以舍入0,0,0或1,1,1
我的意思是我需要根据自己的整数保存一个数字。
答案 0 :(得分:2)
修正代码((loop-1)%3
),然后只需要四舍五入为除法即可:
var loop = 1;
while(loop < 10) {
console.log(loop, (loop-1)%3, Math.floor((loop-1)/3))
loop++;
}
某些其他语言支持“整数除法”,因此不需要Math.floor
。
答案 1 :(得分:2)
使用以下代码段:
var loop = 1;
var round = 3;
while(loop < 10) {
console.log(loop, (loop-1)%round, Math.floor((loop-1)/round));
loop++;
}
太简单了
答案 2 :(得分:0)
实际上,您需要在不同的十进制系统中获取数字,在这里,您希望将数字以3为基数,并以一个以1为基础的起始值稍加复杂,该数字通常以零开始,而a取相反的结果,方法是将左下方的指示器和右上方的指示器置于
现在您将获得直接转换。
var i;
for (i = 0; i < 9; i++) {
console.log(i, i.toString(3).padStart(2, '0'));
}
现在通过将结果加1并反转结果来移位结果。
var i;
for (i = 0; i < 9; i++) {
console.log(i + 1, Array.from(i.toString(3).padStart(2, '0')).reverse().join(''));
}