Как создать массив При n> = 0 создайте массив длиной n * n со следующим шаблоном, показанным здесь для n = 3: {0, 0, 1, 0, 2, 1, 3, 2, 1 }
squareUp(3) → 0,0,1,0,2,1,3,2,1
squareUp(2) → 0,1,2,1
squareUp(4) → 0,0,0,1,0,0,2,1,0,3,2,1,4,3,2,1
Я написал следующий код, и он работает, но я думаю, что есть более простой и лучший способ решить этот вопрос.
function squareUp(n){
let a = n;
let x;
let nums = checker(n);
let num = [];
while (a >= 1){
let j = nums.slice(0,n);
/*console.l*/
let x = mod(j,a);
pusher(nums,x);
a--;
}
return nums.slice(n,);
}
function checker(n){
let x = [];
while (n >= 1){
x.push(n);
n--;
}
return x;
}
function mod(nums,n){
let numb = [];
for (var i = 0;i < nums.length;i++){
let x = nums[i] % n;
numb.unshift(x);
}
return numb;
}
function pusher(arr1,arr2){
for (var i = 0;i < arr2.length;i++){
arr1.unshift(arr2[i]);
}
return arr1;
}
Код слишком длинный, и я надеюсь, что есть лучший способ ответить на вопрос